『Unityで使える汎用的なハンバーガーメニューの実装』in Gotanda.unity

 
 

0.5 m タイトル

0.5m 自己紹介

  • UnityとVRやってる人です
  • MyDで新作VRタイトル
  • 今日はキャンプ場からお届けしています
  • Twitterは @nkjzm でやっているのでフォローお願いします

0.5m Vフレットの紹介

  • 最近作っているアプリの紹介
  • ギターに合わせてアバターで弾き語りができるアプリ
    • アバターはVRMに対応
  • ギター版のMMD的な使い方も想定
  • これ作ってる時のアセットを紹介
  • gif
 

0.5m UniHambargerの紹介

  • 気軽に使えるハンバーガーメニュー
  • メニューからゲーム中のパラメータを操作できる
  • オーバーレイでリアルタイムプレビューができる
    • ツール系アプリやリアルタイム性のあるゲームで使えそう
  • gif
 

0.5m GitHubで公開しました🚀

  • URL
  • Packmanで導入可能
  • Required
    • UniRx
 

0.5m UniHambargerの特徴

gifで4分割で紹介したい
  • uGUIベースで簡単に導入できる ところ
  • 要素の追加はワンライナー なところ
  • Enumのドロップダウン化が便利 なところ
  • パラメータの保存機能付き なところ 

0.5-1.0m uGUIベースで簡単に導入できる

  • Packmanでインポートしてシーンに配置するだけ
  • uGUIベースだからカスタマイズも簡単

1.0m 要素の追加はワンライナー(1/2)

  • コードを示す
  • 追加方法の説明
  • IObservableで受けて反映させる
    • 途中の結果も取れるので便利
      • 最後の結果だけ欲しかったら Throttle

0.5m 要素の追加はワンライナー(2/2)

  • 対応しているのが以下(画像付きで示したい
    • Slider(int / float)
    • Toggle(bool)
    • Dropdown(string[] / Enum)

0.5-1.0m Enumのドロップダウン化が便利

  • Enumを渡すと全要素をDropdonwに
  • C# 7.3からGeneric制約にEnumが使えるようになった(多分Unity2018後半から2019以降)
  • // TODO: 日本語引数配列を渡したりもできる
    • Unityのエディタ拡張機能っぽくする?

1.0m パラメータの保存機能

  • ラベル名をキーにしてパラメータの保存ができる
  • 気軽に追加してそこそこの使い勝手を実現
  • 保存させないオプションもあり

1.0m 細かいあれこれ

  • ラベルの詳細書けるようになってる
    • ラベルキーになっているから
  • パラメータのリセットも入ってる
  • 呼び出し元から非アクティブにできる

0.5m 最後に

  • UniHamberger使ってみてね
    • URL
  • Vフレットもそのうち出すのでお楽しみに
 
 

UniHambergerメモ

  • Packmanにする
  • dropdownで日本語文字列渡したい
  • 登録解除追加しちあ
  • 保存させないオプションもあり