## SIGetShaderOnCnxPoint

### Introduced

v1.0

### Description

Connects the shader to the specified connection point.

### Scripting Syntax

    oReturn = SIGetShaderOnCnxPoint( InputObj );

### Return Value

Returns the Shader object.

### Parameters

Parameter | Type | Description
--- | --- | ---
InputObj | String | Shader connection point.

### Examples

#### 1. VBScript Example

    ' create objects for example.

    NewScene , false

    CreatePrim "Cube", "MeshSurface"

    ApplyShader

    ' Connect clear glass shader to material's surface

    SIApplyShaderToCnxPoint InstallationPath(siFactoryPath) & "\Data\DSPresets\Shaders\Material\soft3d\Fire.Preset", "cube.Material.surface"

    set shader = SIGetShaderOnCnxPoint(  "cube.Material.surface" )

    logmessage "shader connected to cube.Material.surface: " & shader

    'INFO : "shader connected to cube.Material.surface: cube.Material.Fire"

#### 2. VBScript Example

    '

    ' This example creates a sphere, applies a lambert shader to it, prints out

    ' the list of connection points to that shader, connects the toon shader

    ' to the surface and shadow connection points and then prints the updated list.

    '

    ' Create the sphere to which the shader will be connected

    set oSphere = CreatePrim( "Sphere", "NurbsSurface" )

    ' Apply a lambert shader to instantiate the material

    SIApplyShader InstallationPath( siFactoryPath ) _

    				& "\Data\DSPresets\Shaders\Material\Lambert.Preset", _

    				oSphere, "Christopher"

    ' Log the name of the default shader connected to the material Surface

    ' connection point

    set oShader = SIGetShaderOnCnxPoint(  "sphere.material.Surface" )

    ' Print lambert shader info

    printShaderInfo oShader

    ' This is a convenience routine that prints information about the shader

    sub printShaderInfo( in_shader )

    	' From the shader object you can get the material it belongs to

    	set oMaterial = in_shader.Owners(0)

    	' Use the material to return the parameters that are connected and

    	' print out their names

    	for each p in oMaterial.Parameters

    		if TypeName( p.Source ) <> "Nothing" then

    			LogMessage p.ScriptName & " is connected to " & p.Source.Name

    		end if

    	next

    end sub

    ' Output of the above script:

    'INFO : "surface is connected to Christopher"

    'INFO : "shadow is connected to Christopher"

    'INFO : "Photon is connected to Christopher"

### See Also

SIApplyShaderToCnxPoint RemoveShaderFromCnxPoint RemoveAllShadersFromCnxPoint SIConnectShaderToCnxPoint