android纹理缓存,Android OpenGLES渲染到纹理

我为iPhone编写图形应用程序,我正在寻找将我最近的应用程序“层”移植到Android平台。图层是绘画应用程序,允许用户在屏幕上绘制并使用不同的画笔,颜色等创建多层次的绘画......并输出到PSD。这是有桌面同步,涂抹工具,很多好东西... http://www.layersforiphone.com/Android OpenGLES渲染到纹理

我开始在星期一看Android平台,我遇到了一个主要问题。我使用OpenGL来完成所有绘图,因为它提供了最佳性能。但是,有几个地方需要渲染到纹理中,然后使用纹理。例如:

使用刷子的质地和精灵的行来创建纹理黑色涂料冲程甲

穿戴刷色+α的glColor4f然后绘制纹理阿到屏幕上。

在iPhone上,随着用户的手指移动,我可以持续这样做,我可以在第一代iPod Touch上实现12-15fps。这是必要的,因为将颜色和alpha应用于构成画笔描边的单个精灵并不会产生正确的结果(因为精灵重叠并且使笔画太暗)。

Android平台支持OpenGL ES 1.0,但似乎忽略了处理帧缓冲区的关键函数。我无法找到将纹理绑定到帧缓冲区并使用OpenGL进行绘制的方法。

以下是我通常会去了解它在iPhone上:

// generate a secondary framebuffer and bind it to OpenGL so we don't mess with existing output.

glGenFramebuffers(1, &compositingFramebuffer);

glBindFramebuffer(GL_FRAMEBUFFER, compositingFramebuffer);

// attach a texture to the framebuffer.

glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, texture, 0);

// subsequent drawing operations are rendered into the texture

// restore the primary framebuffer and (possibly) draw the rendered texture

glBindFramebuffer(GL_FRAMEBUFFER, originalActiveFramebuffer);

有没有这样的事情在Android平台上?在iPhone上,OpenGL比基于软件的绘图要快得多,而且是唯一可行的解​​决方案(相信我 - 我也写了一个CoreGraphics绘画应用程序......)。也许我可以在Android上采用另一条路线?我愿意跳过任何必要的箍环,但我不会发布应用程序,除非性能为好(当您在屏幕上绘制时为10fps +)。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值