「Unityで電車を走らせる」第11回目です。
前回はスクリプトを更新し、電車が線路を周回できるようになりました。
KoschyExpressVol.10 Unityで電車を走らせる【スクリプトの更新】http://www.koschyexpress.com/un010「Unityで電車を走らせる」第10回目です。前回は新たに「信号」を作成し、Unity 上に追加しました。前回の動画はこちら。「駅」に加え、「信号」もできたことで、レイアウトに変化が生まれました。その一方で、電車の動きは出発地点から指定した目的地に移動するだけの単純なままです。そこで今回は、レイアウトの変化に対応すべく、スクリプトを新たにしましょう。とは言っても、Unity の DOCUMENTATION に掲載されているものを流用するだけなので、それほど難しくはありません。参照先はこちらです。 // Patrol.csusing UnityEn...
前回の動画はこちら。
今回はスクリプトをさらに追加し、キーボード入力でスピードを調整できるようにしましょう。今回は上矢印を押せば加速、下矢印を押せば減速するというシンプルなものをつくってみましょう。とはいっても、次のようにスクリプトを追記するだけなので、意外なことにとても簡単です。
【スクリプト追記内容】
void Update () {
//追記
if (Input.GetKey(KeyCode.UpArrow)) {
agent.speed += 1f;
}
if (Input.GetKey(KeyCode.DownArrow)) {
agent.speed -= 1f;
}
//追記終わり
【操作内容】
・上矢印ボタン:電車のスピード (agent.speed) が 1 ずつ増加
・下矢印ボタン:電車のスピード (agent.speed) が 1 ずつ減少
・下矢印ボタン:電車のスピード (agent.speed) が 1 ずつ減少
実際のスクリプトに追記してみました。
それでは、動作を確認してみましょう。
画面ではキーボードの操作は確認できませんが、電車が駅で停止しているのがわかるかと思います。
また、NavMeshAgent のスピードを 0 にすると、電車が停止した状態で操作を開始することができます。
今回は電車のスピードを調整するという単純な動作を追加するだけではありましたが、電車を加速や減速させたり、駅に停車させたり発車させたりと、ちょっとした運転気分が楽しめるようになりました。電車を見てるだけというのも悪くはないのですが、だんだん飽きてきちゃったりもしますしね。この調子でこれからもどんどん改良を加えていきたいと思います。次回どうぞお楽しみに。