GS2 Blog

Game Server Services(https://gs2.io/) の最新情報をお届けします

UI Kit に条件に基づくスプライト入れ替えコンポーネントが追加されました

はじめに

UI Kit はノーコードで GS2 から取得したデータを元に UI を構築するための高レベルなSDKです。

機能追加の背景

UI Kit には Enabler コンポーネントが存在し、条件に基づいて GameObject を有効化したり無効化することができます。
この仕組みを利用して、アイテムリストを描画する際に、アイテム名の値を元に表示するアイコンの GameObject を切り替えることで、表示されるアイコンを制御できます。

一方で、この方法ではシーン内の GameObject が増える傾向にあり、パフォーマンスに悪影響を与えることがありました。

追加された機能の詳細

条件に基づいて Sprite を差し替えるための SpriteSwicher コンポーネントが追加されました。
この実装では条件を満たす場合 OnUpdate 関数に Sprite オブジェクトを引数にコールバックが呼び出されます。
この Sprite オブジェクトを Image オブジェクトに反映することで、表示する画像を差し替えることが可能となります。

SpriteSwicher コンポーネント には SpriteSwicher と SpriteTableSwicher の2種類を提供しており
前者は In / NotIn / BeginWith / EndWith といった演算に基づく条件判定が行える代わりに1つのコンポーネントで取り扱える Sprite は1つで
後者は完全一致による条件判定しか行えない代わりに、1つのコンポーネントで複数の Sprite を扱えるようになっています。


プログラミング言語的に言えば、それぞれ if / elseと switch のような特性を持つと理解して、状況に応じて使い分けてください。

(C) Game Server Services, Inc.