Unityで勉強がてら自動車のゲームを作っています。
現在やりたいのは、自律走行する敵車の、
スクリプトからの生成です。
http://tf.hateblo.jp/entry/2015/07/05/230728
こちらのブログを参考にさせていただき、
Standard AssetsのCarWaypointBasedを使って、
自律走行する敵車はできました。
これをプレハブとして保存し、(CarWaypointBased自身もプレハブですが)、
以下の様なコードでインスタンスを生成してみました。
void Update () {
if (Input.GetKeyDown(KeyCode.Escape))
{
GameObject obj = Instantiate(target, new Vector3(0.0f, 0.0f, 0.0f), Quaternion.Euler(0, 180, 0)) as GameObject;
}
}
結果的には、これで敵車のインスタンスは生成されますが、
走りません。
調べてみたところ、アタッチされている
WaypointRrogressTracker(script)の
「Circuit」がNone(Waypoint Circuit)、
CarAIControl(script)の
「Target」がNone(Transform)になっています。
そこでゲームを動かしたまま、Inspector上で、
「Circuit」と「Target」を手動でアサインし、
CarAIControl(script)をenableにすると、
普通に走り出します。
しかし、どちらもインスタンスが生成されていない状態では、
アサインできない様です。
(敵車のインスタンスと同時に生成される
CarWaypointBased(Clone) Waypoint Target等を
渡さなければならないみたいです。)
それならと、インスタンスを生成した後で、
スクリプトからセットしようとしたのですが、
Inspectorからは設定できるのに、
GetComponentでスクリプトに渡そうとしても、
「Circuit」や「Target」の引数が見あたりません。
スクリプトで生成した敵車のインスタンスに、
WaypointRrogressTracker(script)の
「Circuit」とCarAIControl(script)の
「Target」をセットするのは、どの様にすれば良いでしょうか?
色々調べてみたのですが、誰もはまらないのか、
情報が見つけられませんでした。
どうかご教示、お願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/09/19 02:22
2017/09/19 04:00
2017/09/19 05:02 編集
2017/09/19 06:18
2017/09/22 15:54
2017/09/23 00:58
2017/09/23 06:55