Mudbox では、正規のグラフィックス カードの CgFX マテリアル仕様がサポートされています。CgFX は、コンピュータのグラフィックス カードの機能を使用してカスタム マテリアルを作成し、多様なマテリアルやレンダリング効果をリアルタイムに生成できるシェーダ仕様です。
CgFX マテリアルを開発して使用することの主な利点は、CgFx 仕様をサポートするその他のハードウェア プラットフォーム(ゲーム コンソールなど)に加えて、さまざまなハードウェアやソフトウェア アプリケーション(Maya と Mudbox 間など)に移植できることにあります。
CgFX 仕様とその構造、および詳細なチュートリアルについては、http://http.developer.nvidia.com/CgTutorial/cg_tutorial_appendix_c.html を参照してください。
Mudbox での CgFX ファイルの使用に関する注意
- CgFX ファイルには、少なくとも 1 つの有効な Technique が含まれている必要があります。 Technique とは、特定の効果を生じさせる方法が記述された指示のセットです。
- 割り当てられている変数に関する注釈が CgFX マテリアル ファイルに含まれている場合、それらは CgFX マテリアルがコンパイルされたときに、[プロパティ]ウィンドウ内のプロパティ アイテムを生成するために使用されます。
- CgFX ファイルに float3 vCameraLocalPosition、float3 vLightLocalPosition、および float4x4 mModelViewProject 変数が含まれている場合、Mudbox ではそれらに適切な値が自動的に割り当てられます。
- Mudbox では、Mudbox でペイントする CgFX ファイル内のテクスチャを指定できます。MetaSampler 構造を使用することで、テクスチャを含むサンプラを定義し、Mudbox 内でペイント可能なチャネルとして選択することができます。
- Mudbox では、SAS 注釈およびセマンティクスのサブセットがサポートされています。サポートされているセマンティクスは、World、WorldInverse、WorldTranspose、WorldInverseTranspose、WorldView、WorldViewInverse、WorldViewTranspose、WorldViewInverseTranspose、WorldViewProjection、WorldViewProjectionInverse、WorldViewProjectionTranspose、WorldViewProjectionInverseTranspose、View、ViewInverse、ViewTranspose、ViewProjection、ViewProjectionInverse、ViewProjectionTranspose、ViewProjectionInverseTranspose、Projection、ProjectionInverse、ProjectionTranspose、ProjectionInverseTranspose
です。
- サポートされている注釈は、UIWidget、UIName、UIMin、UIMax です。
注:
上記のセマンティクスと注釈の定義は、NVIDIA Web サイトに記載されています。
Mudbox に CgFX ファイルをロードする
Mudbox では、effects フォルダ内にある CgFX ファイルについて、[CgFX ベースド マテリアル]プロパティ ウィンドウで CgFX マテリアルのマテリアル ユーザ インタフェースが自動的に生成されます。このページの「Mudbox での CgFX ファイルの使用に関する注意」を参照してください。
- (Windows) <ドライブ>:¥My Documents¥Mudbox¥<バージョン>¥data¥Effects
- (Mac OS X) /Users/<ユーザ名>/Library/Application Support/Autodesk/<バージョン>/data/effects
- (Linux) /home/<ユーザ名>/Mudbox/<バージョン>/data/Effects
注:effects フォルダには、CgFX マテリアルの例もいくつか含まれています。このフォルダ内のファイルは、.cgfx 形式(非コード化)または .bin 形式(コード化)です。
CgFX マテリアルは、Mudbox を起動するたびにコンパイルされます。effects フォルダ内の CgFX マテリアルが複雑であるほど、Mudbox の起動にも時間がかかります。