【发布时间】:2013-02-09 21:36:09
【问题描述】:
以 Windows 为例,当通过 GDI 绘制图形时,必须在每次 WM_PAINT 发生时重新绘制场景(+validate 等)。这个要求非常明显,否则图形很容易损坏。
但是,对于 OpenGL,一旦通过交换缓冲区显示场景,无论对窗口进行什么操作,它都会持续存在。这可能是一个有用的功能。
问题:这种行为是否跨平台且可靠?或者这只是一个常见但非强制性的驱动特性,不能依赖?
【问题讨论】:
标签: opengl
以 Windows 为例,当通过 GDI 绘制图形时,必须在每次 WM_PAINT 发生时重新绘制场景(+validate 等)。这个要求非常明显,否则图形很容易损坏。
但是,对于 OpenGL,一旦通过交换缓冲区显示场景,无论对窗口进行什么操作,它都会持续存在。这可能是一个有用的功能。
问题:这种行为是否跨平台且可靠?或者这只是一个常见但非强制性的驱动特性,不能依赖?
【问题讨论】:
标签: opengl
然而,对于 OpenGL,一旦通过交换缓冲区显示场景,无论对窗口做什么,它都会持续存在。
绝对不是这样。交换缓冲区后,后缓冲区的内容未定义,前缓冲区的内容受到与使用其他方法绘制的内容相同的损坏。
问题:这种行为是否跨平台且可靠?
我不明白你的意思,因为你描述的行为不存在。
【讨论】: