The best UI is the one you don't notice.
"最高のUIとは、あなたがそれをUIだと気づかない"。という一文からこの本は始まります。良いUIというものは透明であり、良いUIよりも悪いUIについて語られることの方が多いのはこれが理由です。
というわけで、UnityにおけるUI制作及び、新しいUIフレームワークであるUI Toolkitを解説した、Unity公式によるe-book User-Interface design and implementation in Unityのレビューを書いていきます。
UIについて学ぶ
Unityの新しいUIフレームワークとして正式版のUI Toolkitが出たのが2022年。その年末に出されたのがこの本ですが、実は純粋なUI Toolkit解説書というわけではありません。しかし、出発点としては非常にためになったのでオススメしたいです。
そして、このe-bookとセットとなる公式デモプロジェクトがあります。2Dサンプル・プロジェクトとして出されていた"Dragon Crushers"を題材にUI Toolkitで作り直されたUIを含み、C#スクリプトによるコントロールなどを学ぶことが出来ます。具体的な実装についてはこのサンプルで学習することになるでしょう。
構成について
純粋なUI Toolkit解説本ではないと書きましたが、まずはゲームにおけるUIの意義についてから始まり、プロダクションにおけるUIの作業工程などについても解説されます。UIに関わる全般的な知識も含まれているということです。結果として、UI Toolkitの解説が薄くなってる、という側面が無くもないですが。
昨今のゲームでは珍しくもなくなった、没入感を高めるDiegetic UIについても語られますが、同時に戦略性やデータの重要度が高いゲームにおいてはシステマチックなUIが推奨されるだろう、というようなことも語られます。つまり、ゲーム性に合わせたUIを!というデザイン論も語られているということです。
そして、UI作成はUI用の素材を用意することが主な仕事なのでアセットの準備に関する章も含まれます。PhotoShopを始めとした各ソフトウェアの解説が記されているので実践的です。テクスチャなどのアセットの注意点などもここで扱われます。
2種類のUIシステム
Unityにおいては2種類のUIフレームワークが存在しています。従来のUnity UIと新しいUI Toolkitです。UI ToolkitはUnity UIと比べると現状出来ない部分もあるので、この2つを状況に上手く使い分けるということもあるでしょう。この本はこの2つのシステムを比較しつつ各々解説しています。
まずはUnity UIの解説から始まります。Unity UIは本質的にはゲームオブジェクトなので、スクリーン上のオーバーレイではなくシーン中に置いたりUI Toolkitでは出来ないことも可能です。3つのレンダリング・モードなどの各種設定がここで解説されます。
ここで重要なのはPPU(Pixel Per Unity)などについての解説でしょうか、アセット制作において直接的に影響を与える要素なので確認しておきたいです。
そして本題のUI ToolkitですがWeb技術を下敷きにしているので、HTMLやCSSの経験があれば活かすことが出来ます。これは大きな利点であり、HTMLなどを少しでも触ってて良かったなと思いました。
ただこの本の少し残念な所は、C#とUI Toolkitの連携についての具体的な解説が少ないという部分です。そこはデモプロジェクトのサンプルコードを見てくれ!という感じなのでしょうが、もう少しあっても良かったと思います。
サンプルプロジェクトへの言及や解説もこの本の後半ありますが、技術的な解説というよりかは各UIでやってることをハイレベル視点から解説、紹介という感じで詳細や実装に関してはサンプルで確認してね!という感じになっています。ここら辺はちょっと駆け足気味ではありますね。
まとめ
というわけで、個人的な不満もないわけではないですが、基本的にはUnityにおけるUI作成を学ぶことができ、UI Toolkitの入門書的な役割を持つ本書はスタート地点にふさわしい一冊だと思います。
UI Toolkitについては本ブログで積極的に取り上げていきたいトピックなので、その際の参考資料として、この本を活かしていきたいです。