【问题标题】:OpenGL ES - Pixel 'Interference' at bottom of textureOpenGL ES - 纹理底部的像素“干涉”
【发布时间】:2012-02-04 13:06:43
【问题描述】:

我正在从 UIImage 加载一个 RGBA 像素数据的 int* 数组,对其进行操作,然后将像素设置为 Glubyte* 纹理缓冲区并使用

将它们写入纹理
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, texWidth, texHeight, 0, GL_RGBA, GL_UNSIGNED_BYTE, texBuffer);

这很好用,但是我在屏幕底部得到了一些奇怪的像素化“干扰”。

有人知道是什么导致了这种影响吗?

编辑:自己解决了这个问题,看看我的回答

【问题讨论】:

  • 如何分配texBuffer?尝试分配 texWidth*texHeight*4 字节并用零填充内存。还干扰?如果不是,那么您现有的分配是错误的。

标签: iphone opengl-es texture2d


【解决方案1】:

这里的问题出在 int* 缓冲区声明中,应该是:

int* pixelArray = malloc(4*w*h);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-11-08
    • 1970-01-01
    • 1970-01-01
    • 2011-08-11
    • 2011-05-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多