I read the other page in the documents covering the details.

Matt



From: [email protected] 
[mailto:[email protected]] On Behalf Of Steven Caron
Sent: Thursday, February 07, 2013 3:28 PM
To: [email protected]
Subject: Re: ShaderDefs and related

how did you find this?

On Thu, Feb 7, 2013 at 3:14 PM, Matt Lind 
<[email protected]<mailto:[email protected]>> wrote:
Nevermind.  Found information.


                // layer 0
                oOptions = oXSIFactory.CreateShaderParamDefOptions();
                oOptions.SetLongName( "layer_0" );
                oOptions.SetAnimatable(  false );
                oOptions.SetTexturable(  true );
                oOptions.SetInspectable( true );
                oOptions.SetAttribute( XSI::siReferenceFilterAttribute, 
XSI::siShaderReferenceFilter );

                oInputParameterDefs.AddParamDef( "layer_0", 
XSI::siShaderDataTypeReference, oOptions );





From: 
[email protected]<mailto:[email protected]>
 
[mailto:[email protected]<mailto:[email protected]>]
 On Behalf Of Matt Lind
Sent: Thursday, February 07, 2013 2:51 PM
To: [email protected]<mailto:[email protected]>
Subject: SDK: ShaderDefs and related

I have several shaders with parameters defined using .spdl files.  I am trying 
to update them to use Shader Definitions, but a few of the parameter types are 
not documented in the manuals which leaves me scratching my head a bit.

>From the .spdl:

                Parameter "layer 0" input
                {
                                GUID = "{3C30FA8E-06A5-4ED1-93D3-DA165801B60C}";
                                type = rtrendercontext;
                                texturable = on;
                                animatable = off;
                }


It's an input parameter for a realtime shader which only accepts other realtime 
shaders.  The problem is the SDK manuals do not specify the equivalent of 
'rtrendercontext' parameter types using shader definitions.  Here is my best 
guess how to define such a parameter:

                // layer 0
                oOptions = oXSIFactory.CreateShaderParamDefOptions();
                oOptions.SetLongName( "layer_0" );
                oOptions.SetAnimatable(  false );
                oOptions.SetTexturable(  true );
                oOptions.SetInspectable( true );

                oInputParameterDefs.AddParamDef( "layer_0", 
XSI::siShaderDataTypeStructure, oOptions );


Anybody have ideas?



Matt

Reply via email to