Heptoの開発にて、ユーザインタフェース関連を変更した。
といっても、画面に表示されるインタフェースの変更ではなく、それを定義し表示する仕組み(UIManager)の仕組みを変更した。
これまでは、パズルシーン毎に「移動操作用」や「回転操作用」というテンプレートを指定し、UIManagerで用意している部品グループを表示していた。パズルシーンで指定するメニューはこんな感じ。
しかし、新しいパズルシーンの設計時、「移動操作」に追加のボタンが必要となり、新しいテンプレートを追加するかどうか検討が必要となった。検討の結果、テンプレートをこの先も追加していくよりも、シーンで必要な部品を指定する方が良いと判断し今回のUIManager変更となった。具体的には各シーンで次の様なメニューで使用するインタフェースを指定する。
シーンに必要な部品を複数選択し、必要に応じてアイコンも変更する、という仕組みである。
将来的には、シーン内でパズルの部品単位でインタフェースを変更することも検討したい。(その必要があるパズルができたときだが)