- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这可能是一个菜鸟问题。据我了解,glBindAttribLocation(..., AAA, ...) 将程序内的属性绑定(bind)到 AAA 的位置 ID,只要 AAA 是唯一的。如果我有以下代码:
glBindAttribLocation(..., 0, "XXX");
glBindAttribLocation(..., 1, "YYY");
glBindBuffer(GL_ARRAY_BUFFER, VBId);
glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, IBId);
glVertexAttribPointer(0, 3, GL_FLOAT, GL_FALSE, sizeof(float) * 6, 0);
glEnableVertexAttribArray(0);
glVertexAttribPointer(1, 3, GL_FLOAT, GL_FALSE, sizeof(float) * 6, (void *) 0 + sizeof(float) * 3);
glEnableVertexAttribArray(1);
glDrawElements(GL_TRIANGLES, 6, GL_UNSIGNED_INT, 0);
最佳答案
glGetAttribLocation() 返回正确的索引。所以是的,在 glVertexAttribPointer() 和 glEnableVertexAttribArray() 中使用这些值是安全的。
但是如果你不缓存它,为每个着色器调用 glGetAttribLocation 可能会很昂贵。使用 glBindAttribLocation() 允许使用约定,位置始终为 0,正常为 1,依此类推。
关于shader - GLES2 是否需要 glBindAttribLocation()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7577427/
这个问题在这里已经有了答案: 9年前关闭。 Possible Duplicate: Explicit vs Automatic attribute location binding for OpenG
我正在学习 OpenGL,并注意到在处理输入属性时我可以选择使用 glGetAttribLocation() 或 glBindAttribLocation(),但对于 uniform ,我有使用glG
我正在努力寻找不需要 glew 或 glut 或其他任何东西的 OpenGL/GLSL 示例。 我正在尝试仅使用 glfw3(如果可能的话我不想使用其他库)并且我正在努力理解一旦我使用 glBindA
我的理解是glBindAttribLocation允许您自定义设置属性的句柄(在链接着色器程序之前),您可以稍后在使用 glVertexAttribPointer 进行渲染时使用该句柄. 但是您不必使
这可能是一个菜鸟问题。据我了解,glBindAttribLocation(..., AAA, ...) 将程序内的属性绑定(bind)到 AAA 的位置 ID,只要 AAA 是唯一的。如果我有以下代码
在 iOS 设备上绑定(bind)属性是否明智(以及如何选择要绑定(bind)的索引号)?在我的应用程序中,我有几个着色器,跟踪所有属性/制服变得很麻烦。但我读过 nVidia imposes res
我使用的是 OpenGL 4.2,我不明白为什么我会在这个程序中收到 GL_INVALID_VALUE 错误。调用 glBindAttribLocation 时出现错误。根据OpenGL 4 refe
在我发布一些代码之前,我会解释一下:我现在正在 iPhone 平台上学习 OpenGL ES 2.0,我每次都要编译我的程序,但它只能在某些时候正确运行。这是一个 super 简单的程序,带有一个顶点
我是一名优秀的程序员,十分优秀!