Execute (リアルタイム シェーダ)


詳細

このコールバックはリアルタイム シェーダをレンダリングするためのメイン エントリ ポイントです。

シェーダがその属性リストとともに GetAttributeList に応答すると、Softimage はこれらの属性値をパッケージングし、各属性のサイズと形式を説明する配列と一緒に Execute 関数に渡します。 メッシュまたはポイント クラウドで属性が見つからない、あるいは定義されていない場合は、Softimage は null ポインタを渡します。

このコールバックは必須です。

適用対象

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


構文

bool <shader_name>_<renderer_name>_Execute (
        CRef    in_pCtx, 
        void    **io_pInstanceData
)
{ 
        ... 
}

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

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


パラメータ

パラメータ タイプ 詳細
in_pCtx CRef& HardwareShaderContext オブジェクトへのリファレンス。
io_pInstanceData void シェーダ インスタンス ユーザ データへのポインタ

関連項目