Opengl es OpenGLES2.0状态的UML图?

Opengl es OpenGLES2.0状态的UML图?,opengl-es,uml,opengl-es-2.0,Opengl Es,Uml,Opengl Es 2.0,有人能提供一个描述OpenGLES2.0状态机的UML图吗 理想情况下,这样的图表应该描述的东西,如纹理有宽度,高度,类型,内部格式等。;程序有附加着色器,可以链接也可以不链接,有制服等。;等 我之所以非常感兴趣,是因为我经常发现自己在想一些事情,比如: 纹理参数(使用glTexParameter设置)是否与当前纹理或纹理单位关联 启用的广义向量属性集是否是当前绑定VBO的一部分?还是当前计划的一部分?还是全球 拥有一个OpenGL的UML图将非常有助于一眼就能回答这些问题,而不必通过大量淫

有人能提供一个描述OpenGLES2.0状态机的UML图吗

理想情况下,这样的图表应该描述的东西,如纹理有宽度,高度,类型,内部格式等。;程序有附加着色器,可以链接也可以不链接,有制服等。;等

我之所以非常感兴趣,是因为我经常发现自己在想一些事情,比如:

  • 纹理参数(使用
    glTexParameter
    设置)是否与当前纹理或纹理单位关联
  • 启用的广义向量属性集是否是当前绑定VBO的一部分?还是当前计划的一部分?还是全球
拥有一个OpenGL的UML图将非常有助于一眼就能回答这些问题,而不必通过大量淫秽的文档来试图弄清楚所有不同组件是如何协同工作的


我意识到寻找这是一个很长的机会,因为我认为这是一个巨大的努力,把它们放在一起。不过,我认为这会非常有用。即使是一个局部的答案也会有很大帮助。同样,除了我的目标版本(ES 2.0)之外的其他版本的OpenGL图表也会很有用。

OpenGL Insights book的网站为OpenGL 4.2和OpenGL ES 2.0的整个渲染管道提供了UML状态图:

此图大致显示了阶段的交互以及每个状态中涉及的GL对象,并显示了规范中描述这些对象的章节

图中没有显示的是相关对象的状态,但您可以在规范本身中找到。在OpenGL ES 2.0规范第6.2章中,列出了所有对象和方面及其状态和访问方式


因此,如果使用规范中的表号对状态图进行注释,则或多或少可以得到所需的一切。

OpenGL ES 2.0规范第6.2章中的状态表显示了与对象关联的状态。示例问题的答案很容易查找:使用glTexParameter设置的所有内容都是纹理对象状态(表6.8)。顶点属性是程序对象的状态(表6.15)。UML在这里没有添加太多内容,我以前没有看过这些表。它们似乎包含了我想要的东西,所以谢谢你指出。FWIW,我仍然认为GL的图形表示将是有用的。