[Unite2018] エディター拡張マニアクス2018
公式サイト
http://events.unity3d.jp/unitetokyo2018/session-lineup.html#session36
講演者
SlideShare
https://www.slideshare.net/UnityTechnologiesJapan/unite-2018-tokyo2018-96373327
概要
- ここ3年の間に実装された機能について
- 公開済・非公開含む
内容
赤文字は開発段階
- Scripted Importer
- 未対応ファイルのインポートを自動化
- 拡張子ごとに作成
- Unityがサポート済の拡張子には対応できない
- OnImportAsset()
※アセットIDは変更しないこと
- 拡張子ごとに作成
- 未対応ファイルのインポートを自動化
- UI Elements
- UnityエディタはIMGUIで設定されている
- UIが複雑になるほどコード量が増える
- 処理が1箇所にまとまってしまう
↓
- RMGUIであるUI Elementsの開発
- まだinternal customer (Unity社員)向け
- 概要
- UI Elementsの今後
- 色々課題が多い
- Custom Editor
- Property Drawer
- Performance
- おそらく2019.x 後半
- 色々課題が多い
- UnityエディタはIMGUIで設定されている
- Graph View
- 現状
- まだ社員向け機能
- まだdocumentもない
- 現状
- Shortcut System
- ex) Shift + A のショートカットコマンドを実装
- 特定のEditor Windowでショートカットを実装する場合
- Eventからショートカットコマンドを検知
- Menu Itemで実装する場合
- グローバルなコマンドとして実装
- 特定のEditor Windowでショートカットを実装する場合
- ショートカット機能の実装は難易度が高い!
- OSによるキーの違いも考慮する必要
- ショートカットキーのコンフリクトを調べられない
- ショートカットのリスト化が困難
- Unity2018.2から新しいシステムを実装
- まだプレビュー段階
- できるようになること
- ショートカットのリスト化
- ユーザによるショートカットキー変更
- ショートカットキーがコンフリクトした場合の修正
- 実装方法
- Menu Itemのような実装方法
- ex) Shift + A のショートカットコマンドを実装
- Preset
- Package Manager
- Assetを配信するシステム
Module Manager
との違い- コンセプトは同じ
- 失敗点を改善
- 扱うモジュールがcore部分に強く依存していて切り離しが難しい
- 最終的に
Module Manager
がなくなり、Package Manager
に完全移行 - 基盤システムは
npm
- そのためパッケージ情報は
package.json
で管理
- そのためパッケージ情報は
- 今後
unitypackage
は過去のフォーマットになる
- Unity C# Reference