作者pleaselouis (LOUISN)
看板GameDesign
标题[请益] 请问关於 Sphere 贴图
时间Tue Apr 21 19:46:39 2009
目前在练习使用 DirectX 做一个类似 SkyBox 的程式
现在是使用 D3DXCreateSphere 实作出一个球体
但是我不太清楚 要如何指定一张图片 当作Texture贴上去
参考了一些范例 但是还是一头雾水 所以上来请教大家 希望大家给点建议
以下是程式码片段 :
-----
初始化区域:
LPDIRECT3DDEVICE9 m_pDevice;
LPD3DXMESH m_meshSphere;
LPDIRECT3DTEXTURE9 m_pMyTexture;
D3DMATERIAL9* m_sphereMaterials;
............
D3DXCreateSphere(m_pDevice, 200.0f, 20, 10, &m_meshSphere, NULL);
D3DXCreateTextureFromFile(m_pDevice , L"XXX.jpg" , &m_pMyTexture);
m_sphereMaterials = new D3DMATERIAL9;
m_sphereMaterials->Diffuse.r=1.0;
m_sphereMaterials->Diffuse.g=1.0;
m_sphereMaterials->Diffuse.b=1.0;
m_sphereMaterials->Diffuse.a=1;
m_sphereMaterials->Ambient = m_sphereMaterials->Diffuse;
m_sphereMaterials->Power=1;
m_pDevice->SetRenderState(D3DRS_LIGHTING, TRUE);
m_pDevice->SetRenderState(D3DRS_AMBIENT, D3DCOLOR_XRGB(255, 255, 255));
m_pDevice->SetRenderState(D3DRS_ZENABLE ,TRUE);
-----
Render区域:
m_pDevice->SetRenderState(D3DRS_CULLMODE, D3DCULL_NONE);
m_pDevice->SetTexture( 0 , (IDirect3DBaseTexture9*)m_pMyTexture );
m_pDevice->SetMaterial(m_sphereMaterials);
m_meshSphere->DrawSubset(0);
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 211.76.190.21
2F:→ Quaid:iques-Part_6_Textures_Cameras_and_Speed.shtml 05/04 15:07
3F:→ Quaid:有教sphere的texture 我不清楚directx有没有API可以直接设 05/04 15:09