(1)砲弾(Shell)の準備
「Rigidbody」を設定。
「Use Gravity」はオフにする。(これでゆっくりでもまっすぐ飛ぶようになります)
Shellをプレハブ化しましょう。
(2)発射台(ShotShell)の準備
新規に「Create Empty」を作成
名前を「ShotShell」に変更
発射台の位置を調整(少し前に出すのがポイント)
位置が決まったら「親子関係」の設定
(3)スクリプトの作成
新規にC#スクリプトを作成
名前を「ShotShell」に変更
下記のコードを書いてチェック。
using System.Collections; using System.Collections.Generic; using UnityEngine; public class ShotShell : MonoBehaviour { public GameObject shellPrefab; public AudioClip sound; public float speed; void Update() { if(Input.GetKeyDown(KeyCode.Space)) { GameObject shell = Instantiate(shellPrefab, transform.position, Quaternion.Euler(90, transform.root.eulerAngles.y, 0)); Rigidbody shellRb = shell.GetComponent<Rigidbody>(); shellRb.AddForce(transform.forward * speed); AudioSource.PlayClipAtPoint(sound, transform.position); } } }
チェックが完了したら「ShotShell」オブジェクトに設定
プレハブデータ、サウンド等を設定
設定が完了したらゲームを再生
スペースキーで砲弾発射。
戦車の向きに合わせて砲弾の向きも変化すれば成功です。
*キッズ・レギュラークラスでは、Unityを使った戦車ゲームを作成します。もし、もっと学んでみたい方はレギュラークラスに参加してみてください。