D3D 用例子的代码贴图片为什么覆盖一层红色
这是进入D3D后的
代码
if( FAILED( D3DXCreateTextureFromFileEx(
g_pd3dDev, // D3D设备对象
"b_110.bmp", // 指明加载图像位置的字符串
1280, // 图像宽度
720, // 图像高度
1, // 图片的图层,一般用D3DX_DEFAULT,与图像质量有关
0, //设定这个纹理的使用方法
D3DFMT_UNKNOWN, // 每个颜色成分使用的位数
D3DPOOL_MANAGED, // 纹理对象驻留的内存类别
D3DX_DEFAULT, // 处理图像质量,并控制D3D填充图像数据的方法
D3DX_DEFAULT, // 像素过滤方式
NULL, // 透明色,设定这个颜色,在显示时,这图像中的这个颜色将忽略
NULL, // 记录载入图片信息
NULL, // 记录调色板信息
&g_pTex) ) ) // 用来储存载入图片的纹理对象实例
{
MessageBox(NULL, "Could not find 110.bmp", "eror", MB_OK);
return E_FAIL;
}
struct CUSTOMVERTEX
{
FLOAT x, y, z;
unsigned long color;
FLOAT u, v;
};
#define D3DFVF_CUSTOMVERTEX (D3DFVF_XYZ|D3DFVF_DIFFUSE |D3DFVF_TEX1)
CUSTOMVERTEX v[] =
{
{-0.3f, -0.4f, 0, D3DCOLOR_ARGB(255,255,255,255), 0, 1},
{0.3f, -0.4f, 0, D3DCOLOR_ARGB(255,255,255,255), 1, 1},
{0.3f, 0.4f, 0, D3DCOLOR_ARGB(255,255,255,255), 1, 0},
{0.3f, 0.4f, 0, D3DCOLOR_ARGB(255,255,255,255), 1, 0},
{-0.3f, 0.4f, 0, D3DCOLOR_ARGB(255,255,255,255), 0, 0},
{-0.3f, -0.4f, 0, D3DCOLOR_ARGB(255,255,255,255), 0, 1}
};