UIを作りやすくするアセット「DoozyUI」の紹介
DoozyUI とは
Unity のアセットストアで販売されている、UIを作りやすくするスクリプトのアセットです。 api.assetstore.unity3d.com
Unity Editor 上でサウンドの追加、アニメーションの追加を行い、Unity Editor と Script の行き来を減らすことが出来ます。
メニュー操作の階層化も行えるため、複雑なバックボタン処理を作り易いです。
エディター拡張も凝っており、分かり易い作りとなっています。
必須アセット
api.assetstore.unity3d.com アニメーション等で使用されているようです。 無料ですのでプロジェクトに追加しておきましょう。
大体の手順
- Hierarchy上で右クリック → DoozyUI → Managers → UIManager で UIManager を生成する
- Hierarchy上で右クリック → DoozyUI → UICanvas を作成(大本の管理キャンバス)
- Hierarchy上で右クリック → DoozyUI → UIElement を生成(これがメニューの1単位)
- UIElement を Inspector 上で設定する。 最初に表示するかどうか、開始と終了用のアニメーションの指定など
- 必要分のUIElement を生成する
- Tools → DoozyUI → ControlPanel を選択する
- UIElements,にカテゴリーを追加する
- Hierarchyに作成した UIElement に手順7のカテゴリーを設定していく(このカテゴリーの単位でメニューを操作する)
- 各UIElement に UIButton を作成する
- UIButton の OnClick の Navigation の SHOW に次のメニュー、HIDEに今のメニューのカテゴリーを設定する
- 実行する
ESC ボタンの取り扱い
階層化されたメニューを1つ戻す挙動を行います。 UIButton の OnClick の Navigation で次のメニューを設定する際に、Add To Navigbation HistoryをONにすると階層化され、Backボタンが動作するようになります。
特殊な「Back」ボタンについて
UIButton のカテゴリーを「Back」とすると、ESCキーを押したときの同様の動作をします。
おまけ スワイプメニューを作れる拡張アセット「UIDrawer」
画面端にあるメニューをスワイプで取り出すメニューを作る為のアセットです。 使用する場合は、UIDrawer → DoozyUI の順番でプロジェクトに追加しましょう。 api.assetstore.unity3d.com
おまけ DoozyUIのテストで作成したもの
幾つかの挙動はスクリプトで調整していますが、殆どの機能はDoozyUIで作成されています。 Backボタンの対応は大変ですが、DoozyUIを使う事でかなり楽に作成できると思いました。