GetAttributeList


詳細

レンダリングを実行するために必要な属性をシェーダが Softimage に伝えることができます。 属性は CHardwareAttributeArray に返されます。

CHardwareAttribute クラスは、シェーダがレンダリングで使用するためにメッシュまたはポイント クラウドのどのデータ タイプでも要求できるようにする一連の補助関数を実装します。 CHardwareAttribute オブジェクトで定義される各属性は、属性データと、データを保持するハードウェア レジスタにアクセスできます。 個々のシェーダはこのコールバックを書き出す必要があります。このコールバックは、シェーダに必要な属性を Softimage に知らせます。


適用対象

カスタム リアルタイム シェーダ


構文

bool <shader_name>_<renderer_name>_GetAttributeList (
        CRef                            in_pCtx, 
        CHardwareAttributeArray&    out_array, 
        void                            **io_pInstanceData
)
{ 
        ... 
}

<shader_name> は、このシェーダに対して登録されたクラス名です。この名前に含まれるスペースはアンダースコアに置き換えられます。 シェーダ定義プラグインの場合は、この名前は PluginRegistrar::RegisterShader の呼び出しで指定されます。 パーサを使用して作成されたシェーダ定義の場合は、この名前は ClassName 属性を介して ParseInfo コールバックで設定されます。

<renderer_name> は、レンダリング エンジンの名前です。 たとえば、クラス名が Sunset である OpenGL シェーダは Sunset_OpenGL_GetAttributeList を使用するのに対し、.cgfx ファイルから解析されたバージョンは Sunset_CgFx_GetAttributeList を使用します。


パラメータ

パラメータ タイプ 詳細
in_pCtx CRef& HardwareShaderContext オブジェクトへのリファレンス。
out_array CHardwareAttributeArray このシェーダで定義されている CHardwareAttribute のリスト
io_pInstanceData void シェーダ インスタンス ユーザ データへのポインタ

関連項目