## Light Shader Presets

List of available Light Shader presets. Light shaders implement the characteristics of a light source. For example, a spotlight shader uses the illumination direction to attenuate the amount of light emitted. A light shader is used whenever a surface shader uses a built-in function to evaluate a light. If shadows are used, light shaders normally cast shadow rays to detect obscuring objects between the light source and the illuminated point.
For more information, see the user guide

Note | See Shader Presets for a list of different shader preset types. Also see Alphabetical Listing of All Shader Presets for a complete list of available shaders.

Preset | Shaders
--- | ---
Light\Fast_light_effects.Preset | Bionic_Light mental ray Shader. See the Softimage.Bionic_Light_lit.1.0 shader definition reference page. For an example of how to use this preset, see the ConnectLightShader Example
Light\Slide_projector.Preset | Slide Projector mental ray Shader. See the Softimage.sib_slide_proj_light.1.0 shader definition reference page. For an example of how to use this preset, see the ConnectLightShader Example
Light\Soft_Light.Preset | Soft Light See the Softimage.soft_light.1.0 shader definition reference page. For an example of how to use this preset, see the ConnectLightShader Example
Light\mental images\mia_Physical_Sun.Preset | mia Physical Sun mental ray Shader. See the Softimage.mia_physicalsun.1.0 shader definition reference page. For an example of how to use this preset, see the ConnectLightShader Example
Light\mental images\mia_Portal_Light.Preset | mia Portal Light mental ray Shader. See the Softimage.mia_portal_light.1.0 shader definition reference page. For an example of how to use this preset, see the ConnectLightShader Example

### ConnectLightShader Example

    function ConnectLightShader( in_preset )
    {
            NewScene( null, false );
            var obj = Application.ActiveSceneRoot.AddLight("Infinite", true, "TestLight");
            Application.Selection.SetAsText(obj);
            var oShader = CreateShaderFromPreset(in_preset, "TestLight.light");
            SIConnectShaderToCnxPoint(oShader.FullName+".out", "TestLight.light.LightShader", false);
            if (!oShader) { return null; }
            return (oShader.Type == "XSICollection") ? oShader(0) : oShader;
    }

### ConnectLightShader2 Example

    function ConnectLightShader2( in_preset )
    {
            NewScene( null, false );
            var obj = Application.ActiveSceneRoot.AddLight( "Point", true, "MyTestNode" );
            obj.AddMaterial( in_preset, true, "MyTestNode" );
            var oShader = Dictionary.GetObject("MyTestNode.light.MyTestNode");
            return oShader;
    }