问题标签 [direct-state-access]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
203 浏览

c++ - 直接状态访问 (DSA) 失败,但 4.3 之前的 OpenGL 有效

我目前有一个 OpenGL 项目,我在其中使用 GLFW 来创建窗口和上下文,并使用 GLAD 来加载 OpenGL 函数。我使用的 GLAD 版本是 OpenGL 4.6,兼容性配置文件,具有所有扩展(包括 ARB_direct_state_access)。

我当前的显卡设置是

当我运行以下非 DSA 代码时,它工作正常。

但是,当我尝试将此代码转换为 DSA 格式并运行它时,程序会打开一个窗口,然后在没有有用的调试信息的情况下终止。

在这两种情况下,我在绘制之前绑定顶点数组对象,如下所示

为什么我的类似 DSA 的代码不起作用?

0 投票
1 回答
73 浏览

opengl - glReadPixels 的 OpenGL DSA 等效项

我正在尝试从附加到未绑定帧缓冲区的渲染缓冲区中检索像素值。由于我试图在读取所述值时避免更改全局状态,因此我无法使用glReadPixels([...])通常用于从当前绑定的帧缓冲区中读取像素的值。

DirectStateAccess方法通常可以解决这个问题,但我找不到允许直接指定读取操作源的方法。

是否可以以不同的方式读取像素,而无需绑定关联的Framebuffer? 为什么此方法未包含在 DSA 扩展中?