【Unity】箱庭経営シミュレーション×農場ゲームの作り方 #5|畑システム・作物の成長ステージ・種インベントリを実装 | Unity入門の森 ゲームの作り方

【Unity】箱庭経営シミュレーション×農場ゲームの作り方 #5|畑システム・作物の成長ステージ・種インベントリを実装

Unity 箱庭経営シミュレーション×農場ゲームの作り方

現場レベルのゲーム制作が、すべてここで学べます。

【永久会員チケット】

永久会員チケット|Unity入門の森

全講座を見放題で学ぶ

ソースコード・素材・プロジェクトすべて公開。
Unityの基礎から応用まで、一生使えるスキルを体系的に習得。

この講座ではUnityを使って「箱庭経営シミュレーション×農場ゲーム」を作成していきます。
今回はその第5回目です。

前回はプレイヤーがアイテムを複数持てる箱を作成しました。

前回の記事:

Unity 箱庭経営シミュレーション×農場ゲームの作り方 #4 複数アイテムの収納・取り出しを丁寧に解説
この講座ではUnityを使って「箱庭経営シミュレーション&農場ゲーム」を作成していきます。今回はその第4回目です。前回はプレイヤーがアイテムを拾ったり落としたりできるシステムを作成しました。前回の記事:第4回では、前回までの実装をさらに応用...

第5回では、農場ゲームとして重要な畑システムを作成していきます。

種を植える→芽が出る→成長する→にんじんが生える→収穫という一連の流れを作成していきましょう。

【ゲームの作り方講座プレゼント中!】

Unityで畑システムを作成しよう

ProjectウィンドウでAssetsフォルダ内で、空いている場所で右クリックします。
Create > Folder を選択し、フォルダ名を「Prefabs」にしてください。

Hierarchyから「Map Root > Field > 3D_Tile_Ground_05 > 3D_Tile_Ground_05 (1)」を探し、作成した「Prefabs」フォルダにドラッグ&ドロップしましょう。

ドラッグ&ドロップすると、下のようなダイアログが表示されます。
ここでは「Original Prefab」を選択してください。

この画面は何?

このダイアログは、「新しくPrefabを作成するのか」「既存のPrefabを元にした派生(Variant)を作るのか」をUnityが確認している画面です。

  • Original Prefab
    完全に新しいPrefabを作成します。
    今回は、元となる地面オブジェクトをそのままPrefab化したいので、こちらを選びます。
  • Prefab Variant
    既存のPrefabを継承した派生Prefabを作成します。
    元Prefabの変更が自動で反映されるため、量産用や差分管理向けですが、今回の講座では使用しません。

Prefabsフォルダ内にある「3D_Tile_Ground_05 (1)」をCTRL+Dで複製し、合計5個になるようにしましょう。

Prefabの名前を「FieldStage_0」から「FieldStage_4」になるように変更しましょう。

作成したPrefabは、それぞれ以下の状態になるように作成します。

このように段階ごとにPrefabを分けておくことで、成長状態の切り替えをシンプルに管理できるようになります。

FieldStage_1

FieldStage_0はそのままでいいので、まずはFieldStage_1の状態を作成していきます

「FieldStage_1」をダブルクリックして、Prefab編集モードに入りましょう。

Inspectorから、Meshを「3D_Tile_Farm_Field_01」に変更しましょう。

これでモデルが以下のように耕された畑になると思います。

これでFieldStage_1は完成です。つぎはFieldStage_2の状態を作成していきます。

FieldStage_2

「FieldStage_2」をダブルクリックして、Prefab編集モードに入りましょう。

FieldStage_1と同様にInspectorから、Meshを「3D_Tile_Farm_Field_01」に変更しましょう。

Projectウィンドウから、

AssetHuntsl > GameDev Starter Kit – Farming > Assets > Farm Crop Step > Farm_Crop_Carrot_Step_01

を開き、表示された Farm_Crop_Carrot_Step_01 を、
Hierarchy ウィンドウへドラッグ&ドロップしてください。

配置したFarm_Crop_Carrot_Step_01を選択し、
Inspectorに表示されている Transform を以下のように設定してください。

これでFieldStage_2は完成です。つぎはFieldStage_3の状態を作成していきます。

FieldStage_3

Prefabsフォルダに戻り「FieldStage_3」をダブルクリックして、Prefab編集モードに入りましょう。

FieldStage_1, 2と同様にInspectorから、Meshを「3D_Tile_Farm_Field_01」に変更しましょう。

Projectウィンドウから、

AssetHuntsl > GameDev Starter Kit – Farming > Assets > Farm Crop Step > Farm_Crop_Carrot_Step_02

を開き、表示された Farm_Crop_Carrot_Step_02 を、
Hierarchy ウィンドウへドラッグ&ドロップしてください。

配置したFarm_Crop_Carrot_Step_02を選択し、
Inspectorに表示されている Transform を以下のように設定してください。

これでFieldStage_3は完成です。つぎはFieldStage_4の状態を作成していきます。

FieldStage_4

Prefabsフォルダに戻り「FieldStage_4」をダブルクリックして、Prefab編集モードに入りましょう。

FieldStage_1, 2, 3と同様にInspectorから、Meshを「3D_Tile_Farm_Field_01」に変更しましょう。

Projectウィンドウから、

AssetHuntsl > GameDev Starter Kit – Farming > Assets > Farm Crop > Farm_Crop_Carrot_01

を開き、表示された Farm_Crop_Carrot_01 を、
Hierarchy ウィンドウへ4つ、ドラッグ&ドロップしてください。

配置したにんじんを選択し、
Inspectorに表示されている Transform をそれぞれ以下のように設定してください。

Farm_Crop_Carrot_01

Farm_Crop_Carrot_01 (1)

Farm_Crop_Carrot_01 (2)

Farm_Crop_Carrot_01 (3)

これでFieldStage_4は完成です。

Unity C#スクリプトで農作物を成長させよう

作成した5段階の畑をスクリプトから制御して成長するようにしてみましょう。
今回作成したいのはこのような形です。

スクリプトを作成する

Projectウィンドウで Assets を開き、Scripts フォルダを開きます。
フォルダ内で右クリックして Create > MonoBehaviour Script を選択し、名前を「FieldPlot」にしましょう。

作成できたら、そのスクリプトをダブルクリックで開き、以下の内容を書き込んでください。

続きを読む
このコンテンツはパスワードで保護されています。 コンテンツを読みたい方はUnity入門の森ショップ(https://unityforest.shop/)で講座閲覧権を取得してね。

まとめ

ここまで作成できたら、「ShovelItem」「ItemInteractor.cs」が正しく保存されていることを確認してください。再生すると畑のシステムがちゃんと動くはずです。

今回は、畑が成長するシステムを作成し、プレイヤーが直接作物を植えられるようにしました。
さらに、種の所持数を管理するシステムを導入することで、無限に植えられてしまう問題を解消し、よりゲームらしい挙動に改良しました。

また、シャベルを使って畑をリセットできる機能も追加し、収穫後に再び作物を育てられる流れを整えました。

次の講座では、ショッピングシステムを作成していきます。現状では有限となっている種を、購入することで増やせる仕組みを実装していきましょう。

次の記事:

【Unity入門】箱庭経営シミュレーション×農場ゲームの作り方 #6|お店システムを実装する
この講座ではUnityを使って「箱庭経営シミュレーション×農場ゲーム」を作成していきます。今回はその第6回目です。前回はプレイヤーが畑を耕して種が成長してニンジンを収穫できる畑システムを開発しました。さらに種の所持数を追加し、畑を整地してリ...

 

 

【ゲームの作り方講座もプレゼント中!】

現場レベルのゲーム制作が、すべてここで学べます。

【永久会員チケット】

永久会員チケット|Unity入門の森

全講座を見放題で学ぶ

ソースコード・素材・プロジェクトすべて公開。
Unityの基礎から応用まで、一生使えるスキルを体系的に習得。

コメント

タイトルとURLをコピーしました