系统自带的语义

系统值语义

语义是DX与hlsl沟通的桥梁,而这座桥不仅有我们自己定义的语义,而且还有系统自带的语义,这些系统值语义都是为系统的值定义的语义 - -。所有的系统值语义都以SV_为前缀

 

系统值语义 描述 类型
SV_ClipDistance [N] 剪辑的距离数据。每个SV_ClipDistance值被假设为是一个FLOAT32签署的平面的距离。原始安装程序只调用光栅化的像素插值的平面距离(S)> = 0。可以同时执行多个剪辑平面,,声明多个组件(s)中的一个或多个顶点作为SV_ClipDistance元素。合并后的剪辑和宰杀距离值是在D3D#_CLIP_OR_CULL_DISTANCE_COUNT组件在最D3D#_CLIP_OR_CULL_DISTANCE_ELEMENT_COUNT寄存器。

可写的顶点和几何着色器。

clipplanes属性作品,如SV_ClipDistance上的所有硬件功能水平 9_x和更高的工作欲了解更多信息,请参阅用户剪辑平面功能9级硬件

浮动
SV_CullDistance [N] 卡尔距离数据。当组分(s)的顶点元素()给出了这样的标签,这些值是每个假定是FLOAT32的符号距离的平面。原语将被完全丢弃,如果在原始的所有的顶点的平面的距离(s)为<0。可以同时使用多个扑杀平面,,声明多个组件(s)中的一个或多个顶点作为SV_CullDistance元素。合并后的剪辑和宰杀距离值是在D3D#_CLIP_OR_CULL_DISTANCE_COUNT组件在最D3D#_CLIP_OR_CULL_DISTANCE_ELEMENT_COUNT寄存器。

可写在顶点和几何着色器。

浮动
SV_Coverage 输出覆盖面面具 BOOL
SV_Depth 深度缓冲区中的数据。从像素着色器写入。 浮动
SV_DispatchThreadID 定义的全局线程调度呼叫,每个维度的组内的偏移量。可作为计算着色器的输入。(只读) 为uint3
SV_DomainLocation 定义的船体正在评估当前域的点的位置上。域着色器的输入。(只读) FLOAT2 | 3
SV_GroupID 定义组偏移内调度呼叫,调度呼叫每一个维度。可作为计算着色器的输入。(只读) 为uint3
SV_GroupIndex 一组给定给定线程内提供了一个扁平的指数。可作为计算着色器的输入。(只读) UINT
SV_GroupThreadID 定义的线程组,每个组的尺寸内的偏移量。可作为计算着色器的输入。(只读) 为uint3
SV_GSInstanceID 定义几何着色器的实例。几何着色器的输入。(只读) UINT
SV_InsideTessFactor 定义一个补丁表面镶嵌量内。在船体着色器来写,并且可在域着色器阅读。 浮动持股量[2]
SV_IsFrontFace 对于线和点,Is​​FrontFace具有真正的价值。唯一的例外是三角形(线框模式),当中载IsFrontFace实模式的三角形光栅化同样的方式绘制的线条。可作为输入到像素着色器。(只读) BOOL
SV_OutputControlPointID 定义控制点的索引ID的船体着色器的主入口点的调用操作。可输入的域着色器。(只读) UINT
SV_Position 当SV_Position声明为输入到像素着色器,它可以有两种插值的方式规定:linearNoPerspective或linearNoPerspectiveCentroid,后者会导致重心抓拍XYZW值时提供多重采样抗锯齿。当使用中的像素着色器,SV_Position描述的像素的位置。在顶点着色器,几何着色器的读/写。像素着色器可以使用它作为只读得到的像素中心有0.5偏移。 为float4
SV_RenderTargetArrayIndex 渲染目标数组的索引。应用几何着色器输出,并表示数组的某一部分,将被吸引到原始的像素着色器的渲染目标。SV_RenderTargetArrayIndex是唯一有效的,如果渲染目标是一个数组资源。这种语义仅适用于原语,如果一个原始的具有多个顶点的值将被用于从领先的顶点。

此值也表示哪个数组切片一个depthstencilview的用于读/写的目的。

可以写从几何着色器和像素着色器读取。
UINT
SV_SampleIndex 采样频率指标数据 UINT
SV_Target [n]的

 

其中,0 <=正<= 7
输出值将被存储在一个渲染目标。该指数表明,这可能是必然的8渲染目标写入。值是从像素着色器的输出。(只写) 浮动
SV_TessFactor 定义Tessellation(曲面细分)的每个边缘上的一个补丁。写在船体着色器和阅读中的域着色器。 浮动2 | 3 | 4]
SV_ViewportArrayIndex 视口的数组索引。应用几何着色器输出,并指出“视口以使用原始目前正在写出来。将被改造的原始和剪切之前,通过对视索引指定的光栅化。这种语义仅适用于原语,如果一个原始的具有多个顶点的值将被用于从领先的顶点。 UINT
SV_InstanceID 自动运行时所产生的每个实例的标识符(请参阅使用系统生成的值(Direct3D的10)  UINT
SV_PrimitiveID 每原始的标识符自动生成运行时(请参阅使用系统生成的值(Direct3D的10)  UINT
SV_VertexID 运行时自动生成的每个顶点的标识符(请参阅使用系统生成的值(Direct3D的10)  UINT

 

 

顶点着色器的语义

 

输入 描述 类型 产量 描述 类型
BINORMAL[N] 副法线 为float4
BLENDINDICES [N] 混合指数 UINT
BLENDWEIGHT [N] 混合权重 浮动
COLOR [N] 漫反射和镜面颜色 为float4
NORMAL[N] 法向量 为float4
POSITION[N] 在对象空间中的顶点位置。 为float4
POSITIONT 变换的顶点位置。 为float4
PSIZE [N] 点大小 浮动
TANGENT [N] 切线 为float4
TEXCOORD [N] 纹理坐标 为float4
COLOR [N] 弥漫性或高光颜色 为float4
FOG 顶点雾 浮动
POSITION[N] 齐性空间中的顶点的位置。除以由w(的x,y,z)的计算的位置在屏幕空间。每一个顶点着色器必须写出这种语义的一个参数。 为float4
PSIZE 点大小 浮动
TESSFACTOR [N] Tessellation(曲面细分)系数 浮动
TEXCOORD [N] 纹理坐标 为float4

 

 

像素着色的语义 :

 

输入 描述 类型 产量 描述 类型
COLOR [N] 弥漫性或高光颜色。 为float4
TEXCOORD [N] 纹理坐标 为float4
VFACE 浮点标量,表示后面的原始。负值面临倒退,,正值面对摄像机。 浮动
VPOS 在屏幕空间的x,y)的像素的位置(。要转换一个Direct3D 9的着色器(使用这种语义)的一个Direct3D 10着色器,看到的Direct3D 9 VPOS和Direct3D 10 SV_Position的的 FLOAT2
COLOR [N] 输出颜色 为float4
DEPTH[N] 输出深度 浮动

 

 

你可能感兴趣的:(系统)