Graphics 如何将D3DFMT_A8纹理渲染为颜色?

Graphics 如何将D3DFMT_A8纹理渲染为颜色?,graphics,directx,textures,Graphics,Directx,Textures,可以用一些颜色渲染D3DFMT_A8纹理吗?这样地: 谢谢 首先,并非所有硬件都支持D3DFMT_A8 现在假设ID3DXSprite不会占用太多的管道,那么只需编写一个像素着色器,如下所示: sampler2D input : register(s0); float4 pixelShader(float2 uv : TEXCOORD) : COLOR { return tex2D( input , uv.xy).aaaa; } 着色器只需读取纹理中的值,并在所有通道上旋

可以用一些颜色渲染D3DFMT_A8纹理吗?这样地:


谢谢

首先,并非所有硬件都支持D3DFMT_A8

现在假设ID3DXSprite不会占用太多的管道,那么只需编写一个像素着色器,如下所示:

sampler2D input : register(s0); 
float4 pixelShader(float2 uv : TEXCOORD) : COLOR 
{ 
    return tex2D( input , uv.xy).aaaa; 

}

着色器只需读取纹理中的值,并在所有通道上旋转该值。

首先,并非所有硬件都支持D3DFMT_A8

现在假设ID3DXSprite不会占用太多的管道,那么只需编写一个像素着色器,如下所示:

sampler2D input : register(s0); 
float4 pixelShader(float2 uv : TEXCOORD) : COLOR 
{ 
    return tex2D( input , uv.xy).aaaa; 

}

着色器只需读取纹理中的值并在所有通道中旋转即可。

值得注意的是,这样的代码不起作用:(它在灰度调色板中渲染纹理)值得注意的是,这样的代码不起作用:(它在灰度调色板中渲染纹理)