轉載請註明出處: http://blog.csdn.net/tianhai110
渲染到紋理:
1. 建立一個空effect;
2. 添加渲染目標紋理, Add Texture-> Add Render Texture
3. 添加一個渲染pass
4. 將pass0 渲染到紋理上, add Render Target->renderTexture;
5. 在pass1中,引用紋理 Add Texture Object->renderTexture; 並改名為rttTexture;
6. 修改pass1的vertex shader 和pixel shader;
float4x4 matViewProjection;</p><p>struct VS_INPUT<br />{<br /> float4 Position : POSITION0;<br /> float2 Texcoord : TEXCOORD0;<br />};</p><p>struct VS_OUTPUT<br />{<br /> float4 Position : POSITION0;<br /> float2 Texcoord : TEXCOORD0;<br />};</p><p>VS_OUTPUT vs_main( VS_INPUT Input )<br />{<br /> VS_OUTPUT Output;</p><p> Output.Position = mul( Input.Position, matViewProjection );<br /> Output.Texcoord = Input.Texcoord;</p><p> return( Output );</p><p>}
PS:
sampler2D rttTexture;<br />float4 ps_main( float2 tex:TEXCOORD0) : COLOR0<br />{<br /> return tex2D(rttTexture, tex) + float4( 0.6, 0.2, 0.5, 1);</p><p>}
運行效果如下: