📄 顶点声明.htm
字号:
<P class=MsoNormal><SPAN lang=EN-US
style="FONT-FAMILY: 宋体">D3DDECLTYPE_FLOAT3</SPAN><SPAN lang=EN-US
style="FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体"><o:p></o:p></SPAN></P></TD>
<TD
style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; WIDTH: 169.5pt; PADDING-TOP: 0.75pt"
width=226>
<P class=MsoNormal><SPAN lang=EN-US
style="FONT-FAMILY: 宋体">D3DDECLUSAGE_NORMAL</SPAN><SPAN lang=EN-US
style="FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体"><o:p></o:p></SPAN></P></TD>
<TD
style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; WIDTH: 31.85pt; PADDING-TOP: 0.75pt"
width=42>
<P class=MsoNormal><SPAN lang=EN-US style="FONT-FAMILY: 宋体">0</SPAN><SPAN
lang=EN-US
style="FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体"><o:p></o:p></SPAN></P></TD></TR>
<TR style="mso-yfti-irow: 11">
<TD
style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; WIDTH: 135pt; PADDING-TOP: 0.75pt"
width=180>
<P class=MsoNormal><SPAN lang=EN-US
style="FONT-FAMILY: 宋体">D3DFVF_PSIZE</SPAN><SPAN lang=EN-US
style="FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体"><o:p></o:p></SPAN></P></TD>
<TD
style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; WIDTH: 142.5pt; PADDING-TOP: 0.75pt"
width=190>
<P class=MsoNormal><SPAN lang=EN-US
style="FONT-FAMILY: 宋体">D3DDECLTYPE_FLOAT1</SPAN><SPAN lang=EN-US
style="FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体"><o:p></o:p></SPAN></P></TD>
<TD
style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; WIDTH: 169.5pt; PADDING-TOP: 0.75pt"
width=226>
<P class=MsoNormal><SPAN lang=EN-US
style="FONT-FAMILY: 宋体">D3DDECLUSAGE_PSIZE</SPAN><SPAN lang=EN-US
style="FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体"><o:p></o:p></SPAN></P></TD>
<TD
style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; WIDTH: 31.85pt; PADDING-TOP: 0.75pt"
width=42>
<P class=MsoNormal><SPAN lang=EN-US style="FONT-FAMILY: 宋体">0</SPAN><SPAN
lang=EN-US
style="FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体"><o:p></o:p></SPAN></P></TD></TR>
<TR style="mso-yfti-irow: 12">
<TD
style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; WIDTH: 135pt; PADDING-TOP: 0.75pt"
width=180>
<P class=MsoNormal><SPAN lang=EN-US
style="FONT-FAMILY: 宋体">D3DFVF_DIFFUSE</SPAN><SPAN lang=EN-US
style="FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体"><o:p></o:p></SPAN></P></TD>
<TD
style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; WIDTH: 142.5pt; PADDING-TOP: 0.75pt"
width=190>
<P class=MsoNormal><SPAN lang=EN-US
style="FONT-FAMILY: 宋体">D3DDECLTYPE_D3DCOLOR</SPAN><SPAN lang=EN-US
style="FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体"><o:p></o:p></SPAN></P></TD>
<TD
style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; WIDTH: 169.5pt; PADDING-TOP: 0.75pt"
width=226>
<P class=MsoNormal><SPAN lang=EN-US
style="FONT-FAMILY: 宋体">D3DDECLUSAGE_COLOR</SPAN><SPAN lang=EN-US
style="FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体"><o:p></o:p></SPAN></P></TD>
<TD
style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; WIDTH: 31.85pt; PADDING-TOP: 0.75pt"
width=42>
<P class=MsoNormal><SPAN lang=EN-US style="FONT-FAMILY: 宋体">0</SPAN><SPAN
lang=EN-US
style="FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体"><o:p></o:p></SPAN></P></TD></TR>
<TR style="mso-yfti-irow: 13">
<TD
style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; WIDTH: 135pt; PADDING-TOP: 0.75pt"
width=180>
<P class=MsoNormal><SPAN lang=EN-US
style="FONT-FAMILY: 宋体">D3DFVF_SPECULAR</SPAN><SPAN lang=EN-US
style="FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体"><o:p></o:p></SPAN></P></TD>
<TD
style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; WIDTH: 142.5pt; PADDING-TOP: 0.75pt"
width=190>
<P class=MsoNormal><SPAN lang=EN-US
style="FONT-FAMILY: 宋体">D3DDECLTYPE_D3DCOLOR</SPAN><SPAN lang=EN-US
style="FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体"><o:p></o:p></SPAN></P></TD>
<TD
style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; WIDTH: 169.5pt; PADDING-TOP: 0.75pt"
width=226>
<P class=MsoNormal><SPAN lang=EN-US
style="FONT-FAMILY: 宋体">D3DDECLUSAGE_COLOR</SPAN><SPAN lang=EN-US
style="FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体"><o:p></o:p></SPAN></P></TD>
<TD
style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; WIDTH: 31.85pt; PADDING-TOP: 0.75pt"
width=42>
<P class=MsoNormal><SPAN lang=EN-US style="FONT-FAMILY: 宋体">1</SPAN><SPAN
lang=EN-US
style="FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体"><o:p></o:p></SPAN></P></TD></TR>
<TR style="mso-yfti-irow: 14; mso-yfti-lastrow: yes">
<TD
style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; WIDTH: 135pt; PADDING-TOP: 0.75pt"
width=180>
<P class=MsoNormal><SPAN lang=EN-US
style="FONT-FAMILY: 宋体">D3DFVF_TEXCOORDSIZEm(n)</SPAN><SPAN lang=EN-US
style="FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体"><o:p></o:p></SPAN></P></TD>
<TD
style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; WIDTH: 142.5pt; PADDING-TOP: 0.75pt"
width=190>
<P class=MsoNormal><SPAN lang=EN-US
style="FONT-FAMILY: 宋体">D3DDECLTYPE_FLOATm</SPAN><SPAN lang=EN-US
style="FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体"><o:p></o:p></SPAN></P></TD>
<TD
style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; WIDTH: 169.5pt; PADDING-TOP: 0.75pt"
width=226>
<P class=MsoNormal><SPAN lang=EN-US
style="FONT-FAMILY: 宋体">D3DDECLUSAGE_TEXCOORD</SPAN><SPAN lang=EN-US
style="FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体"><o:p></o:p></SPAN></P></TD>
<TD
style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; WIDTH: 31.85pt; PADDING-TOP: 0.75pt"
width=42>
<P class=MsoNormal><SPAN lang=EN-US style="FONT-FAMILY: 宋体">n</SPAN><SPAN
lang=EN-US
style="FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体"><o:p></o:p></SPAN></P></TD></TR></TBODY></TABLE>
<H3><A name=Vertex_declarations_with_D3DDECLUSAGE_PO></A><SPAN
style="FONT-FAMILY: 宋体; mso-fareast-language: ZH-CN; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">使用了</SPAN><SPAN
lang=EN-US>D3DDECLUSAGE_POSITIONT</SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-fareast-language: ZH-CN; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的顶点声明</SPAN><SPAN
lang=EN-US style="mso-fareast-language: ZH-CN"><o:p></o:p></SPAN></H3>
<P><SPAN lang=EN-US><SPAN
style="mso-spacerun: yes"> </SPAN>(D3DUSAGE_POSITIONT,
0)顶点元素的存在用来告诉设备输入的顶点数据已经经过了顶点处理(和FVF中设置了D3DFVF_XYZRHW位相似)。在绘制时,如果当前设置的顶点声明中的某一元素具有(D3DUSAGE_POSITIONT,
0)语义,那么整个顶点处理会被略过(就和FVF中设置了D3DFVF_XYZRHW位相似)。</SPAN></P>
<P>使用<SPAN lang=EN-US>(D3DDECLUSAGE_POSITIONT, 0)的顶点声明有一些限制:</SPAN></P>
<UL type=disc>
<LI class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l17 level1 lfo9; tab-stops: list 36.0pt"><SPAN
style="FONT-FAMILY: 宋体; mso-fareast-language: ZH-CN; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">此类声明中只能使用数据流零。</SPAN><SPAN
lang=EN-US style="mso-fareast-language: ZH-CN"><o:p></o:p></SPAN>
<LI class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l17 level1 lfo9; tab-stops: list 36.0pt"><SPAN
style="FONT-FAMILY: 宋体; mso-fareast-language: ZH-CN; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">顶点元素必须以偏移量递增的方式存储。</SPAN><SPAN
lang=EN-US style="mso-fareast-language: ZH-CN"><o:p></o:p></SPAN>
<LI class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l17 level1 lfo9; tab-stops: list 36.0pt"><SPAN
style="FONT-FAMILY: 宋体; mso-fareast-language: ZH-CN; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">数据流中的偏移量必须对齐到</SPAN><SPAN
lang=EN-US style="mso-fareast-language: ZH-CN">DWORD</SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-fareast-language: ZH-CN; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">。</SPAN><SPAN
lang=EN-US style="mso-fareast-language: ZH-CN"><o:p></o:p></SPAN>
<LI class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l17 level1 lfo9; tab-stops: list 36.0pt"><SPAN
style="FONT-FAMILY: 宋体; mso-fareast-language: ZH-CN; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">一对相同的(用途,用途索引)只能出现一次。</SPAN><SPAN
lang=EN-US style="mso-fareast-language: ZH-CN"><o:p></o:p></SPAN>
<LI class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l17 level1 lfo9; tab-stops: list 36.0pt"><SPAN
style="FONT-FAMILY: 宋体; mso-fareast-language: ZH-CN">只能使用<SPAN
lang=EN-US>D3DDECLMETHOD_DEFAULT方法。</SPAN></SPAN><SPAN lang=EN-US
style="FONT-FAMILY: 宋体"><o:p></o:p></SPAN>
<LI class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l17 level1 lfo9; tab-stops: list 36.0pt"><SPAN
style="FONT-FAMILY: 宋体; mso-fareast-language: ZH-CN">其余顶点元素不能具有(<SPAN
lang=EN-US>D3DDECLUSAGE_POSITION, 0)语义。<o:p></o:p></SPAN></SPAN> </LI></UL>
<P>此外,此类声明还有一些与驱动程序版本有关的限制。这些限制的存在是因为<SPAN
lang=EN-US>Direct3D直接把此类声明传送给驱动程序而没有做任何转换。</SPAN></P>
<H3><A name=Pre_DX9_drivers></A><SPAN lang=EN-US>DirectX 9.0</SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-fareast-language: ZH-CN; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">之前的驱动程序</SPAN></H3>
<UL type=disc>
<LI class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l21 level1 lfo12; tab-stops: list 36.0pt"><SPAN
style="FONT-FAMILY: 宋体; mso-fareast-language: ZH-CN; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">输入的声明必须可以被翻译成一个有效的</SPAN><SPAN
lang=EN-US style="mso-fareast-language: ZH-CN">FVF</SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-fareast-language: ZH-CN; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">(顶点元素及其数据类型具有相同的顺序)。</SPAN><SPAN
lang=EN-US style="mso-fareast-language: ZH-CN"><o:p></o:p></SPAN>
<LI class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l21 level1 lfo12; tab-stops: list 36.0pt"><SPAN
style="FONT-FAMILY: 宋体; mso-fareast-language: ZH-CN">纹理坐标间不允许有间隔。这意味着如果有一个</SPAN><SPAN
lang=EN-US style="FONT-FAMILY: 宋体">(D3DDECLUSAGE_TEXCOORD, n)</SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-fareast-language: ZH-CN">顶点元素,那么同时也应该有一个</SPAN><SPAN
lang=EN-US style="FONT-FAMILY: 宋体">(D3DDECLUSAGE_TEXCOORD, n-1)</SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-fareast-language: ZH-CN">顶点元素。<SPAN
lang=EN-US><o:p></o:p></SPAN></SPAN> </LI></UL>
<H3><A name=DX9_drivers_without_pixel_shader_version></A><SPAN
style="FONT-FAMILY: 宋体; mso-fareast-language: ZH-CN; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">不支持</SPAN><SPAN
lang=EN-US style="mso-fareast-language: ZH-CN">3.0</SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-fareast-language: ZH-CN; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">版本像素着色器的</SPAN><SPAN
lang=EN-US style="mso-fareast-language: ZH-CN">DirectX 9.0</SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-fareast-language: ZH-CN; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">驱动程序</SPAN><SPAN
lang=EN-US style="mso-fareast-language: ZH-CN"><o:p></o:p></SPAN></H3>
<UL type=disc>
<LI class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l11 level1 lfo15; tab-stops: list 36.0pt"><SPAN
style="FONT-FAMILY: 宋体; mso-fareast-language: ZH-CN; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">输入的声明必须可以被翻译成一个有效的</SPAN><SPAN
lang=EN-US style="mso-fareast-language: ZH-CN">FVF</SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-fareast-language: ZH-CN; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">(顶点元素及其数据类型具有相同的顺序)。</SPAN><SPAN
lang=EN-US style="mso-fareast-language: ZH-CN"><o:p></o:p></SPAN>
<LI class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l11 level1 lfo15; tab-stops: list 36.0pt"><SPAN
style="FONT-FAMILY: 宋体; mso-fareast-language: ZH-CN">纹理坐标间不允许有间隔。</SPAN><SPAN
lang=EN-US style="mso-fareast-language: ZH-CN"><o:p></o:p></SPAN> </LI></UL>
<H3><A name=DX9_drivers_with_pixel_shader_version_3_></A><SPAN
style="FONT-FAMILY: 宋体; mso-fareast-language: ZH-CN; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">支持</SPAN><SPAN
lang=EN-US style="mso-fareast-language: ZH-CN">3.0</SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-fareast-language: ZH-CN; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">版本像素着色器的</SPAN><SPAN
lang=EN-US style="mso-fareast-language: ZH-CN">DirectX 9.0</SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-fareast-language: ZH-CN; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">驱动程序</SPAN><SPAN
lang=EN-US style="mso-fareast-language: ZH-CN"><o:p></o:p></SPAN></H3>
<P>允许更通用的声明。</P>
<UL type=disc>
<LI class=MsoNormal
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l0 level1 lfo18; tab-stops: list 36.0pt"><SPAN
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -