android下opengl使用问题

ryfdizuo 2013-02-18 06:07:31
直接基于GLSurfaceView,
且基于这些事实:
1. 一个activity只能有一个GLSurfaceView,
2. 一个GLSurfaceView内有一个UI主线程和一个GL渲染线程。

我现在有个需求:
想基于OpenGL做一个service:负责接收顶点数据,OpenGL渲染的内容并不直接显示,而是通过以bitmap的形式传给UI线程显示。







...全文
261 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
sky472 2013-02-26
  • 打赏
  • 举报
回复
这个我没有试过,但我估计是依赖于surface的,即使如此,你也可以先在渲染线程中渲染,把结果读到一个缓存中,再把这个缓存发送给另一个UI线程
sky472 2013-02-25
  • 打赏
  • 举报
回复
你说的就是离屏渲染技术,可以用eglCreatePBufferSurface创建一个缓存,渲染到缓存中,然后调用glReadPixels读出来
wangdong20 2013-02-25
  • 打赏
  • 举报
回复
可以使用两个方法void update(float deltaTime),void present(float deltaTime) update负责图形背后的事件处理,present负责渲染画面 实现GLSurfaceView接口会有一个方法是onDrawFrame()记不太清是什么方法了 在这个方法先记录该类所处状态 当该类处于正在工作状态,就在while循环里调用update(deltaTime),present(deltaTime)方法 并利用系统时间System.NanoTime()更新deltaTime
ryfdizuo 2013-02-25
  • 打赏
  • 举报
回复
引用 4 楼 sky472 的回复:
你说的就是离屏渲染技术,可以用eglCreatePBufferSurface创建一个缓存,渲染到缓存中,然后调用glReadPixels读出来
hi,首先感谢兄弟的回复。 是的,pbuffer 实现离线渲染我在windows下实现过,android平台不太熟悉。 创建pbuffer 是否依赖于android的Surface或者view?能在单独的线程中创建pbuffer吗? 谢谢回复~
梦_枫 2013-02-19
  • 打赏
  • 举报
回复
GL学习中。。。需求是可行的
veardn 2013-02-19
  • 打赏
  • 举报
回复
你那两个事实看的不是很明白,但那个需求应该是可行的
ryfdizuo 2013-02-18
  • 打赏
  • 举报
回复
这个需求不知可行性如何?请高手指点~

80,351

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧