- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在执行以下命令,这是我从几个不同的教程中得出的(只是一个渲染 channel ,未显示初始化代码,但对于无纹理基元来说效果很好):
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrthof(0, xSize, 0, ySize, -1.0f, 1.0f);
glMatrixMode(GL_MODELVIEW);
glColor4f(1.0f, 1.0f, 1.0f, 1.0f);
glEnable(GL_TEXTURE_2D);
glBlendFunc(GL_ONE, GL_SRC_COLOR);
GLuint texture[1];
glGenTextures(1, &texture[0]);
glBindTexture(GL_TEXTURE_2D, texture[0]);
glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_LINEAR);
int width = 50;
int height = 50;
void* textureData = malloc(width * height * 4);
CGColorSpaceRef cSp = CGColorSpaceCreateDeviceRGB();
CGContextRef ct = CGBitmapContextCreate(textureData, width, height, 8, width*4, cSp, kCGImageAlphaPremultipliedLast | kCGBitmapByteOrder32Big);
CGContextSetRGBFillColor(ct, 0, 1, 0, 1);
CGContextFillRect(ct, CGRectMake(0, 0, 50, 50));
CGContextRelease(ct);
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, width, height, 0, GL_RGBA, GL_UNSIGNED_BYTE, textureData);
float verts[] = {
0.0f, 0.0f, 0.0f,
50.0f, 0.0f, 0.0f,
0.0f, 50.0f, 0.0f,
50.0f, 50.0f, 0.0f
};
float texCords[] = {
0.0f, 0.0f,
1.0f, 0.0f,
0.0f, 1.0f,
1.0f, 1.0f
};
glVertexPointer(3, GL_FLOAT, 0, verts);
glTexCoordPointer(2, GL_FLOAT, 0, texCords);
glDrawArrays(GL_TRIANGLE_STRIP, 0, 4);
glDisable(GL_TEXTURE_2D);
结果是一个白色方 block 。不是预期的绿色。谁能发现我的代码中导致渲染失败的错误吗?
我希望能够使其正常工作,然后将其转移到文本渲染。
最佳答案
问题是 width
和 height
不是 2 的幂。解决办法有两种:
GL_TEXTURE_RECTANGLE_ARB
而不是 GL_TEXTURE_2D
。在使用此扩展之前,您必须启用它。请注意,矩形纹理不支持 mipmap。关于iphone - OpenGL ES;渲染从 CGBitmapContext 创建的纹理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2713890/
我在创建 CGBitmapContext 时遇到问题。 CGContextRef bitmapContext = CGBitmapContextCreate(nil, imageSize.width,
我有一个 CGBitmap 上下文,其中保存了在屏幕上绘制的所有内容。当我按下一个名为 reset 的按钮时,我希望 UIView 中绘制的所有内容都被删除。如果将 cacheBitmap 和缓存上下
我正在尝试用纯红色填充 CGBitmapContext 并获取 CGImgRef,但图像是全透明的。这是代码 CGColorSpaceRef colorSpace = CGColorSpaceCrea
我对 Objective-C 比较陌生,可以将 png 图像转换为 CGBitmapContext。如果是,我该如何实现。 最佳答案 虽然无法从 UIImage 获取像素值,但可以通过 UIImage
我创建了一个 256 x 256 的 CGBitmapContext,并且我有一个 CGImageRef,我想将其绘制到此上下文中。我的目标是裁剪图像(并最终创建图像图 block ),但如果我使用
如何替换 CGBitmapContext 中已绘制的特定颜色(RGB 值)? 有什么简单的方法吗? 提前致谢。 最佳答案 您需要通过执行以下操作来获得指向像素和有关其格式的信息的指针: // This
我有一个 RGB 格式的原始图像缓冲区。我需要将它绘制到 CGContext,以便获得 ARGB 格式的新缓冲区。我通过以下方式实现这一点: 使用CGDataProviderCreateWithDat
我正在尝试使用 Core Graphics 开发绘图应用程序。我想让背景处于 alpha 状态,但它是黑色的。我尝试使用所有不同类型的位图信息类型但没有成功。 kCGImageAlphaPremult
我们在使用 CGBitmapContext 中的函数 ShowTextAtPoint 显示德语元音变音文本时遇到问题。变音字符不显示。 我们尝试从 XCode 转换代码: CGContextSelec
我正在尝试弄清楚如何使用 CMYK 色彩空间创建位图上下文并在其中绘制图像。 我正在使用 Apple 问答 here 中的代码,并对其进行修改以创建 CMYK 色彩空间并在其中绘制。在我的日志中,我收
我正在执行以下命令,这是我从几个不同的教程中得出的(只是一个渲染 channel ,未显示初始化代码,但对于无纹理基元来说效果很好): glMatrixMode(GL_PROJECTION); glL
我很想知道我在这里做错了什么。我是 CGImageRefs 的新手,所以任何建议都会有帮助。 我正在尝试创建一个位图图像,该图像的像素值是另一个位图像素的加权和,并且两个位图每个 channel 都是
我有两张图片。第一个 (avatar) 是 640x640,第二个 (like) 是 21x20。当我试图先画第二张时,我明白了,但质量很差。这是代码: var bounds = targeImage
我正在使用下面的代码来呈现 PDF 页面的预览。然而,它正在使用大量内存(每页 2-3MB)。 在我看到的设备日志中: : CGBitmapContextInfoCreate: unable to a
所以我在这个过程中有一个基本的绘图应用程序,可以让我画线。我绘制到屏幕外位图,然后在 drawRect 中显示图像。它可以工作,但速度太慢,在您用手指绘制后约半秒更新一次。我从本教程中获取代码并对其进
如果在 UIKit 中,包括 drawRect,是否会自动处理 Retina 显示的高清方面?那么这是否意味着在 drawRect 中,1024 x 768 View 的当前图形上下文实际上是一个 2
我试图将特定的颜色矩形绘制到 CGBitmapContext 中,然后将像素值与我绘制的颜色进行比较(一种 HitTest )。 在 Leopard 上这工作正常,但在 SnowLeopard 上我得
我正在 Mac OS X(不是 iOS)上使用矢量图形绘图,并且在 Mac OS X 上处理矢量图形基元时,我遇到了像素之间的经典绘图导致线条模糊等。我直接将 Core Graphics/Quartz
我是一名优秀的程序员,十分优秀!