unity初心者です。スマホ用ゲーム想定です。
unityでゲーム制作をしているのですが、たまにカクつくためプロファイルを使用したところ、gfx.processsCommandsの割合が多かったため「ヒエラルキーに同時に存在するオブジェクトの数が多いのでは?」と考えました。これまでリザルト画面などはヒエラルキーにそのまま置いといて、ボス撃破処理でSetAciveするような方式を取っていました。ボス撃破時以外はチェックを外した状態SetAcive(false)にしていたので、勝手にそこまで負荷は大きくならんだろうと考えていました。(この辺の知識もあやふやなので間違いなどあれば教えてほしいです)
しかし今回カクつきを抑えたいということで、普段使わないイベント関連のオブジェクトは全部プレハブ化して必要な時だけInstantiateしたほうが処理が軽くなるのではないかと考え、作業しております。問題はここからなのですが、リザルトを閉じるための「OKボタン」などもプレハブ化することになるのですが、プレハブからヒエラルキーにあるオブジェクトは参照できないため、「OKボタン」にOnClickでリザルトを閉じる作業をさせる事が出来ません。(リザルトやバトル中のイベントは全てヒエラルキーに存在するイベントマネージャースクリプトに任せている)
ボタンなどのUIをプレハブ化したい場合どのような処理をすればよいのでしょうか。また、一般的にイベントなどのゲームUIは上記の思想に基づきプレハブ化するのが良いものなのでしょうか?
厳密にはプログラミングではないかもしれませんが、知恵袋等では回答が得られなかったためこちらで質問させてください。
何卒よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー