D3D笔记---关于D3DPOOL_DEFFULT
来源:互联网 发布:linux杀进程 编辑:程序博客网 时间:2024/04/30 18:27
关于这个网上搜集过不少资料,但是还是自己用起来的时候感触比较深,这里要说的只有几点
1、性能。用D3DPOOL_DEFFULT后发现性能大幅提升,加载最快超过100%,同样数量纹理,托管内存速度会慢很多。不仅加载,渲染效率也大幅提升,至少50%。
2、代价。这个是重点,所谓有得必有失,为什么HGE和CEGUI的实现里面,都使用了托管内存?这就是D3DPOOL_DEFFULT需要付出的代价。具体来看看:
①一旦创建不能被更改,也就是说LockRect什么的就别想了,但也不是完全不能更改,D3D里面有UpdateTexture(具体什么名字懒得翻了)可以通过一张D3DPOOL_SYSTEMMEM的纹理来进行更新。由于某些地方确实想LockRect,试过UpdateTexture到另一种纹理上然后再锁,结果直接蓝屏了……原因懒得去找了。
②设备丢失时需要手动恢复,这个其实实现起来倒不是很难,比起不能LockRect来说好处理很多,自己也尝试实现过了。
谁要知道怎么锁定D3DPOOL_DEFFULT的纹理的话(只为读取)分享一下,不胜感激。
- D3D笔记---关于D3DPOOL_DEFFULT
- D3D笔记
- D3D盗墓笔记
- D3D小笔记
- D3D学习笔记:绘制
- D3D学习笔记:纹理
- D3D学习笔记:混合
- D3D学习笔记:模板
- D3D学习笔记:字体
- D3D自学笔记
- 关于D3D的一些知识
- 关于D3D资源的创建
- D3D学习笔记(渲染管道)
- D3D笔记:在Direct3D画画
- D3D学习笔记(初始化Direct3D)
- D3D学习笔记(一)
- D3D学习笔记(二)
- D3D学习笔记(四)
- win8布局
- android 使用Intent传递数据之全局变量传递
- fedora 安装 QT
- UILongPressGestureRecognizer 执行两次的问题
- 关于Tq2440流水灯才行直接下载到sdram和nand中运行的区别
- D3D笔记---关于D3DPOOL_DEFFULT
- WPF – 使用触发器
- axis2练习
- 项目自动化之道-1.使用ant进行单步建构
- web集群时session同步的3种方法
- 关注 UIEvent
- hibernate 找不到映射文件
- vim的配置
- Yum离线安装(三) --- 制作 CentOS 本地软件源