首页 > 代码库 > D3DXCreateTexture

D3DXCreateTexture

 

HRESULT D3DXCreateTexture(    __in   LPDIRECT3DDEVICE9 pDevice,    __in   UINT Width,    __in   UINT Height,    __in   UINT MipLevels,    __in   DWORD Usage,    __in   D3DFORMAT Format,    __in   D3DPOOL Pool,    __out  LPDIRECT3DTEXTURE9 *ppTexture  ); 

第一个参数,LPDIRECT3DDEVICE9类型的pDevice,无需多言,这就是我们的绘制金钥匙——Direct3D设备对象了。

■ 第二个参数,UINT类型的Width,表示我们创建的纹理对象的宽度。

■ 第三个参数,UINT类型的Height,表示我们创建的纹理对象的高度。

■ 第四个参数,UINT类型的MipLevels,表示我们创建的纹理的渐进级别,通常取默认值D3DX_DEFAULT就可以了,表示创建一个完整MIP贴图链。。其实取0也无妨,和取默认值D3DX_DEFAULT效果是一样的。

■ 第五个参数,DWORD类型的Usage,指定了我们纹理的使用方式,取值在0、D3DUSAGE_RENDERTARGET、D3DUSAGE_DYMANIC中三取一。

■ 第六个参数,D3DFORMAT类型的Format,用于指定纹理中每个保存每个颜色成分所使用的位数,在D3DFORMAT枚举体中取值,这个参数也可以设为0,表示使用默认值。

■ 第七个参数,D3DPOOL类型的Pool,指定了纹理对象停驻的内存的类别,在D3DPOOL枚举体中取值,不过我们经常是在这个枚举体其中的两个成员D3DPOOL_DEFAULT和D3DPOOL_MANAGED之间取一个。

■ 第八个参数,LPDIRECT3DTEXTURE9类型的*ppTexture,指针的指针,也就是指向IDirect3DTexture9接口的地址,显然我们调用D3DXCreateTexture,就是把最终创建的纹理交给这个参数保管了,后面如果要使用我们创建的这个纹理的话,通过这个参数就可以了。