パフォーマンスに関する質問がありました。ユニティ5 - コライダーとスレッドのタイマー
はここで文脈だ:
は、プレイヤーが1つのだけの方向に移動し、3つの車線(それらのすべてが同じ方向に行く)を切り替えることが許されているTempleRunのようなゲームを想像してみてください。
テンプルランとは異なり、ターンはありません。
私はレベルを動的に生成したいので、地面にコライダーを配置しました。トリガされると、レベルはパスの次の(ランダムな)部分をロードし、古いものをアンロードします。
プレーヤーが1方向に一定の速度で動いているので、ゲームの部分を読み込んでアンロードするためにタイマーを使用する方が良いのではないかと思いましたか?
また、どのように衝突者がUnityによって処理されたのだろうと思いましたか?彼らは常に衝突が起こるのを見ているスレッドで動作しますか?
リンクありがとうございます;)しかし、ブーストがない場合はどうなりますか?タイマーは衝突検出プロセスより安価でしょうか? –
これをコード化する場合は、グリッドシステムを使用します。プレーヤーのz位置は常に0で、x位置を制御します。レベルでは、lerpを使用して素敵なスムーズな動きを作成するために、毎秒z値を設定します。レベルの一部が特定のz値に達するたびに、それを取り除き、別のものを前面に置きます。技術的にはタイマーを使用しますが、速度値から計算し、結果をlerp関数で使用します。 –