【3Dゲームエンジン】Unity質問スレッド10at GAMEDEV【3Dゲームエンジン】Unity質問スレッド10 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト284:名前は開発中のものです。 14/07/06 13:27:50.82 N5QQMiFF.net goalScript.clearedって通過した瞬間だけ1になるようにできないの? あるいは goalScriptのclearedをクリアチェックして更新してる箇所で if(audio.isPlaying == false) { audio.clip = voice; audio.Play(); } ぢゃないの? も一つおまけにゴール通過した時とゴール地点に居座った時の区別とか付く? 285:名前は開発中のものです。 14/07/06 13:33:54.41 yBLHkZ9t.net まず、Updateの仕様を理解するところからはじめようぜ。 そのスクリプトをつけたゲームオブジェクトがシーンに存在している間は、1秒間に60回とか永遠にUpdateは実行される。 なにかのボタンを押した時だけ再生したいとかなら、そのボタンを押したという情報をUpdate内で判断してplayを実行しなきゃならん。 それが、flagだ。 だから、ボタンを押した時にこのflagを1にしてやる処理を書かないと動かん。 286:名前は開発中のものです。 14/07/06 13:46:21.21 /ZhdI6Tk.net >>278 アーチっていうのが何か分からないのですが100m走のゴールのようなK点ですか? そのK点に透明のIsTriggerオブジェクト置いてキャラとK点に置いた IsTriggerオブジェクトが接触したら(通過したら) var audioclip : AudioClip; // ボイスフィールド void OnTriggerEnter (Collider coll){ if(coll.gameObject.tag == "IsTriggerオブジェクト") { audio.PlayOneShot(audioclip); //ボイス再生 } } とかすればいい気がします Enterなら接触した瞬間なので一度しか鳴りません var audioclip : AudioClipはインスペクタから鳴らしたいボイスファイルをアタッチします 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch