2

基本的に、モバイル デバイス用の Unity 用にゲームを最適化しようとしています。したがって、CPU 使用率を抑えることが不可欠です。これは複雑なゲームであるため、スクリプトの多くは相互に (およびそれらのゲームオブジェクトを) 参照します。現在、私は使用していますGameObject.FindGameObjectWithTag(Tag tag)他のゲームオブジェクト、コンポーネント、およびスクリプトを参照します。また、エディターでドラッグ アンド ドロップを使用して、パブリック変数を使用してこれを実行できることも認識しています。しかし、どの GameObject が各レベルにドロップされるかはわかっているので、ドラッグ アンド ドロップが何度もエラーを引き起こし、使用するのが面倒だったため、最初のオプションの方が使いやすいことがわかりました。しかし、それは問題ではなく、どちらかのパフォーマンスがこれらのフォールバックを上回ると感じています. これら 2 つのアプローチのパフォーマンスの点で違いがあるかどうか、そしてどちらが高性能、モバイルの側面により適しているか疑問に思っていました。

4

2 に答える 2

2

私の経験では、パブリック変数を作成するのが最善の策です。必要なときに割り当てられていない場合は、FindGameObjectWithTag のメソッドを使用するか、以前に見つけた場合はそのパブリック変数に格納して、ルックアップを実行するだけで済みます。一度。すべてのフレームで FindGameObjectWithTag を実行しない限り、ルックアップ ヒットはそれほど悪くないはずです。

于 2015-07-13T01:22:44.500 に答える