本日はMRGT枠です。
MRGTには様々なエディタ上でのツールが提供されています。今回はUIの色反転機能を見ていきます。
〇HoloLens 2022年アドベントカレンダー
HoloLens 2022年アドベントカレンダーはQiita上で私の師であるがち本さんが開催している企画です。
クリスマスまで毎日記事を埋めていくことが目的で本日は13日目の記事になります。
〇GraphicsToolsとGraphics Tools/Text Mesh Pro
MixedRealityGraphicsTools(MRGT)はMicrosoftによってオープンソースな形で開発、提供されているMixedRealityデバイス向けのSDKである第三世代のMixedRealityToolkit(MRTK3)で提供されるグラフィック関連のパッケージを指します。
GraphicsToolsではGraphics Tools/Text Mesh Proと呼ばれるシェーダーが提供されています。
これはUnityの別パッケージであるTextMeshProに似ていますがどういった違いがあるのかを調べる中で今回の色反転機能を知りましたのでまとめます。
Graphics Tools/ Text Mesh Pro(以下MRGTTMPシェーダー)はTextMeshPro用のシェーダーです
シェーダーの冒頭にはMRGTでの追加点が列挙されています。
// Simplified SDF shader: // - No Shading Option (bevel / bump / env map) // - No Glow Option // - Softness is applied on both side of the outline // Graphics Tools Additions // - Single Pass Instanced Stereo Rendering Support // - Support for Clipping Primitives (Plane, Sphere, Box) // - _SrcBlend and _DstBlend Properties // - ZWrite and ZTest Properties // - SRP Batcher Support // - Text Color Inversion Support for Accessibility
・シングルパスインスタンシングレンダリングに対応
・Clopping プリミティブのサポート(MRGTの機能)
・アルファブレンドのプロパティの追加
・深度に関するプロパティの追加
・SRPバッチャーへの対応
・アクセシビリティのためのテキストカラーの反転機能サポート
シングルパスインスタンシングとSRPバッチャーの対応は非常に魅力的な機能です。
しかし今回はアクセシビリティのためのテキストカラーの反転機能サポートに関して機能を見ていきます。
〇GraphicsTools/TextMeshProへの変更
色反転機能を試すためにはTextMeshProのマテリアルのシェーダーをGraphics Tools/Text Mesh Proへ切り替える必要があります。
これはTextMeshProのアセットを開き、紐づいているマテリアルからシェーダーを変えます。
マテリアルを右クリックし、Graphics Tools→Accessibillity→Toggle Text Color Inversionを選択します。
以上で反転機能が有効になります。
この機能は背景にある色に合わせてテキストの表示色を反転させ見やすくする効果を持っており、動的に表示されます。
本日は以上です。