d3d设备基础

本文详细介绍了Direct3D设备的创建类型、硬件与软件顶点处理、设备状态管理,特别是设备丢失后的处理策略,包括资源重建、设备恢复及错误检查。此外,还讨论了全屏调试、锁操作、资源分配以及可编程shader在设备丢失时的行为。
摘要由CSDN通过智能技术生成

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值