- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
苹果手绘示例GLPaint , 使用 OpenGL ES 绘制不能用大框架绘制。我需要在大 Canvas 上绘制超过 {2410, 1808} 的内容。但是当我尝试绘图时,控制台上会显示一条消息,
2012-06-05 14:29:40.780 GLPaint[3390:707] Frame of drawingView: {{-827.222, -567.004}, {2410, 1808}}2012-06-05 14:29:40.884 GLPaint[3390:707] failed to make complete framebuffer object 8cd6
On my code I have set the frame as-
//PaintingViewGL performing the freehand drawing of OpenGL ES
//drawingView is a UIView with dynamic frame size
paintingViewGL = [[PaintingViewGL alloc] initWithFrame:drawingView.frame];
paintingViewGL.backgroundColor = [UIColor clearColor];
[drawingView addSubview:paintingViewGL];
paintingViewGL.center = drawingView.center;
paintingViewGL.hidden = NO;
最佳答案
对于 iPad 2 之前的设备,最大纹理大小为 2048 x 2048,因此您不能绘制大于该大小的纹理或帧缓冲区对象。您只会看到错误和黑屏。在较新的设备(iPad 2、Retina iPad、iPhone 4S)上,此纹理大小限制已增加到 4096 x 4096。
在更大的 Canvas 上绘图的唯一解决方案是在 OpenGL ES 中创建平铺机制,就像 CATiledLayer 在 Core Animation 中所做的那样。不过,祝您好运,因为如果您对 OpenGL ES 渲染不太熟悉,这将是一项重大任务。
此外,您将在 OpenGL ES 中遇到非常大的场景的内存问题,尤其是在较旧的 iOS 设备上。对于您提到看到警告的 1600x1200 图像,每个未压缩的帧本身占用约 7.7 MB 的内存。如果您有多个图层或纹理,如果您不小心,可能会很快加起来并耗尽设备上的可用内存。对于 2410x1808 图像,您现在看到的是每帧 17.4 MB,因此这是您希望平铺它以仅使用您当时需要的平铺的另一个原因。
关于iOS:GLPaint 无法在大框架上绘制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10892455/
我是 iPhone 应用程序开发新手,目前正在为 iPhone 开发一个简单的绘画应用程序。我首先使用 GLPaint 源代码。我尝试使用以下方法更改画笔大小。 我创建了一个 UIViewContro
我正在尝试通过逆向工程 GLPaint 在白色背景上绘制。我已经尝试过 kSaturation、kLuminosity 和 glBlendFunc 的每种组合,以及我能想到的画笔纹理的几乎所有组合(黑
苹果手绘示例GLPaint , 使用 OpenGL ES 绘制不能用大框架绘制。我需要在大 Canvas 上绘制超过 {2410, 1808} 的内容。但是当我尝试绘图时,控制台上会显示一条消息, 2
我正在尝试在 iPhone 上开发一个复杂的绘画应用程序。我目前正在使用 Quartz 绘图(例如 CGContext...)。不幸的是,Quartz 开销对于我正在做的绘图类型来说太慢了,我正在使用
目前我正在使用基于 GLpaint 的绘图应用程序。保存当前屏幕对我来说变得非常痛苦。我有一个 ViewController,在 View Controller 的顶部,我加载了 UIIMageVie
作为修改GLPaint的一部分,我尝试添加删除功能,用户可以选择橡皮擦按钮并像绘画一样删除绘制的区域。 我尝试在 "renderLineFromPoint:(CGPoint)start toPoint
我正在使用 GLPaint 在 UIView 中绘画,但我不想使用橡皮擦。我知道有删除刷的代码是: glBlendFunc(GL_ONE, GL_ZERO); glColor4f(0, 0, 0, 0
我目前使用的库基于 Apple 的 GLPaint 示例,用于在 Open GL 的屏幕上绘图。目前,每当 Canvas 保存和恢复 session 时,都会绘制线条(可以看到进度),如果要渲染的点很
我已经下载了Apple提供的GLPaint示例,正在尝试了解它的结构。 我想更改应用程序中使用的 brushImage,以便我可以改变绘图时使用的画笔类型。我试图重新加载 View ,以便找到一种方法
我正在开发一个基于 GLPaint 代码的绘图应用程序。有人知道如何获得这样的效果吗?我已经尝试使用不同的宽度值和画笔高度值,但它仍然保持不变。 我需要考虑 glBlendFunc() 吗?或者是否可
我们正在为新应用程序使用 GLPaint 示例。我们希望向用户展示绘制少量对象的方法。看到apple GLPaint有一个例子,如何将点的数据回放到绘图上。 因此,我们设法提供了自己的数据,并且除了使
我最近下载了 GLPaint 示例代码并查看了其中非常有趣的部分。有一个 recordedPaths NSMutableArray,其中包含点,然后由 GLPaint 读取和绘制。 这里声明: NSM
我正在开发绘画应用程序。我试过用 CoreGraphics/Quartz 2D 来做,绘制曲线算法很慢。所以我们决定切换到 OpenGL ES。 我从来没有任何 OpenGL 经验,所以我从苹果找到了
我想重写 Apple 源代码,GLPaint 应用程序,但不像示例那样使用 OpenGL,我想使用 Core Graphics 库。但我坚持像 GLPaint 一样显示纹理。 这是我在 Core Gr
您好,我正在试用绘图应用程序,但在保存绘制的图像时遇到了问题。现在我很早就开始学习这个但是我已经添加了代码: How to get UIImage from EAGLView?保存绘制的图像。 我创建
我想在示例代码“GLPaint”上支持纵向和纵向颠倒。这个应用程序支持纵向和纵向颠倒的代码是什么? 示例代码“GLPaint” http://developer.apple.com/library/i
我在一个类似于 GLPaint 的项目中遇到 GLKit 问题。 首先,我没有使用 GLKViewController,而只是添加到我的类中的 GLKView。 我的问题是,当我在 GLKView 中
我正在开发一款基于 Apple 的 GLPaint 示例代码的应用程序。我已将透明颜色更改为透明黑色并添加了一个不透明度 slider ,但是当我将颜色与低不透明度设置混合在一起时,它们不会按照我期望
有没有人尝试过使用 OpenGl ES 2.0 的 GLPaint 示例应用程序?我尝试使用 glMatrixMode()、glPointSize()、glOrthof()、glTexEnvf() 方
我正在为 iPad 编写一个类似 GLPaint 的绘图应用程序,但是我遇到了一个绊脚石。具体来说,我目前正在尝试实现两件事: 1) 可以绘制的背景图像。 2) 绘制临时形状的能力,例如您可能会画一条
我是一名优秀的程序员,十分优秀!