草庐IT

GlSurfaceView

全部标签

OpenGL ES入门指南(二)

OpenGLES入门指南(二)---环境搭建本篇主要以iOS/Android为例整体流程框架  一、OpenGLES对Android平台的支持情况 二、安卓-环境搭建2.1安卓各种view的对比Android使用OpenGLES需要搭配GLSurfaceView、Renderer,当然也可以使用TextureView,不过TextureView没有GLSurfaceView的OpenGLES初始化操作,所以使用起来有些麻烦,需要自定义OpenGL初始化,本文使用GLSurfaceView初始化OpenGLES。2.2创建GLSurfaceView目标先画它一个三角形,不考虑坐标系的矩阵变换和纹

c++ - Android ndk 上 OpenGLES 1.1 中具有 GLSurfaceView 模式的 FrameBuffers

在AndroidNDK中,是否可以使OpenGLES1.1使用典型的Java端GLSurfaceView模式(覆盖GLSurfaceView.RendereronDrawFrame、onSurfaceCreated等方法),同时在C++端使用框架、颜色和深度缓冲区和VBO?我正在尝试使用这个创建它们:voidES1Renderer::on_surface_created(){//Createdefaultframebufferobject.Thebackingwillbeallocatedforthecurrentlayerin-resizeFromLayerglGenFramebuf

android - 使用 harism page curl 库的 Page Curl 效果,页面背景显示为黑色边框而不是透明度。

您好,我正在使用Harism库来实现卷页效果(https://github.com/harism/android_page_curl)。效果很好,但我的页面背景有一些透明部分,看起来是黑色的。我已经尝试了github论坛(https://github.com/harism/android_page_curl/issues/25)中提到的解决方案,它的工作原理但在那之后curl不起作用。您也可以在那里查看我的查询。您也可以查看随附的屏幕截图。谢谢! 最佳答案 Commentstheselinesintheactivityr.left+

android - GLSurfaceView 的大小和位置

实际上,我有一个项目正在使用GLSurfaceView。此时此组件作为主控件放置在整个屏幕上。在此配置中,我能够正确处理绘图功能。在下一步中,我想更改GLSurfaceView的大小和位置。我想将它放在屏幕中央并将宽度和高度设置为精确的物理尺寸,例如20mmx20mm。您有什么建议或提示我应该如何开始向GLSurfaceView引入这种更改? 最佳答案 Iwanttoplaceitinthecenterofthescreen您需要为父元素设置引力,如Gravity.CENTER。例如,如果它是LinearLayout,则调用line

android - 我必须删除 GLSurfaceView 中的纹理吗?

在AndroidOpenGLES中创建纹理后,我是否必须稍后使用glDeleteTextures()显式删除这些纹理?如果是这样,我将如何设置回调来执行此操作?提前致谢 最佳答案 如果您不再使用纹理,那么您应该调用glDeleteTextures()以便释放底层硬件资源。但是正如EboMike所说,您必须小心使用从先前的上下文实例创建的纹理;为了扩展这个答案,我想创建一个纹理争论类,它包装纹理的ID并从它的finalize()方法调用glDeleteTextures(),但是还有一个名为“contextId”的应用程序静态int,它

android - 从 GLSurfaceView 录制视频和音频并将其导出到 .mp4

我是OpenGL的新手。我想从GLSurfaceView录制视频和音频并将其导出为.mp4(或其他格式)。我有一个GlsurfaceView实现了Renderer我尝试使用bigflake.com中的fadden示例像EncodeAndMuxTest.java,或RecordFBOActivity.java在google/grafika但没有成功,因为我不知道如何实现。是否有任何用于记录GLSurfaceView的示例或“操作方法”? 最佳答案 您可以尝试使用INDEMediaforMobile:https://software.i

android - 创建合适的 Android 启动/加载屏幕

我有一个在GLSurfaceView上使用OpenGL的应用程序。问题是初始加载需要相当长的时间来处理纹理和准备好一切。我想要做的是显示一个简单的PNG(带有轻微的动画),而GLSurfaceView准备就绪。只要它是准备渲染,我想拆除启动画面。正确的做法是什么?我试过ViewFlipper、ViewSwitcher还有一些其他的东西可以在我的R.layout.mainView之间切换和我的GLSurfaceView,但我似乎无法正确处理。有什么想法吗? 最佳答案 第1步:在您的布局XML中使您的GLSurfaceView成为and

android - 如何在 Android 中将 GLSurfaceView 覆盖在 MapView 上?

我想在android中创建一个简单的基于map的应用程序,我可以在其中显示我的当前位置。我想在MapView上覆盖GLSurfaceView,而不是在MapView上覆盖一个简单的图像来表示位置。但我不知道如何实现这一目标。有什么办法吗?请任何知道解决方案的人帮助我。 最佳答案 在我查看文档并意识到MapView扩展了ViewGroup之前,我一直陷入类似的问题,因此覆盖GlSurfaceView实际上结束了非常微不足道。MapView.addView(...)和MapView.LayoutParams允许您做一些非常有用的事情,比

OpenGLES:glReadPixels()获取相机GLSurfaceView预览数据并保存

Android现行的CameraAPI2机制可以通过onImageAvailable(ImageReaderreader)回调从底层获取到Jpeg、Yuv和Raw三种格式的Image,然后通过保存Image实现拍照功能,但是却并没有Api能直接在上层直接拿到实时预览的数据。AndroidCamera预览的实现是上层下发Surface到CameraHAL,由CameraHAL也就是android.hardware.camera.provider@2.4-service进程往Surface对应的Buffer中填充预览数据,然后再copy到SurfaceFling中由OpenGL进行渲染显示。实际相

android - eglPresentationTimeANDROID() : Can I use microedition. khronos 而不是 android.opengl?

我想在我的ExtendedGLSurfaceView(从GLSurfaceView扩展)中使用eglPresentationTimeANDROID。方法出现在:EGLExt.eglPresentationTimeANDROID(android.opengl.EGLDisplaydisplay,android.opengl.EGLSurfacesurface,longtime);我的主要问题是GLSurfaceView使用javax.microedition中的EGLDisplay、EGLContext和EGLSurface.khronos.egl。但是,eglPresentationT