CgFX

 
 
 

下位互換用に用意されています。このシェーダはサポートされていませんが、これを使用する古いシーンとの互換性を確保するために Softimage で引き続きインストールすることができます。シーン内のサポートされていないシェーダは、現在の Softimage シェーダ ライブラリの同等のシェーダに置き換えることを推奨します。

| コード | イメージ | CGFX_Parameters | Render Tree の使い方 | CgColor

カテゴリ: リアルタイム > Cg > CgFX

[シェーダタイプ](Shader Type): リアルタイム(RTShader)

出力: リアルタイム

[ディスプレイモード](Display Mode): OpenGL

CgFX シェーダは、Cg プロファイルを備えた nVIDIA の CgFX フォーマット、Microsoft の FX フォーマット、および COLLADA の FX フォーマットに対応しています。

シェーダは、外部ファイル参照およびインラインソースコンパイルをサポートし、迅速な試用を実現しています。

シェーダは、ワークグループの Application¥hsls¥ ディレクトリにインストールする必要があります。

一般的なCgシェーダの詳細については、http://developer.nvidia.com/page/cg_main.html を参照してください。

CgFX

一般

外部の CgFX ファイルを使用(Use External CgFX File)

.cgfx ファイル参照を有効にします。[コード]タブのテキスト エディタにコードを直接入力する場合は、このチェックボックスをオフにします。

CgFXファイル(CgFX File)

.cgfx ファイルのファイル名とパスを指定します。ファイル名を入力するか、参照ボタンを押してファイルを指定します。

CgFX シェーダは、エフェクト ファイルへの相対パスを受け入れます。パスは、現在のプロジェクトのルートに対する相対パスでなければなりません。これにより、参照ファイルを新しいシーン位置に関連付け直すことなく、プロジェクトを別のパスまたはコンピュータに転送できます。

再ロード(Reload)

.cgfx ファイルを読み取って再コンパイルし、エフェクトの表示を更新します。.cgfx ファイルのコードを修正する場合に便利です。

調整したパラメータの値はそのままに、調整可能なパラメータのプロパティ セットが更新され、パラメータの有効性が保たれます。無効なパラメータはデフォルト値に置き換えられます。

編集(Edit)

現在表示されている .cgfx ファイルを修正、保存できるエディタを開きます。.cgfx ファイルを保存したら、[再ロード]をクリックして変更を反映します。

IN. VariableName

頂点シェーダ入力レジスタに渡される属性を指定します。

編集(Edit)

関連属性のプロパティ エディタが表示され、ここでパラメータを編集できます。たとえば、タンジェント データが入力レジスタに渡されるように設定している場合に、[編集]を押すと、[TangentOp2 Operator]プロパティ エディタが表示されます。

新規(New)

[新規](New) [頂点カラー](Color At Vertices) [頂点カラー](Color At Vertices)

新しい[Vertex_Color]プロパティを作成します。

[新規](New) [ウェイト マップ](Weight Maps) [ウェイトマップ](WeightMap)

新しい[Weight Map Cluster](WeightMapCls)プロパティを作成します。

[新規](New) [テクスチャ プロジェクション](Texture Projections)

[新規]: 新しいテクスチャプロジェクションが作成されるよう定義します。以下の中から選択できます。

  • [UV]: U 方向、V 方向に沿ってテクスチャを投影します。

  • [平面 XY](Planar XY): XY 座標のみにテクスチャを投影します。

  • [平面 XZ](Planar XZ): XZ 座標のみにテクスチャを投影します。

  • [平面 YZ](Planar YZ): YZ 座標のみにテクスチャを投影します。

  • [円柱状](Cylindrical): オブジェクトが円柱で包まれているかのようにテクスチャを投影します。

  • [球状](Spherical): 若干の歪みを加えてサーフェイス全体を球状にマッピングしながら、オブジェクトを包み込みます。

  • [空間的](Spatial): テクスチャはシーンの原点を中心点として投影されます。

  • [キュービック](Cubic): オブジェクトのポリゴンを立方体の面に割り当ててからデフォルトで各面にテクスチャを投影することにより、テクスチャをオブジェクトに適用します。3 次元投影のレイアウトは、[Texture Support]プロパティ エディタを使用して完全にカスタマイズ可能です。

  • [カメラ プロジェクション](Camera Projection): カメラのセンターを中心点としてテクスチャがマッピングされます この座標系では、カメラが「ワールド」の中心であり、そのアップ ベクトルの向きは Z 軸の負方向と同じです。その結果は、カメラから投影されたような画像となります。カメラの動きに応じてテクスチャも動き、スケーリング、回転、移動の影響を受けます。

  • [ユニーク UV(polymesh)](Unique Uvs (Polymesh)): 各ポリゴンの UV 座標を、その各テクスチャ片に割り当てます。これにより、2 つのポリゴンが互いに重なることはありません。

  • [アドバンス](Advanced): テクスチャ プロジェクションを明示的に定義する[Create Texture Support]プロパティ ページを開きます。ここからテクスチャ プロジェクションを定義できます。

コード

外部の CgFX FX ファイルを使用(Use external CgFX File)

外部 CgFX ファイルを参照せず、シェーダ内で直接 CgFX コードを埋め込む場合は、このオプションを無効にします。

パスを含む(Include Path)

CgFX コードのパスを含めるようにします。

CgFXコード(CgFX code)

エディタに CgFX コードを入力します。

CgFX ファイルには、Cg、アセンブリ、および固定機能シェーダと共に、エフェクトをレンダリングするためのレンダの状況および環境の情報が含まれます。

テキスト エディタでは、テキストのカスタマイズ(フォント、カラー、サイズ)、構文スタイリング、折りたたみ(関数やサブルーチンなどのブロックを非表示にする機能)、自動入力、およびキーワードの強調表示がサポートされています。このテキスト エディタ ウィジェットを独自のプラグインに実装することもできます。

コンパイル(Compile)

CgFX コードをコンパイルおよび実行します。

イメージ

CgFX シェーダが自動的に作成され、.cgfx ファイルに指定されているテクスチャのリアルタイム シェーダ テクスチャ ノードに接続されます。

CGFX_Parameters

調整可能なパラメータの UI は、エフェクトが完成したときに動的に作成されます。この UI は CGFX_Parameters という名前のカスタム プロパティです。

CgFX ファイルには、調整可能なパラメータの UI が含まれていることがあり、それを使用して以下の操作を実行できます。

  • エフェクト パラメータを調整する。

  • 1 つまたは複数のテクニックを選択する。テクニックは、ビジュアル エフェクト(グラフィック状態、シェーダ、および少なくとも 1 つのレンダリング パス)を生成するのに必要な情報をカプセル化するためのものです。

  • 入力ライトを選択する。

調整可能なパラメータの UI を変更するには、.cgfx ファイル内のコードを編集する必要があります。

.cgfx ファイルを更新すると、調整したパラメータの値はそのままに、調整可能なパラメータのプロパティ セットが更新され、パラメータの有効性が保たれます。無効なパラメータはデフォルト値に置き換えられます。

Render Tree の使い方

CgFX シェーダは、マテリアル ノードの[RealTime]入力に接続します。テクスチャ シェーダなどのその他のリアルタイム シェーダも CgFX シェーダの「前の」入力に接続できます。