Standard Annotations and Semantics
Softimage’s DXFx2, DX10FX, and CgFX shaders support a subset of SAS 0.8 and SAS 1.0 for scene data binding. You must declare your variables with the appropriate semantics.
CG example
float4x4 simodelviewproj : WORLDVIEWPROJECTION; float4 lightpos0 : Sas.PointLights[0].Position;
HLSL example
float4x4 simodelviewproj : WORLDVIEWPROJECTION; float4 lightpos0 < string SasBindAddress = "Sas.PointLights[0].Position"; >;
The tables below list the supported semantics, including the Softimage semantics.
Model Transformation (float 4x4)
|
Normal |
Inverse |
Transpose |
Inverse & Transpose |
|
WORLD |
WORLDI WORLDINVERSE |
WORLDT WORLDTRANSPOSE |
WORLDIT WORLDINVERSETRANSPOSE |
|
MODEL |
MODELI MODELINVERSE |
MODELT MODELTRANSPOSE |
MODELIT MODELINVERSETRANSPOSE |
|
SIMODEL |
SIMODELI |
SIMODELT |
SIMODELIT |
View Transformation (float 4x4)
|
Normal |
Inverse |
Transpose |
Inverse & Transpose |
|
VIEW |
VIEWI VIEWINVERSE |
VIEWT VIEWTRANSPOSE |
VIEWIT VIEWINVERSETRANSPOSE |
|
SIVIEW |
SIVIEWI |
SIVIEWT |
SIVIEWIT |
Projection Transformation (float 4x4)
|
Normal |
Inverse |
Transpose |
Inverse & Transpose |
|
PROJECTION |
PROJECTIONI PROJECTIONINVERSE |
PROJECTIONT PROJECTIONTRANSPOSE |
PROJECTIONIT PROJECTIONINVERSETRANSPOSE |
|
SIPROJ |
SIPROJI |
SIPROJT |
SIPROJIT |
Model X View (float 4x4)
|
Normal |
Inverse |
Transpose |
Inverse & Transpose |
|
WORLDVIEW |
WORLDVIEWI WORLDVIEWINVERSE |
WORLDVIEWT WORLDVIEWTRANSPOSE |
WORLDVIEWIT WORLDVIEWINVERSETRANSPOSE |
|
MODELVIEW |
MODELVIEWI MODELVIEWINVERSE |
MODELVIEWT MODELVIEWTRANSPOSE |
MODELVIEWIT MODELVIEWINVERSETRANSPOSE |
|
SIMODELVIEW |
SIMODELVIEWI |
SIMODELVIEWT |
SIMODELVIEWIT |
Model X View X Projection (float 4x4)
|
Normal |
Inverse |
Transpose |
Inverse & Transpose |
|
WORLDVIEWPROJECTION |
WORLDVIEWPROJECTIONI WORLDVIEWPROJECTIONINVERSE |
WORLDVIEWPROJECTIONT WORLDVIEWPROJECTIONTRANSPOSE |
WORLDVIEWPROJECTIONIT WORLDVIEWPROJECTIONINVERSETRANSPOSE |
|
MODELVIEWPROJECTION |
MODELVIEWPROJECTIONI MODELVIEWPROJECTIONINVERSE |
MODELVIEWPROJECTIONT MODELVIEWPROJECTIONTRANSPOSE |
MODELVIEWPROJECTIONIT MODELVIEWPROJECTIONINVERSETRANSPOSE |
|
SIMODELVIEWPROJ |
SIMODELVIEWPROJI |
SIMODELVIEWPROJT |
SIMODELVIEWPROJIT |
Camera
|
Semantic |
Description |
Type |
|
SAS.CAMERA |
The camera currently being rendered. |
sas.camera |
|
CAMERAPOSITION SISEYEPOS SAS.CAMERA.POSITION |
Position of the camera. |
float 3 |
|
SAS.CAMERA.PROJECTION |
Projection matrix of the camera. |
float 4x4 |
|
SAS.CAMERA.WORLDTOVIEW |
Modelview matrix of the camera. |
float 4x4 |
|
SAS.CAMERA.NEARFARCLIPPING |
Near and far clipping plane of the camera. X = near plane y = far plane |
float 2 |
Time
|
Semantic |
Description |
Type |
|
SAS.TIME.NOW |
Current time in seconds. |
float |
|
SAS.TIME.LAST |
Time of the last frame in seconds. |
float |
|
SAS.TIME.FRAMENUMBER |
Current frame index. |
float |
Light Information
|
Semantic |
Description |
Type |
|
SAS.NUMAMBIENTLIGHTS SAS.NUMDIRECTIONALLIGHTS SAS.NUMPOINTLIGHTS SAS.NUMSPOTLIGHTS |
Number of lights. |
INT |
|
SAS.AMBIENTLIGHT[N].COLOR SAS.DIRECTIONALLIGHT[N].COLOR SAS.POINTLIGHT[N].COLOR SAS.SPOTLIGHT[N].COLOR |
Light color. |
float 3 |
|
SAS.DIRECTIONALLIGHT[N].DIRECTION SAS.SPOTLIGHT[N].DIRECTION |
Light direction (directional and spot lights). |
float 3 |
|
SAS.POINTLIGHT[N].POSITION SAS.SPOTLIGHT[N].POSITION |
Light position (point and spot lights). |
float 3 |
|
SAS.POINTLIGHT[N].RANGE SAS.SPOTLIGHT[N].RANGE |
The distance from the light where the light rays have no effect on the scene (point and spot lights). |
float |
|
SAS.SPOTLIGHT[N].PHI SAS.SPOTLIGHT[N].THETA |
Spot light cone angle. Theta is the inner cone angle of a spotlight, measured in radians. Phi is the outer cone angle of a spotlight, measured in radians. |
float |
Autodesk Softimage v.7.5