前提・実現したいこと
実現したいことは、GetKeyDownでオブジェクトを生成してGetKeyUpした時に生成したオブジェクトを飛ばしたいです。
どうか、力を貸してください。
発生している問題・エラーメッセージ
プログラムにエラーは発生していないが、GetKeyUpした時に生成したオブジェクトが飛んでくれない。
該当のソースコード
C#
1using UnityEngine; 2using System.Collections; 3 4public class test : MonoBehaviour 5{ 6 7 //生成するゲームオブジェクト 8 public GameObject target; 9 public float speed = 1000; 10 void Update() 11 { 12 //スペースを押したら 13 if (Input.GetKeyDown(KeyCode.Space)) 14 { 15 16 Instantiate(target, new Vector3(1.0f, 2.0f, 0.0f), Quaternion.identity); 17 18 if (Input.GetKeyUp(KeyCode.Space)) 19 { 20 GameObject bullets = Instantiate(target) as GameObject; 21 22 Vector3 force; 23 24 force = this.gameObject.transform.forward * speed; 25 26 // Rigidbodyに力を加えて発射 27 bullets.GetComponent<Rigidbody>().AddForce(force); 28 29 30 31 } 32 } 33 34 } 35}
試したこと
GetKeyUpのイベントで生成したオブジェクトのRigidbodyをコンポーネントして飛ばせるようにしようにした。
GetKeyUpのイベントの位置を変えたが思うように実行してくれない。
補足情報(FW/ツールのバージョンなど)
C#
unity 2017.3.03f
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。