Data\ShaderにPMD(HLSL)のシェーダーが入っていたので、そちらを参考にプログラマに添付画像のようなMatcapシェーダーを作成してもらいました。
レイアウトファイルの.xmlファイルで<maps>に、Matcap用テクスチャの<map name="Matcap" />を追加し、メタセコの材質設定でその欄が追加されテクスチャが指定できるのを確認し、MQOファイルにもテクスチャパスが保存されてるようですが、.hlslファイルでこのテクスチャを指定するにはどうすればいいのでしょうか?
.hlslファイルを見ると、#if TEXTURE以降の部分でそれぞれのテクスチャを定義してるようですが、名前を合わせてみたりしても反映できなかったようです。
テクスチャの登録指定がregister( t0 )、サンプラー登録が( s0 )?という風に、模様、透明、凹凸が番号が振られているのでその番号を増やしていけばいいのかと思ったのですが、その次はシャドーマップがt3に登録されており、その次にt4として項目を追加してみても反映されなかったようです。
XMLでこのようにMatcapの項目を追加
---------------------------------------------------
<maps>
<map name="Texture" />
<map name="Alpha" />
<map name="Bump" />
<map name="Matcap" />
</maps>
---------------------------------------------------
そこにパスを指定してMQOに保存されていた情報
MaterialEx 3 {
material 0 {
shadertype "hlsl"
shadername "matcap"
続きを表示...
shadermapping 1 {
Matcap "..\Materials\00ZBrush_RedWax.png"
}
}
}
---------------------------------------------------