1.d3d 设备创建时,类型主要有两种,HAL(硬件抽象层)和REF(引用设备),前者基于硬件支持,速度会很快,但是不一定支持所有的d3d特征,后者,虽然没有硬件加速,速度很慢,但是能支持所有的
d3d特征,一般情况下使用HAL,在出问题时,可以改成REF,如果问题不存在了,说明是硬件功能问题或显卡驱动问题,如果问题还存在,则说明是应用程序的问题:( 。
2.使用HAL设备时,可以使用硬件顶点处理,也可以使用软件顶点处理,(顶点处理包括,变换和光照),一般先使用硬件处理,如果失败则使用mixed方式处理,如果还失败,则使用软件处理,再失败
则报错或放弃。
3.使用同一个Direct3D对象可以创建多个渲染设备,这多个设备之间共享一个物理资源,
此时性能会急剧下降。
4.创建设备后,要设置它的状态.
5.create,release,reset 设备要在同一个线程中实现。
6.全屏调试可以使用DirectX Control Panel Tool,来启动多显示器调试。
7.一般窗口模式的应用程序在创建设备后需要处理一下步骤:
<1>确定桌面客户端区域的大小。
<2>一般都设置D3DADAPTER_DEFAULT;
<3>一般都调用IDirect3D9::CheckDeviceType来确定设备是否能支持绘制指定格式的后 台buffer.而IDirect3D9::GetAdapterDisplayMode用来确定桌面显示格式。
8.关于设备丢失:
<1&g