|
|
我手中有一本教材中写了一段像素渲染代码如下
//-----------
//纹理采样器
//-----------
sampler s_2D = sampler_state
{
minfilter = LINEAR;
maxfilter = LINEAR;
}
//-----------
//输入、输出结构体
//-----------
struct PS_INPUT
{
float2 tex : TEXCOORD0;
};
struct PS_OUTPUT
{
float4 Color : COLOR;
};
//------------
//像素渲染主函数
//------------
PS_OUTPUT PS(PS_INPUT psInput)
{
PS_OUTPUT Out_ps = (PS_OUTPUT) 0;
Out_ps.Color = tex2D(s_2D,psInput.tex);
return Out_ps
}
然后再象以下方法设置一张纹理
D3DXCreateTextureFromFile(pd3dDevice,L"texture.jpg",&g_pTexture);
pd3dDevice->SetTexture(0,g_pTeture);
然后把这张纹理贴在了一个圆筒的表面(如图)。
但是我想知道的是不仅仅像这样直接把这张图贴在上面,而是想更改纹理上的某一部分的颜色后再贴上去。
比如这张纹理由600*600的大小,但是我就想把纹理上的(200,500)这个点改为红色,要怎样才能在像素着色器中定位到这个点?
谢谢! |
|