Camera.FindShaders

導入

v5.0

詳細

フィルタに一致するカメラに適用されているすべてのシェーダ。一致するシェーダが見つからない場合は、FindShaders が空のコレクションを戻します。

スクリプト 構文

oReturn = Camera.FindShaders( Filter );

戻り値

ShaderCollection

パラメータ

パラメータ タイプ 詳細
フィルタ String シェーダFilterオブジェクトの名前。たとえば、siShaderFilter(標準の Softimage のシェーダフィルタ)、またはカスタムフィルタを使用することができます。

JScript の例

// Create a camera and apply a shader to lens
var root = Application.ActiveProject.ActiveScene.Root;
// Create a point light
var light = root.AddLight( "Point", true, "PointLight" );
// Set up the camera with lens flare
var camera = root.AddCamera( "Camera", "Camera" );
translate( camera, 4, 6, 4);
var flare = camera.parameters("lensshader").connectfromprogid("Softimage.FLARES.LEN");
flare.parameters("lights").addvalue(light);
// Find all shaders applied to camera
var shaders = camera.FindShaders(siShaderFilter);
var eShaders = new Enumerator(shaders)
logmessage( "Number of shaders applied to camera: ");
for ( ; !eShaders.atEnd(); eShaders.moveNext() )
{
        var shader = eShaders.item();
        logmessage( "camera shader: " + shader.progid );
}
//INFO : Number of shaders applied to camera: 
//INFO : camera shader: Softimage.FLARES.LEN.1

関連項目

Camera.GetShaderInputType