- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试浏览 OS X 上的 ArcSynthesis 教程,但在调用 glEnableVertexAttribArray 后收到 OpenGL 错误“无效操作”。根据 glEnableClientState and glEnableVertexAttribArray 中的讨论,我已经检查过我确实有 VBO 绑定(bind)。 ,并且不确定下一步要检查什么。
我使用的是 OS X 10.8、OpenGL 3.2 配置文件和 Xcode 4.6。
我正在尝试编写一个类,该类将加载教程中使用的 XML 模型文件,并且我认为我正在按照与早期程序相同的顺序执行相同的操作绘制一个编码模型。但我一定在某种程度上做了一些不同的或错误的事情,但不知道是什么。引用 OpenGL 3.2 文档说,通过发送超过 OpenGL 实现允许的最大值的索引值,您会得到无效的操作,但我使用的是 0 和 1,我之前使用过。
这是代码,为了清晰起见,所有 OpenGL 错误检查都被编辑掉了:
glBindBuffer(GL_ARRAY_BUFFER, vertexBufferObject);
for (int iAttribLoop = 0; iAttribLoop < [attributeAnalyzers count]; iAttribLoop++) {
AttributeAnalyzer *theAnalyzer = [attributeAnalyzers objectAtIndex:iAttribLoop];
GLuint theIndex = [theAnalyzer index];
NSLog(@"theIndex is %d", theIndex);
glEnableVertexAttribArray(theIndex);
glVertexAttribPointer(theIndex, [theAnalyzer size], theType, GL_FALSE, 0, dataOffset);
dataOffset += sizeof(theType)*[theAnalyzer size]*[theAnalyzer vertexCount];
}
最佳答案
Referring to the OpenGL 3.2 documentation says that you get an invalid operation by sending in an index value over the maximum allowed by the OpenGL implementation
不,没有。这样做会得到 GL_INVALID_VALUE
。 GL_INVALID_OPERATION
仅由 glEnableVertexAttribArray
给出 when you call it and no VAO is bound .
所以你应该这样做。
关于cocoa - glEnableVertexAttribArray 给出无效操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15102206/
我正在尝试浏览 OS X 上的 ArcSynthesis 教程,但在调用 glEnableVertexAttribArray 后收到 OpenGL 错误“无效操作”。根据 glEnableClient
我正在阅读: Dissecting Display, Chapter 1. Hello, Triangle! 。 glEnableVertexAttribArray 到底是做什么的?我认为它可以使用给
在我看来,glVertexAttribPointer(它指定与来自 VBO 的特定数据集关联的属性索引)和 glBindAttribLocation(它指定哪个程序顶点索引分配给的属性变量名称,实际上
后者是否会贬低前者? 我正在编写希望在着色器 2.0 硬件上运行的代码,但我想使用更新的编程约定,例如 VAO。 所以我一直在使用 glVertexAttribPointer 函数而不是 glVert
我在 Android 上使用 OpenGL ES 2.0,但我认为这个问题是一个通用的 OpenGL 问题。 我正在学习 OpenGL,并试图准确了解每一帧必须调用哪些 API,而不是只调用一次。我最
我正在尝试在 LWJGL 中创建 Pong 游戏。我已经成功地画出了“球棒”和球,我还可以使用 W 和 S 键让球棒上下移动。 现在我正在尝试使用 shaders 为 bat 着色,但是当我尝试时遇到
我正在将一个正常运行的 OpenGL 应用程序从 Windows 移植到 OSX,并在调用 glEnableVertexAttribArray() 后不断收到“无效操作”(代码 1282)错误。这是渲
调用后glVertexAttribPointer(GLuint index, ...)默认情况下,顶点属性被禁用为 docs说 By default, all client-side capabili
在调用 glVertexAttribPointer(GLuint index, ...) 之后,顶点属性默认禁用为 docs说 By default, all client-side capabili
越来越郁闷了。我一直在尝试让一个简单的 hello world 类型的程序运行,但它就是没有发生。 我使用的是 Windows 7,我的显卡支持较新的 OpenGL。用 freeglut 用 C 语言
我用 SDL 窗口编写了一个 OpenGL 应用程序。在 Mac OSX 10.9 上运行 OpenGL 4.1 的核心配置文件。命令 glClearColor 效果很好,我在屏幕上得到了正确的颜色。
我正在使用 https://github.com/d3kod/Texample2 中的代码在 OpenGL 2.0 中渲染文本。该项目的解释可以在 http://primalpond.wordpres
1) 我是否正确理解要使用顶点数组或 VBO 进行绘制,我需要所有属性在着色器程序链接之前调用 glBindAttribLocation 或在着色器程序成功链接之后调用 glGetAttribLoca
我是一名优秀的程序员,十分优秀!