9

我没有找到绘图表面概念的良好定义。什么属性与表面相关?在纯 OpenGL 的上下文中,没有表面,因为 OpenGL 没有窗口系统特定事物的概念。在 OpenGL ES 中,尽管您有 EGL API,它引入了绘图表面的概念,但没有正确定义它。您对绘图表面的简明定义是什么?

4

3 回答 3

7

基本上,表面是可以渲染的东西。这是一种设备上下文,但可能更智能,因为表面可能知道如何显示自己或做其他有用的事情。EGL 具有三种表面类型:

  • 窗面:一个窗口。
  • Pixmap Surface:图像。
  • Pbuffer Surface:像素缓冲区。

这个论坛帖子可能会有所帮助

于 2009-06-23T16:07:29.523 回答
2

在 Direct3D 世界中,广义地说,表面是一些 2D 图像数据。纹理是可以在着色器中采样和使用的东西。通常纹理是“由”表面组成的;例如,2D 纹理的每个 mip-map 都是一个表面,而立方体贴图的每个面都是一个表面。

于 2009-10-05T11:06:33.663 回答
1

在 Direct3D 中,硬件表面通常(但不总是)是 DirectDraw 表面格式的硬件内存部分。这与 DDS 图像文件使用的格式相同,基本上由一个标题组成,然后是标题部分中指定的几种图像格式之一的图像数据。通常的属性是宽度、高度、像素格式,也许还有一些其他的东西,比如立体声(当然,实际上可能不支持)。

它基本上只是图像的通用术语。

于 2009-06-23T17:03:47.177 回答