⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 可编程数据流模型 (programmable stream model).htm

📁 此文件是微软MSDN中d3d部分资料的翻译文件
💻 HTM
📖 第 1 页 / 共 5 页
字号:
style="mso-tab-count: 1">&nbsp;&nbsp; </SPAN><SPAN class=GramE>{ 0</SPAN>, 12, 
D3DDECLTYPE_D3DCOLOR, D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_COLOR,<SPAN 
style="mso-spacerun: yes">&nbsp; </SPAN>0 },<o:p></o:p></SPAN></P>
<P class=MsoNormal style="TEXT-ALIGN: left; mso-pagination: widow-orphan" 
align=left><SPAN lang=EN-US 
style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt"><SPAN 
style="mso-tab-count: 1">&nbsp;&nbsp; </SPAN><SPAN class=GramE>{ 0</SPAN>, 28, 
D3DDECLTYPE_D3DCOLOR, D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_COLOR,<SPAN 
style="mso-spacerun: yes">&nbsp; </SPAN>1 },<o:p></o:p></SPAN></P>
<P class=MsoNormal style="TEXT-ALIGN: left; mso-pagination: widow-orphan" 
align=left><SPAN style="mso-tab-count: 1">&nbsp; </SPAN><SPAN class=GramE><SPAN 
lang=EN-US 
style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt">{ 
1</SPAN></SPAN><SPAN lang=EN-US 
style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt">, 
0, D3DDECLTYPE_FLOAT2,<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; 
</SPAN>D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_TEXCOORD, 0 },<o:p></o:p></SPAN></P>
<P class=MsoNormal style="TEXT-ALIGN: left; mso-pagination: widow-orphan" 
align=left><SPAN style="mso-tab-count: 1">&nbsp; </SPAN><SPAN class=GramE><SPAN 
lang=EN-US 
style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt">{ 
2</SPAN></SPAN><SPAN lang=EN-US 
style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt">, 
0, D3DDECLTYPE_FLOAT2,<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; 
</SPAN>D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_TEXCOORD, 0 },<o:p></o:p></SPAN></P>
<P class=MsoNormal style="TEXT-ALIGN: left; mso-pagination: widow-orphan" 
align=left><SPAN style="mso-tab-count: 1">&nbsp;&nbsp; </SPAN><SPAN lang=EN-US 
style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt">D3DDECL_<SPAN 
class=GramE>END()</SPAN><o:p></o:p></SPAN></P>
<P class=MsoNormal style="TEXT-ALIGN: left; mso-pagination: widow-orphan" 
align=left><SPAN lang=EN-US 
style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt">};<o:p></o:p></SPAN></P>
<P class=MsoNormal style="TEXT-ALIGN: left; mso-pagination: widow-orphan" 
align=left><SPAN lang=EN-US 
style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt"><o:p></o:p></SPAN></P>
<P class=MsoNormal style="TEXT-ALIGN: left; mso-pagination: widow-orphan" 
align=left><SPAN lang=EN-US 
style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt">m_pd3dDevice-&gt;<SPAN 
class=SpellE><SPAN class=GramE>SetStreamSource</SPAN></SPAN><SPAN 
class=GramE>(</SPAN> 0, <SPAN class=SpellE>m_pVBPosColor</SPAN>, 0, <SPAN 
class=SpellE>sizeof</SPAN>(POSCOLORVERTEX) );<o:p></o:p></SPAN></P>
<P class=MsoNormal style="TEXT-ALIGN: left; mso-pagination: widow-orphan" 
align=left><SPAN lang=EN-US 
style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt">m_pd3dDevice-&gt;<SPAN 
class=SpellE><SPAN class=GramE>SetStreamSource</SPAN></SPAN><SPAN 
class=GramE>(</SPAN> 1, m_pVBTexC0, 0, <SPAN 
class=SpellE>sizeof</SPAN>(TEXC0VERTEX) );<o:p></o:p></SPAN></P>
<P class=MsoNormal style="TEXT-ALIGN: left; mso-pagination: widow-orphan" 
align=left><SPAN lang=EN-US 
style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt">m_pd3dDevice-&gt;<SPAN 
class=SpellE><SPAN class=GramE>SetStreamSource</SPAN></SPAN><SPAN 
class=GramE>(</SPAN> 2, m_pVBTexC1, 0, <SPAN 
class=SpellE>sizeof</SPAN>(TEXC1VERTEX) );<o:p></o:p></SPAN></P>
<P class=MsoNormal 
style="TEXT-ALIGN: left; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-pagination: widow-orphan" 
align=left><SPAN 
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt">以上所有三种情况,都可以调用以下<U><SPAN 
lang=EN-US>IDirect3DDevice9::DrawPrimitive</SPAN></U>。<SPAN 
lang=EN-US><o:p></o:p></SPAN></SPAN></P>
<P class=MsoNormal 
style="TEXT-ALIGN: left; mso-pagination: widow-orphan; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" 
align=left><SPAN lang=EN-US 
style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt">m_pd3dDevice-&gt;<SPAN 
class=SpellE><SPAN class=GramE>DrawPrimitive</SPAN></SPAN><SPAN 
class=GramE>(</SPAN> D3DPT_TRIANGLEFAN, 0, NUM_TRIS );<o:p></o:p></SPAN></P>
<P class=MsoNormal 
style="TEXT-ALIGN: left; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-pagination: widow-orphan" 
align=left><SPAN 
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt">这个例子显示了数据流在解决重复的数据<SPAN 
lang=EN-US>/冗余数据在总线上的传输(也就是说,带宽的浪费)问题上的灵活性。<o:p></o:p></SPAN></SPAN></P>
<DIV class=MsoNormal style="TEXT-ALIGN: center; mso-pagination: widow-orphan" 
align=center><SPAN lang=EN-US 
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt">
<HR align=center width="100%" SIZE=1>
</SPAN></DIV>
<P class=MsoNormal 
style="TEXT-ALIGN: left; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-pagination: widow-orphan; mso-outline-level: 1" 
align=left><A name=顶点颜色着色器><B><SPAN 
style="FONT-SIZE: 24pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 18.0pt">顶点颜色着色器</SPAN></B></A><B><SPAN 
lang=EN-US 
style="FONT-SIZE: 24pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 18.0pt"><o:p></o:p></SPAN></B></P>
<DIV class=MsoNormal style="TEXT-ALIGN: center; mso-pagination: widow-orphan" 
align=center><SPAN lang=EN-US 
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt">
<HR align=center width="100%" SIZE=1>
</SPAN></DIV>
<P class=MsoNormal 
style="TEXT-ALIGN: left; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-pagination: widow-orphan" 
align=left><SPAN 
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt">本主题显示了初始化和使用一个用到了位置和漫反射色的简单顶点着色器的必须步骤。<SPAN 
lang=EN-US><o:p></o:p></SPAN></SPAN></P>
<P class=MsoNormal 
style="TEXT-ALIGN: left; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-pagination: widow-orphan" 
align=left><SPAN 
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt">第一步是声明用来保存位置和颜色的结构,如以下示例代码所示。<SPAN 
lang=EN-US><o:p></o:p></SPAN></SPAN></P>
<P class=MsoNormal 
style="TEXT-ALIGN: left; mso-pagination: widow-orphan; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" 
align=left><SPAN class=SpellE><SPAN class=GramE><SPAN lang=EN-US 
style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt">struct</SPAN></SPAN></SPAN><SPAN 
lang=EN-US 
style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt"> 
<SPAN class=SpellE>XYZBuffer</SPAN><o:p></o:p></SPAN></P>
<P class=MsoNormal 
style="TEXT-ALIGN: left; mso-pagination: widow-orphan; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" 
align=left><SPAN lang=EN-US 
style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt">{<o:p></o:p></SPAN></P>
<P class=MsoNormal 
style="TEXT-ALIGN: left; mso-pagination: widow-orphan; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" 
align=left><SPAN lang=EN-US 
style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt"><SPAN 
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>FLOAT x, y, 
z;<o:p></o:p></SPAN></P>
<P class=MsoNormal 
style="TEXT-ALIGN: left; mso-pagination: widow-orphan; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" 
align=left><SPAN lang=EN-US 
style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt">};<o:p></o:p></SPAN></P>
<P class=MsoNormal 
style="TEXT-ALIGN: left; mso-pagination: widow-orphan; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" 
align=left><SPAN lang=EN-US 
style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt"><o:p>&nbsp;</o:p></SPAN></P>
<P class=MsoNormal 
style="TEXT-ALIGN: left; mso-pagination: widow-orphan; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" 
align=left><SPAN class=SpellE><SPAN class=GramE><SPAN lang=EN-US 
style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt">struct</SPAN></SPAN></SPAN><SPAN 
lang=EN-US 
style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt"> 
<SPAN class=SpellE>ColBuffer</SPAN><o:p></o:p></SPAN></P>
<P class=MsoNormal 
style="TEXT-ALIGN: left; mso-pagination: widow-orphan; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" 
align=left><SPAN lang=EN-US 
style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt">{<o:p></o:p></SPAN></P>
<P class=MsoNormal 
style="TEXT-ALIGN: left; mso-pagination: widow-orphan; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" 
align=left><SPAN lang=EN-US 
style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt"><SPAN 
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>D3DCOLOR 
color;<o:p></o:p></SPAN></P>
<P class=MsoNormal 
style="TEXT-ALIGN: left; mso-pagination: widow-orphan; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" 
align=left><SPAN lang=EN-US 
style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt">};<o:p></o:p></SPAN></P>
<P class=MsoNormal 
style="TEXT-ALIGN: left; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-pagination: widow-orphan" 
align=left><SPAN 
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt">下一步是创建顶点着色器声明,如以下示例代码所示。<SPAN 
lang=EN-US><o:p></o:p></SPAN></SPAN></P>
<P class=MsoNormal 
style="TEXT-ALIGN: left; mso-pagination: widow-orphan; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" 
align=left><SPAN lang=EN-US 
style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt">D3DVERTEXELEMENT9 
<SPAN class=SpellE><SPAN class=GramE>decl</SPAN></SPAN><SPAN 
class=GramE>[</SPAN>] = <o:p></o:p></SPAN></P>
<P class=MsoNormal 
style="TEXT-ALIGN: left; mso-pagination: widow-orphan; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" 
align=left><SPAN lang=EN-US 
style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt">{<o:p></o:p></SPAN></P>
<P class=MsoNormal 
style="TEXT-ALIGN: left; mso-pagination: widow-orphan; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" 
align=left><SPAN lang=EN-US 
style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt"><SPAN 
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN><SPAN class=GramE>{ 
0</SPAN>, 0, D3DDECLTYPE_FLOAT3,<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; 
</SPAN>D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_POSITION, 0 },<o:p></o:p></SPAN></P>
<P class=MsoNormal 
style="TEXT-ALIGN: left; mso-pagination: widow-orphan; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" 
align=left><SPAN lang=EN-US 
style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt"><SPAN 
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN><SPAN class=GramE>{ 
1</SPAN>, 0, D3DDECLTYPE_D3DCOLOR, D3DDECLMETHOD_DEFAULT, 
D3DDECLUSAGE_COLOR,<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>0 
},<o:p></o:p></SPAN></P>
<P class=MsoNormal 
style="TEXT-ALIGN: left; mso-pagination: widow-orphan; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" 
align=left><SPAN lang=EN-US 
style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt"><SPAN 
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>D3DDECL_<SPAN 
class=GramE>END()</SPAN><o:p></o:p></SPAN></P>
<P class=MsoNormal 
style="TEXT-ALIGN: left; mso-pagination: widow-orphan; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" 
align=left><SPAN lang=EN-US 
style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt">};<o:p></o:p></SPAN></P>
<P>现在创建顶点声明对象:</P><PRE><SPAN lang=EN-US style="FONT-SIZE: 10pt">LPDIRECT3DVERTEXDECLARATION9 <SPAN class=SpellE>m_pVertexDeclaration</SPAN>;<o:p></o:p></SPAN></PRE><PRE><SPAN lang=EN-US style="FONT-SIZE: 10pt">g_d3dDevice-&gt;<SPAN class=SpellE><SPAN class=GramE>CreateVertexDeclaration</SPAN></SPAN><SPAN class=GramE>(</SPAN> <SPAN class=SpellE>decl</SPAN>, &amp;<SPAN class=SpellE>m_pVertexDeclaration</SPAN> );<o:p></o:p></SPAN></PRE>
<P class=MsoNormal 
style="TEXT-ALIGN: left; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-pagination: widow-orphan" 
align=left><SPAN 
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt">下一步是调用<U><SPAN 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -