glVertexAttribPointer stride GL_INVALID_VALUE opengl 3.3
glVertexAttribPointer stride GL_INVALID_VALUE opengl 3.3
我遇到了与这个问题中描述的类似的问题,但从未得到回答。当我调用
时glVertexAttribPointer
stride大于此确切值:640
。引发OpenGL GL_INVALID_VALUE错误。根据文档,在一种情况下可以引发这样的错误:
如果stride为负值,则生成GL_INVALID_VALUE。
显然不是我的情况
在OpenGL 4.4中,根据此站点指定最大值并设置为GL_MAX_VERTEX_ATTRIB_STRIDE
是否有一定的魔术数在旧版本的OpenGL(在我的情况下3.3)的最大顶点跨距?
GL_INVALID_VALUE
,还有其他原因吗?在旧版本的OpenGL(在我的情况下是3.3)中是否有一个最大顶点跨距的神奇数字?
旧版本?不。实现没有被允许拒绝你使用任何大步。只要它是正的或零,实现就必须允许它。
是否有其他原因导致该函数引发GL_INVALID_VALUE?
是:硬件无法处理。如果你只得到GL 3.3,那么你的硬件是相当旧的。因此,它可能会有一个低于4.4的2048的要求。
现在很明显,实现不应该给出错误,除非规范说它可以。但是遵守规范从来都不是NVIDIA实现的主要目标…相关文章:
- OpenGL - 在抛出"__gnu_cxx::recursive_init_error"实例后终止调用?
- 了解 GLM- openGL 中的相机转换
- 如何在全屏模式下(在OpenGL中)使背景透明
- 为什么我不能使用 EGL 创建无头 OpenGl 上下文?
- OpenGL大的3D纹理(>2GB)非常慢
- OpenGl glm rotate
- C++atioglxx.pdb未加载错误glBufferData OpenGL
- OpenGL在启用深度测试时不会丢弃我的碎片
- OpenGL相机和相机空间转型的困惑
- OpenGL将纹理四边形渲染为(0,0)
- OpenGL 和 GLM 矩阵无法正确扩展,总是按比例缩小
- 发布旋转矩阵(openGL/glm)
- 如何在Visual Basic中使用矩形函数OpenGL绘制矩形
- 无法使用VAO和EBO(openGL)绘制多个对象
- 为什么我的点没有在 OpenGL 中绘制鼠标所在的位置?
- OpenGL 16 位模板缓冲区?
- 将QOpenGLWidget子类转换为使用Metal而不是OpenGL的子类是否可行?
- 在顶点着色器中使用 OpenGl 的未声明标识符,我在顶点着色器中绘制三角形时遇到问题
- 在 openGL 中多次绑定缓冲区
- glVertexAttribPointer stride GL_INVALID_VALUE opengl 3.3