Viewport 2.0 支持的着色器语义

 
 
 

可识别以下语义,并支持将其用于 Viewport 2.0 中的着色器。可使用这些语义创作完整效果,然后使用 MShaderManager 类作为 MShaderInstance 对象来访问。还可将其应用于使用 MFragmentManager 注册的碎片的参数。

注意dx11Shader.mll 插件是 MPxShaderOverride。因此,它必须解析效果才能确定并手动绑定语义。相比之下,碎片系统和 MShaderInstance 都可自动执行所有这些操作;但是,它们也都更具限制性。
语义 用法 类型
World 世界变换 矩阵 项目
WorldTranspose 世界变换,已转置 矩阵 项目
WorldInverse 世界变换,已反转 矩阵 项目
WorldInverseTranspose 世界变换,已反转并已转置 矩阵 项目
       
View 视图变换 矩阵
ViewTranspose 视图变换,已转置 矩阵
ViewInverse 视图变换,已反转 矩阵
ViewInverseTranspose 视图变换,已反转并已转置 矩阵
       
Projection 投影变换 矩阵
ProjectionTranspose 投影变换,已转置 矩阵
ProjectionInverse 投影变换,已反转 矩阵
ProjectionInverseTranspose 投影变换,已反转并已转置 矩阵
       
WorldView 世界视图变换 矩阵 项目
WorldViewTranspose 世界视图变换,已转置 矩阵 项目
WorldViewInverse 世界视图变换,已反转 矩阵 项目
WorldViewInverseTranspose 世界视图变换,已反转并已转置 矩阵 项目
       
ViewProjection 视图投影变换 矩阵
ViewProjectionTranspose 视图投影变换,已转置 矩阵
ViewProjectionInverse 视图投影变换,已反转 矩阵
ViewProjectionInverseTranspose 视图投影变换,已反转并已转置 矩阵
       
WorldViewProjection 世界视图投影变换 矩阵 项目
WorldViewProjectionTranspose 世界视图投影变换,已转置 矩阵 项目
WorldViewProjectionInverse 世界视图投影变换,已反转 矩阵 项目
WorldViewProjectionInverseTranspose 世界视图投影变换,已反转并已转置 矩阵 项目
       
ViewDirection 视图(摄影机)的世界空间方向 Float3
ViewPosition 视图(摄影机)的世界空间位置 Float3
LocalViewer 是要使用局部视图方向还是要使用非局部视图方向 布尔
       
ViewportPixelSize 当前视口的尺寸(以像素为单位),即宽度和高度 Float2
       
ClippingPlanes 活动剪裁平面的系数,每平面一个 float4 Float4 数组 剪裁
ClippingPlaneCount 活动剪裁平面的数量 整数 剪裁
       
AlphaTestFunction Alpha 测试比较函数

1 = 从不

2 = 小于

3 = 等于

4 = 小于或等于

5 = 大于

6 = 不等于

7 = 大于或等于

8 = 始终

整数 Alpha 测试
AlphaTestReference Alpha 测试引用值,范围为 (0.0, 1.0) 浮点 Alpha 测试
       
RelativeViewportDimensions 指定相对视口尺寸 Float2