[Unity]キーボード操作で水を出してみた
こんにちは、カンです。
本日も会社に伺わせていただいて、Unityでコライダーとキーボード操作で動作するプログラムについて勉強しました。
Unityで、ある範囲内でしか表示されないテキストとその場でしか機能しないキー入力、
つまりFPSゲームでよく見る機能を作ります。
今、目の前にある蛇口がありますね。
まずはそこにboxコライダーを置いて、そこのIs Triggerにチェックを入れます。
新しいスクリプトを作ります。
表示したいテキストと水のパーティクルをそれぞれの変数を宣言します。
OnTriggerEnterとOnTriggerExitで、プレイヤーがコライダーに入る時の動作と出る時の動作を作ります。
ここの場合は、入る時にテキストが表示され、出る時は消えるように作ります。
ただ、OnTriggerEnterの場合は、プレイヤーがコライダーに入る時だけしか処理しません。
つまり、Eボタンで水を出るようにする動作も入る瞬間しか動けません。
ここで、void Updateを使って、毎フレームも処理を更新します。
そしたらコライダーの中にいる時はいつでもEボタン押せるようになります。
止める為に public bool eTrigger; という変数を追加しました。
上の通りに、if文を使って、水を出したら、変数をTrueにして、Trueの場合でEボタンを押したら水が止めるのスクリプトにして、変数をFalseを戻します。
これで、蛇口に接近すればテキストが表示され、その場でEボタンを押せば水を出したり止めたりできて、FPSゲームでよく見る機能ができました。
現在
株式会社チョモランマ
株式会社シェルパ
3Dmodeljapan株式会社
ではスタッフを大募集しております!!
UNITY、Unreal Engine4、AI、プログラミングや建築パースに興味がある方!
ぜひご応募下さい!!
初心者の方、未経験の方やインターンを受けてみたい方々でも大歓迎です!!