本日はUnity,MRGT枠です。
今回は初歩的な記事としてUnityでのMRGTのマテリアルの使用法をまとめます。
〇環境
・Unity2022.3.26f1
・Windows11PC
・Microsoft GraphicsTools v8.0
〇マテリアルの作成と使用
3DCGの描画には造形情報であるポリゴン(頂点と辺によって構成される面)とどのように描画するのか?という情報であるマテリアルが必要です。
ポリゴンはfbxなどの形式を用いることで、ソフトウェア間をまたいで使用できますが、マテリアルは基本的にソフトウェアごとに定義が異なるため、UnityではUnityでマテリアルを作成する必要があります。

MRGTで提供される機能を用いるためには2つのアプローチがあります。
〇新規でMRGTのマテリアルを作成する
初めに紹介する方法ではいきなりMRGTのシェーダーが適応されているマテリアルを作成可能です。
Assets内の任意のディレクトリで右クリックをしCreate→GraphicsTools→Materialsを選択します。

これによってNew GraphicsTools Materialというマテリアルが作成されます。

なお余談ですが、本機能は筆者が提案、MRGTへの実装を行っています。
〇既存のマテリアルのシェーダーを変更する
こちらの方法では、すでに存在するマテリアルもしくは一度デフォルトのマテリアルを作成し、MRGTのマテリアルに変更する方法になります。
①Assets内で右クリックしCreate→Materialを選択します。

これによって新規のマテリアルが作成されます。

②次にマテリアルパラメータ最上部のShaderをGraphicsTools/Standardに変更します。
なおGraphicsToolsの項目の中にStamdardが存在し選択が可能です。

正常に切り替えることができればシェーダーがGraphicsTools/Standardに設定されます。

〇テクスチャの設定方法
MRGTのマテリアルが作成出来たら次にテクスチャの設定方法です。
基本的な設定項目は以下の2つです。
・Albedo
・NormalMap

Albedoはメインテクスチャを設定します。Assets内に配置したテクスチャをドラッグアンドドロップすることで設定可能です。

NormalMapを使用する場合はNormalMapの項目にチェックを入れて有効化する必要があります。
Albedo同様にNormalMapの表記左側に対応するNormalMapをドラッグアンドドロップすることで設定可能です。

〇チャンネルマップの設定方法
SubstancePainterなどでテクスチャを作成している場合金属を示すMetallnessMapやつるつるざらざらを示すRoughnessMapが存在します。

これをMRGTのマテリアルで使用する際はChannelMapを作成する必要があります。
ChannelMapは金属表現のMetalnessMap、影情報のAOMap,発行情報のEmissionMap、つるつるざらざらを示すRoughnessMapをそれぞれ赤、青、緑、透明度にまとめた1つの画像を指します。
作成方法に関してはPhotoshopやTextureMargeなどのツールを使用する必要があります。
ChannelMapを使用するためにはAlbedoの下のChannelMapにチェックを入れ画像を設定する必要があります。

このようにMRGTの場合は使用したい機能の左側に四角い枠がある場合はそこにテクスチャをドラッグアンドドロップすることで設定が可能です。
また、基本の機能以外で使用する機能はその項目のチェックを入れることでパラメータが表示されます。
今回紹介したパラメータ以外の機能は以下にまとめています。
MRGTの場合は徹底した軽量化に重きを置いており、使用する機能のみ処理のコストが払われ、チェックを入れていない機能は全くのコストを払うことがないという仕組みが採用されています。
本日は以上です。