若要使硬件渲染在 Viewport 2.0 中产生效果,可以将以下语义在 MShaderInstance API 类中使用。
注意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 测试 |
|
|
|
|