現場レベルのゲーム制作が、すべてここで学べます。
この講座ではUnityを使って「箱庭経営シミュレーションゲーム」を作成していきます。
今回はその第3回目です。
前回は、プレイヤーを操作できるようにスクリプトで制御&マップにコライダーを設定して、正しく当たり判定が機能するようにしました。
前回の記事:

第3回では、プレイヤーがアイテムを拾ったり落としたりできるようにしていきましょう。
3Dフィールド用のアイテムを作成する
まずは、持つ対象となるアイテムを作成していきます。Hierarchy から Create Empty を選択して空のオブジェクトを作成し、名前を「crop_group」にしましょう。

次にProjectウィンドウから
AssetHuntsl > GameDev Starter Kit – Farming > Assets > Farm Crop > Farm_Crop_Carrot_01
のニンジンを探してください。
見つけたら「Farm_Crop_Carrot_01」をダブルクリックし、プレハブ編集モードに入ってください。

プレハブに入ったら、ニンジンを選択した状態で Inspector の Add Component をクリックし、Capsule Collider と Rigidbody をアタッチしましょう。

補足:なぜMesh Colliderを使用しないのか
アイテムのように動かすオブジェクトでは、通常 Mesh Collider はそのまま使うことができません。
Mesh Collider は基本的に静的オブジェクト専用であり、Rigidbody と組み合わせる場合は Convex にする必要があります。
しかしConvex を有効にすると、形状は自動的に単純化され、見た目通りの正確な当たり判定にはならなくなります。また、計算コストも高く、オブジェクト数が増えると処理負荷が大きくなります。
そのため、「拾う・落とす・動かす」といった 動的なアイテム には、Mesh Collider ではなく Capsule や Box などのシンプルなコライダーを使うのが基本になります。
アタッチした Rigidbody の Collision Detection は、「Continuous Speculative」に変更しておきましょう。

Continuous Speculativeにする理由は
- 貫通を防ぐ: 高速移動でも確実に衝突を検出
- パフォーマンス良好: 他のContinuousモードより軽量
- 汎用性が高い: プレイヤーキャラクター、弾丸、落下物など幅広く使える
上記によるものです。
アイテムを持つ・落とすアクションを実現するスクリプトを作成しよう
アイテムを拾ったり落としたりする動作を作るとき、単純に Transform の位置を変更するだけでも処理自体は成立します。
しかし、その方法ではアイテムが一瞬で手元にワープしたり、置いた瞬間にカクッと位置が変わってしまい不自然な動きになってしまいます。
そこで必要になるのが、動きを「補間」してくれる仕組みです。拾う動作なら「スッと手に吸い寄せられる」、置く動作なら「ふわっと棚の上に収まる」といった、人が見て自然に感じる動きにしたいです。そのために位置や回転を少しずつ変化させる必要があります。
DOTween は、こうした“なめらかな動き”を簡単に実装するためのライブラリです。今回のシステムでは、アイテムの移動や回転を DOTween に任せることで、見た目のクオリティを大きく上げつつ、コードもシンプルに保っています。
以下からインポートしましょう。
DOTween (HOTween v2) | Animation Tools | Unity Asset Store


↑インポートします。

↑自動的にDoTweenのウィンドウが開くので

↑Setup DOTweenボタンを押します。

少し待つとApplyボタンを押せるようになるのでクリックして完了です。
アイテムを持つ・落とすを簡単に制御するためにベースとなる動きをUnity C#で作成しよう
Projectウィンドウから一度 Assets に戻り、Scripts フォルダを開きます。
空いている場所で右クリックし、Create > MonoBehaviour Script を選択してください。
作成したスクリプトの名前を「ItemBase」にしましょう。

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

今回はプレイヤーがアイテムを持てるように基盤のようなものを作成し、実際ににんじんを持てるようにしました。
また操作案内のUIを表示することでユーザビリティも向上しました。
次の講座では、さらに応用してできることを増やしていきましょう。
次の記事:
現場レベルのゲーム制作が、すべてここで学べます。






コメント