2016-08-01 6 views
0

FixedUpdate()では動作しません。それは大丈夫です。Input.touchCountは、私はこのコードのバージョンを持っている場合

Update()の代わりにFixedUpdate()を使用したいと思うのですが、私の意見ではUpdate()は遅すぎます。別の言葉では、入力があまりにも遅く読んでいる - 私は非常に高速に3回クリックしたいときは、カウンターはあまりにも遅くインクリメントされています。

私はFixedUpdate()を使用しようとしましたが、ワンクリックした後にバグが発生しました。カウンタは3または時々2に等しいです。

アイデア?

答えて

0

これは、単にFixedUpdate、Update、およびInputのやりとりの性質です。あなたの状況では、ゲームループは次のようになります。

- UnityはInput.touchCount をリセット - Unityは、タッチ入力を読み込み、タッチを検出し、1 にInput.touchCountを設定 - Unityは、その物理シミュレーションを決定しますあなたのコードはカウンターをインクリメントします ---あなたのコードはカウンターをインクリメントします ---あなたのコードはカウンターをインクリメントします - 物理学は今や火災 ---アップデート

iOSデバイスはvsyncにロックされているため、できるだけ早くハードな制限がありますプロセス入力(60fps - 16msごとに1回)。更新プログラムごとに複数のFixedUpdateを実行している場合、おそらく60fpsに達していないので、そこから開始することができます.60fpsに達しても遅すぎると問題が発生します。

+0

だから私はそれと何をすべきですか?アイデアはありますか?/ – Bambelal

+0

@Bambelalあなたのフレームレートが60 FPSに達して入力が遅すぎる場合、ユニティゲームの最適化に関するSOに関するいくつかの質問から始めてみてください。モバイルデバイス。 – Serlite

関連する問題