OpenGL下有没像windows下那样的区域刷新机制?也就是只刷新脏距形区域

xqhrs232 2012-09-30 09:18:16
OpenGL下有没像windows下那样的区域刷新机制?也就是只刷新脏距形区域


OpenGL下怎么判断脏距形区域?每次都把整个帧重新画一遍,有没浪费也有点没必要。整帧地刷新还影响其它的地方没时间执行或者受干扰!!!
...全文
677 18 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
BeanBoy 2013-01-30
  • 打赏
  • 举报
回复
引用 10 楼 xqhrs232 的回复:
那拿OPENGL/D3D技术去进行简单的2D渲染,是不是得不偿失啊?但3D渲染应该还是比2D渲染来的快,并且做一些界面的动画跟效果也更好实现!!!毕竟3D渲染还有GPU可以使用!
WPF就是这么干的吧???
xqhrs232 2012-12-05
  • 打赏
  • 举报
回复
wince系统报错总结 http://blog.chinaunix.net/uid-22597935-id-3290516.html Exception 'Raised Exception' (-1): 数组越界 Exception 'Data Abort' (4): 栈出问题了/空指针/访问的数据块无效了(如内存已经回收无效了) Exception 'Prefetch Abort' (3): 空指针
xqhrs232 2012-12-03
  • 打赏
  • 举报
回复
引用 15 楼 butwang 的回复:
引用 14 楼 xqhrs232 的回复:引用 13 楼 butwang 的回复: 3d引擎的优势不在这个 ,得不偿失, 也就是说在3D情况下,考虑什么脏距形没什么意义? 3d渲染不考虑脏矩形,一般都是场景剔除的算法,就是怎么减少一个批次需要渲染的模型数量.
但是其它的不需要删除的模型还是再重新渲染一遍?
butwang 2012-12-02
  • 打赏
  • 举报
回复
3d引擎的优势不在这个 ,得不偿失,
xqhrs232 2012-12-02
  • 打赏
  • 举报
回复
引用 13 楼 butwang 的回复:
3d引擎的优势不在这个 ,得不偿失,
也就是说在3D情况下,考虑什么脏距形没什么意义?
butwang 2012-12-02
  • 打赏
  • 举报
回复
引用 14 楼 xqhrs232 的回复:
引用 13 楼 butwang 的回复: 3d引擎的优势不在这个 ,得不偿失, 也就是说在3D情况下,考虑什么脏距形没什么意义?
3d渲染不考虑脏矩形,一般都是场景剔除的算法,就是怎么减少一个批次需要渲染的模型数量.
the_venus 2012-12-01
  • 打赏
  • 举报
回复
用Stencil Buffer控制它就行了...
zephyr3d 2012-11-06
  • 打赏
  • 举报
回复
使用3D渲染技术去渲染2D在现在也是很流行的做法.毕竟市场上没什么显卡是不支持3D加速的了.
xqhrs232 2012-11-04
  • 打赏
  • 举报
回复
那拿OPENGL/D3D技术去进行简单的2D渲染,是不是得不偿失啊?但3D渲染应该还是比2D渲染来的快,并且做一些界面的动画跟效果也更好实现!!!毕竟3D渲染还有GPU可以使用!
xqhrs232 2012-11-04
  • 打赏
  • 举报
回复
引用 7 楼 leisuregame 的回复:
楼主先应当搞清为什么脏矩形优化机制适合于2D渲染.2D渲染说到底就是矩形图块的blit操作,图块之间没什么必然的关联,而2D渲染的瓶颈主要就在于渲染的图块面积大小,脏矩形在这里非常适用,是很好的优化方法. 3D渲染的瓶颈不只在于在视口内渲染了多少面积,还包括顶点变换,GPU运算,纹理填充等开销,而且在极其罕见的情况下才会有需要局部更新的情况,通常摄像……
真的是这样的吗?你这一段话让我明白很多东西,非常感谢!
zephyr3d 2012-11-04
  • 打赏
  • 举报
回复
当然,楼主如果说的是利用3D的API来实现2D渲染的话,脏矩形优化依然可以使用,不过需要自己代码实现
zephyr3d 2012-11-04
  • 打赏
  • 举报
回复
楼主先应当搞清为什么脏矩形优化机制适合于2D渲染.2D渲染说到底就是矩形图块的blit操作,图块之间没什么必然的关联,而2D渲染的瓶颈主要就在于渲染的图块面积大小,脏矩形在这里非常适用,是很好的优化方法. 3D渲染的瓶颈不只在于在视口内渲染了多少面积,还包括顶点变换,GPU运算,纹理填充等开销,而且在极其罕见的情况下才会有需要局部更新的情况,通常摄像机微小的变化都会整屏的图形发生改变,脏矩形在3D渲染的情况下可以说没有任何用武之地.另外从算法上脏矩形在3D渲染下也没有什么可行性,因为颜色缓冲区,深度/模板缓冲区在整个视口范围内是整体的运算对象,不会出现只运算某个矩形区域的情况.所以说任何3D的API都不会提供所谓的脏矩形优化.
xqhrs232 2012-10-06
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 的回复:]

看看云风的脏矩形:
http://blog.codingnow.com/cloud/DirtyRect

很简单的,就是把窗口按64×32的尺寸划分,所有图像的绘制都被划分到各自的block下,然后判断各自的block有没有弄脏,来决定要不要重绘.
[/Quote]谢谢
weiwuyuan 2012-10-03
  • 打赏
  • 举报
回复
看看云风的脏矩形:
http://blog.codingnow.com/cloud/DirtyRect

很简单的,就是把窗口按64×32的尺寸划分,所有图像的绘制都被划分到各自的block下,然后判断各自的block有没有弄脏,来决定要不要重绘.
xqhrs232 2012-10-03
  • 打赏
  • 举报
回复
自己实现?那里可以找到一点参考?
dengyejing 2012-10-02
  • 打赏
  • 举报
回复
自己实现脏矩形管理逻辑。opengl只是个绘图库而已关心的是怎么画,而不是应该在哪里画

8,325

社区成员

发帖
与我相关
我的任务
社区描述
游戏开发相关内容讨论专区
社区管理员
  • 游戏开发
  • 呆呆敲代码的小Y
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧