Light.GetShaderInputType
 
 
 

Light.GetShaderInputType

Introduced

v5.0

Description

Returns the shader input type for a parameter. If the parameter cannot be connected to a shader, GetShaderInputType returns siUnknownParameterType.

C# Syntax

siShaderParameterType Light.GetShaderInputType( String Parametername );

Scripting Syntax

oReturn = Light.GetShaderInputType( ParameterScriptName );

Return Value

siShaderParameterType

Parameters

Parameter Type Description
ParameterScriptName String Script name of parameter

Examples

JScript Example

// Create a scene with an object lit by a spotlight
var root = Application.ActiveProject.ActiveScene.Root;
var grid = root.AddGeometry( "Grid", "MeshSurface" );
scale( grid, 2, 2, 2, siAbsolute );
var cone = root.AddGeometry( "Cone", "MeshSurface" );
translate(cone, 0, 1.3, 0 );
var light = root.AddLight( "LightSpot", true, "SpotLight" );
ApplyCns( "Position", light.interest, cone );
ApplyCns( "Orientation", light.interest, cone );
translate( light, 4, 6, 4);
// List the names and input types of all parameters that support shader connections
var eParams = new Enumerator(light.parameters);
for ( ; !eParams.atEnd(); eParams.moveNext() )
{
        var param = eParams.item();
        if (param.capabilities & siTexturable)
        {
                var inputtype = light.GetShaderInputType(param.scriptname);
                // This parameter supports a shader connection
                logmessage( param.fullname + " has shader inputtype = " + ShaderParameterTypeAsText(type) );
        }               
}
function ShaderParameterTypeAsText(type)
{
        switch (type)
        {
                case siUnknownParameterType : return "siUnknownParameterType";                  
                case siBooleanParameterType : return "siBooleanParameterType";                  
                case siColorParameterType : return "siColorParameterType";                      
                case siDataParameterType : return "siDataParameterType";                        
                case siIntegerParameterType : return "siIntegerParameterType";                  
                case siLensParameterType : return "siLensParameterType";                        
                case siLightParameterType : return "siLightParameterType";                      
                case siMaterialParameterType : return "siMaterialParameterType";                        
                case siMatrixParameterType : return "siMatrixParameterType";                    
                case siModelParameterType : return "siModelParameterType";                      
                case siRealTimeParameterType : return "siRealTimeParameterType";                        
                case siReferenceParameterType : return "siReferenceParameterType";                      
                case siScalarParameterType : return "siScalarParameterType";                    
                case siShaderParameterType : return "siShaderParameterType";                    
                case siStringParameterType : return "siStringParameterType";                    
                case siStructParameterType : return "siStructParameterType";                    
                case siTextureParameterType : return "siTextureParameterType";                  
                case siTextureSpaceParameterType : return "siTextureSpaceParameterType";                        
                case siVectorParameterType : return "siVectorParameterType";                    
                default: return inputtype;
        }
}
//INFO : SpotLight.light.LightShader has shader inputtype = siColorParameterType
//INFO : SpotLight.light.PhotonShader has shader inputtype = siColorParameterType
//

See Also

Shader.OutputType Parameter.ScriptName