|
|
//**************************************************************
// 创建渲染到贴图的表面
DirectDevice->CreateTexture(1024,768,1,D3DUSAGE_RENDERTARGET,
D3DFMT_A8R8G8B8,D3DPOOL_DEFAULT,&g_pRenderTexture1 , 0);
DirectDevice->CreateTexture(1024,768,1,D3DUSAGE_RENDERTARGET,
D3DFMT_A8R8G8B8,D3DPOOL_DEFAULT,&g_pRenderTexture2 , 0);
// 获取贴图的渲染表面
g_pRenderTexture1->GetSurfaceLevel(0 , &g_pRenderSurface);
g_pRenderTexture2->GetSurfaceLevel(0 , &g_pRenderSurface);
//*****************************************************************
我先把一个场景渲染到一张纹理g_pRenderTexture1上然后再把纹理g_pRenderTexture1贴在一个模型上以后渲染这个模型到纹理g_pRenderTexture2上,最后把g_pRenderTexture2贴在一个平面上显示在屏幕上。
但是奇怪的是,最后的那个平面上的贴图就然是显示的g_pRenderTexture1,我明明在渲染平面之前做了DirectDevice->SetTexture(0,g_pRenderTexture2);的。
请教高手这是怎么回事?
谢谢! |
|