8,303
社区成员
发帖
与我相关
我的任务
分享
if( SUCCEEDED( pDevice3D->BeginScene()))
{
//保存最初创建的表面
//开始渲染CUBE贴图
PDIRECT3DSURFACE9 pSur ;
pCubeTexture -> GetCubeMapSurface((D3DCUBEMAP_FACES) 0 , 0 , &pSur ) ;
pDevice3D -> SetRenderTarget( 0 , pSur ) ;
pDevice3D -> SetDepthStencilSurface( pSur_DS ) ;
pDevice3D->Clear(0, NULL, D3DCLEAR_TARGET | D3DCLEAR_ZBUFFER, D3DXCOLOR(0.5f,0.5f,1.f,1.f), 1.0f, 0) ;//不知道是一个方体清屏一次,还是每个面清屏一次
g_pRenderToEnvMap ->BeginCube( pCubeTexture ) ;
for ( int j = 0 ; j < 6 ; j ++ )
{
g_pRenderToEnvMap ->Face( ( D3DCUBEMAP_FACES) j , D3DX_DEFAULT ) ;
RenderObjectsInCube() ;//渲染环境贴图上应该包含的对象
}
g_pRenderToEnvMap -> End( 0 ) ;
SAFE_RELEASE ( pSur ) ;
}
//恢复原先的表面
//渲染场景
}