前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Direct3D资源

Direct3D资源

作者头像
逍遥剑客
发布2018-05-21 15:45:11
9180
发布2018-05-21 15:45:11
举报

CSDN,终于能登录了.......

资源属性

  • Usage. 资源的用途, 如纹理或渲染目标.
  • Format. 数据的格式, 如一个二维表面的像素格式.
  • Pool. 资源所分配的内存空间类型.
  • Type.资源的类型,如顶点缓冲区或一个渲染目标.

关于内存池:

D3DPOOL_DEFAULT

资源保存到显存或AGP内存中,发挥更高的性能.设备丢失后,必须在Reset()之前释放,并在恢复设备时重新创建

D3DPOOL_MANAGED

自动在系统内存中进行备份,设备丢失与恢复过程中D3D会自动进行资源的恢复 注:RenderTarget不支持这种方式

D3DPOOL_SCRATCH

位于系统的临时内存中,不能直接用于渲染,只能进行加锁,复制等操作

D3DPOOL_SYSTEMMEM

位于系统内存中,不会丢失

资源类型

D3DRTYPE_SURFACE

表面.

D3DRTYPE_VOLUME

立体资源.

D3DRTYPE_TEXTURE

纹理.

D3DRTYPE_VOLUMETEXTURE

立体纹理.

D3DRTYPE_CubeTexture

立方体纹理.

D3DRTYPE_VERTEXBUFFER

顶点缓冲区.

D3DRTYPE_INDEXBUFFER

索引缓冲区.

加锁属性

  • D3DLOCK_DISCARD 更新整个区域
  • D3DLOCK_READONLY 只读属性
  • D3DLOCK_NOOVERWRITE 保证不覆盖,立即返回内存指针,提高系统性能
  • D3DLOCK_NOSYSLOCK 在加锁过程中可以进行其他操作
  • D3DLOCK_NO_DIRTY_UPDATE 不设置Dirty标记,有特殊需要时用

Lock()函数需要一定的时间,D3D会暂停其他的显示操作,直到Lock()结束.设置NOSYSLOCK后可以在加锁的同时执行其他的显示操作,如鼠标的移动

资源间的关系

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2007年12月28日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档