« C4D ChannelShader…03 | トップページ | C4D ChannelShader…05 出力カラーにNoiseクラスを使用 »

C4D ChannelShader…04 最小限とは…

SDKを見るとメンバ関数の横に「optional」と書いてある…
このオプショナルのメンバ関数を全て省いて見ますと…

/*
ChannelShaderPlugin
testChannelPlugin
*/


var pluginID = 1000007;


//testChannelPlugin ===============================================================
class testChannelPlugin : ChannelPlugin
{
  public:
  testChannelPlugin();//コンストラクタ

  GetName();//チャンネルシェーダ名
  GetID();  //プラグインID

  //ポイントPの色
  Output(settings , render , p , n , d , t , texflag , vd);
};

testChannelPlugin::testChannelPlugin(){super();}

testChannelPlugin::GetName(){return "testCHShader";}

// http://www.plugincafe.comから取得した、このプラグインの為のplugin idを戻す
//テストID:1000001-1000010

testChannelPlugin::GetID(){return pluginID;}

testChannelPlugin::Output(settings , rd , p , n , d , t , texflag , vd){
  return vector(1.0 , 0.0 , 0.0);//赤を返す
}



//main ============================================================================
main()
{
  Register(testChannelPlugin);
}

Output()に渡していた何だか、よく分らないクラスも削除しました。

結局、コンストラクタ/名前:GetName()/ID:GetID()/出力カラー:Output()と…
これで、実行しても問題なく組み込まれ、マテリアルに適用できます。

これが、最低限のチャンネルシェーダープラグインと言う事だろう…
ユーザが全く設定が出来ませんが…

|

« C4D ChannelShader…03 | トップページ | C4D ChannelShader…05 出力カラーにNoiseクラスを使用 »