- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试将传递函数加载为1D纹理,如下所示:
glBindTexture(GL_TEXTURE_1D, transfer);
glTexStorage1D(GL_TEXTURE_1D, 1, GL_RGBA32F, 11);
glTexSubImage1D(GL_TEXTURE_1D, 1, 0, 11, GL_RGBA, GL_FLOAT, props.transColors);
props.transColors
是一个浮点数组(可以在运行时从GUI更改这些值):
float transColors[4 * 11] =
{
1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f,
1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f,
1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f,
1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f
};
glTexSubImage1D()
每帧将数组作为1D纹理加载。
glTexSubImage1D()
将始终引发GL_INVALID_VALUE错误。从文档中,该错误可能是由于以下原因之一引起的:
GL_INVALID_VALUE is generated if level is less than 0.
GL_INVALID_VALUE may be generated if level is greater than log2 max, where max is the returned value of GL_MAX_TEXTURE_SIZE.
GL_INVALID_VALUE is generated if xoffset<−b, or if (xoffset+width)>(w−b), where w is the GL_TEXTURE_WIDTH, and b is the width of the GL_TEXTURE_BORDER of the texture image being modified. Note that w includes twice the border width.
GL_INVALID_VALUE is generated if width is less than 0.
最佳答案
第二个参数(在GL_TEXTURE_1D
之后)是mipmap级别。级别0是最大的mipmap级别。您的图片分配了一个级别(这是glTexStorage1D
的第二个参数),但是您尝试上载第二个级别(因为它们从0开始)。将0传递给glTexSubImage1d
而不是1。
即使您的纹理确实具有多个mipmap级别,您要上传的数据对于第二个级别还是太大了。
关于c++ - 加载纹理时,此示例中是什么导致glTexSubImage1D()-GL_INVALID_VALUE错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59357036/
调用 glTexImage2D() 后出现 GL_INVALID_VALUE 错误 GLCheckForErrors(); // no error glTexImage2D(GL_TEXTURE_2
编写一个 OpenGL 程序在屏幕上绘制一个正方形,但遇到无效值错误。调用 MyGLCall(glVertexAttribPointer(i,) 时发生错误。MyGLCall 是 GLCALL 的抽象
在立方体贴图数组纹理上调用 glTextureStorage3D 时,我得到一个 GL_INVALID_VALUE。我的代码非常抽象,但是将纹理创建中的原始 gl 代码转储到 gl 错误归结为: [S
我在以下代码中的 glUseProgram(mYUVProgram); 处收到 GL_INVALID_VALUE , 0x0501 错误。它发生在恢复应用程序时。根据glUseProgram docs
我使用的是 this minimal example 的稍微修改过的版本让我的 OpenGL 代码(在 Qt 5.2.0 中)与 Oculus HMD 一起工作。相关部分我没有改动。 然而,在gl_u
我正在尝试绘制部分平铺图像,但在调用 glDrawElements 函数时出现 GL_INVALID_VALUE 错误。当我用 glDrawArrays 更改此功能时没有问题。问题是索引计数参数不是负
这个问题在这里已经有了答案: Direct State access with vertex buffers (1 个回答) 1年前关闭。 说明 我目前正在学习 OpenGL,并想尝试 OpenGL
我正在尝试将 OpenGL 程序移植到 GLESv2。该程序使用以下代码将纹理设置为默认帧缓冲区(如果我将其渲染到也适用于 OpenGL 的 fbo,它也会失败)。 glBindFramebu
我正在尝试使用 OpenGLES2.0 为 Android 开发一款小游戏,但我遇到了这个问题,无法实现设备之间的兼容性。我在两台设备上测试我的应用程序,一台 Xperia Z1 和一台 Galaxy
我遇到的问题与 this question 中描述的类似,从未得到答复。基本上在我打电话的时候 glVertexAttribPointer stride 大于这个精确值:640。引发 OpenGL G
我在使用 glCompressedTexSubImage2D 时遇到了一个奇怪的问题在我的 Android 手机(Adreno 530 GPU)上使用 ASTC 8x8 纹理。我的设置最初包含一个用于
我正在尝试在 android 上构建一个小的 Open GL2.0 演示应用程序,但出现以下错误 登录猫 07-02 20:50:40.110: E/libEGL(1252): call to Ope
关闭。这个问题需要debugging details .它目前不接受答案。 编辑问题以包含 desired behavior, a specific problem or error, and th
我是一名优秀的程序员,十分优秀!