读书人

关于D3D渲染管道, 如何渲染不同材质的

发布时间: 2012-02-05 12:07:15 作者: rapoo

关于D3D渲染管道, 怎么渲染不同材质的物体
我都不知道怎么问这样的问题, D3D渲染的时候是先创建一个IDirect3DDevice的实例, 然后调用SetMaterial()函数, 这就是说一个IDirect3DDevice只能渲染一种材质, 那怎么渲染不同材质的物体, 如果创建多个IDirect3DDevice, 那调用clear和present函数的时候又会出现问题, 希望各位兄台赐教. 这通常都是怎么做的呢?

[解决办法]
当然只创建一个IDirect3DDevice对象

要渲染不同材质的东西,只需要在渲染前重新设置材质就可以了。

比如

C/C++ code
Device->BeginScene();    for(int i = 0; i<5;i++)//这里简单的使用5种材质    {    Device->SetMaterial(&Mtrls[i]);//设置材质    object[i]->DrawSubset(0);//渲染    }Device->EndScene(); 

读书人网 >网络游戏

热点推荐