https://blog.kyubuns.dev/entry/2020/09/03/212257Unity上でUIを作るとき、こんな感じでSerializeFieldにButtonやらTextやらをペタペタ登録するじゃないですか。そもそもめっちゃ面倒だし、更新したときに参照張り替え忘れるし、やめたい!!!!そこで、こんなものを考えてみました。UIの構造が変わってHogeButtonの場所が変わっても、そのRoot以下でHogeButtonという名前がユニークならコードはこのままで動きます。同じ構造のもの(例ではボタン)が3つあるときは、こんな風に同じ用に扱ったりも出来る。labelText;}そもそも構造が同じなら、1つだけ作っておいてコードから簡単に増やして同じ用に扱える。(綺麗に並んでるのは親オブジェクトにLayoutGroupがついてるから。"Piyo";Layouterという仕組みを使えば、上から下、左から右に同じアイテムを並べることも簡単。UIって同じものいくつか並べるって作業めっちゃ多いんですよね。}}UIを文字列で参照引っ張ってくるなんて狂気の沙汰じゃねぇ!っていう自分みたいな人向けに、コード生成機能もついてます。UIを更新して参照するべきオブジェクトが無くなっていた!というケースのチェックが自動で出来るようにもする予定。これがないと自分の精神が持たないのでv1.0って言うときには必ず入ります。完全に自動生成にすればランタイムの速度ももっと上がるんですが、UIをAssetBundleにしたときにScriptの更新が必須になるとめっちゃ不便なので文字列参照としています。}}型を保持したままUI要素をDuplicateすることも出来ます。}}ローカライズ対応もこんな感じ。パスとテキストをマスターデータに出してしまえば、後からマスターだけでUIのテキスト変更が可能。},});使ってみる興味ある!って方は、ぜひ試してみてください。インターフェイスなど破壊的な変更が入る可能性が高いです。管理したいオブジェクトの親に、UICacheコンポーネントを貼り付けて、「Update」ボタンを忘れずに押します。これでキャッシュが作られます。ランタイムで作ってもいいんですけど気持ち遅いのでEditor上で作っておきます。あとはコードから参照して使うだけ。(1)kyubuns.dev引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。