The following are the currently supported set of shader effect file annotations by the HLSL parser. Note that case is ignored
in both the names and string values, so "IntSpinner" is treated the same as "INTSPINNER" or "intspinner".
- string UIName - Defines the name displayed in the UI. A UI element is not created if this is not present
- string UIType - Defines the UI element to use. Supported UITypes are "IntSpinner", "FloatSpinner", "Bitmap", and "ColorSwatch".
This annotation is the parser will do its best based in the parameter type.
- float (or int) UIMin - Defines the minimum value for a spinner UI element.
- float (or int) UIMax - Defines the maximum value for a spinner UI element.
- float (or int) UIStep - Defines the increment value for a spinner UI element
- string UIObject (or Object) - Defines the type of 3ds Max object to be used to provide data for the parameter. Currently
"TargetLight" and "OmniLight" are supported options. This allows a tighter bond between the workspace and the shader.
- string Name (or File) - Specifically defines a bitmap file. If the file can’t be found then it simply is presented
as “noneâ€.
- int RefID - This is used for lights and defines a unique number that is used for lookups by other parameters that use light
parameters. This would typically be used with the LIGHTCOLOR semantics.
- int LightRef (or ParentRef) - This defines the parent light, from which any relevant data is accessed. If positional and
directional light data are needed, the developer can define one element with a UI (parent) and the other can simply reference
the parent - no UI is needed. This reduces UI of clutter from multiple light definitions.
- string Type - This is used in conjunction with a texture. You can specify either "Cube", "Volume" or "RenderTarget". If nothing
is specified it is assumed to be a standard 2d texture. The "RenderTarget" option allows for support of multiple passes where
the output of one pass is used as an input to another pass.
- string TargetTechnique (or Source) - This defines the technique used for the rendering of the "RenderTarget" type. If you
define a technique with “_†as the first character of the name, it will not be displayed to the user as a selectable
technique in the material rollout.
- string Format - This defines the pixel format of the texture to create. It is used primarily for the "RenderTarget" type
and currently defaults to "A32B32G32R32F". Acceptable formats are listed in the topic Supported Texture Formats. Ignored for disk-based textures.
- int TexCoord - Used to define the texture coordinates channel to use. This can be used with textures and with the TEXCOORD
semantic.
- int MapChannel - Used to define the mapping channel to fill out the data for the defined TexCoord(n) channel. This can be
used with textures and also with the TEXCOORD semantic.
- bool ColorChannel - If set to true the system will not swap the UV coordinates around. This means that if the channel is
a color channel the colors will remain intact and not flipped in order to support the correct UV lookup for the texture. DirectX
10 only.