Stay organized with collections
Save and categorize content based on your preferences.
Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2025-05-15 UTC.
[null,null,["Last updated 2025-05-15 UTC."],[],[],null,["# androidx.graphics.opengl\n========================\n\n*** ** * ** ***\n\n[Kotlin](/reference/kotlin/androidx/graphics/opengl/package-summary \"View this page in Kotlin\") \\|Java\n\nInterfaces\n----------\n\n|--------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| [FrameBufferRenderer.RenderCallback](/reference/androidx/graphics/opengl/FrameBufferRenderer.RenderCallback) | Callbacks invoked to render content leveraging a [FrameBufferRenderer](/reference/androidx/graphics/opengl/FrameBufferRenderer) |\n| [GLFrameBufferRenderer.Callback](/reference/androidx/graphics/opengl/GLFrameBufferRenderer.Callback) | [GLFrameBufferRenderer](/reference/androidx/graphics/opengl/GLFrameBufferRenderer) callbacks that are invoked to render OpenGL content within the underlying buffers. |\n| [GLRenderer.EGLContextCallback](/reference/androidx/graphics/opengl/GLRenderer.EGLContextCallback) | Callbacks invoked when the GL dependencies are created and destroyed. |\n| [GLRenderer.RenderCallback](/reference/androidx/graphics/opengl/GLRenderer.RenderCallback) | Interface used for creating an [EGLSurface](https://developer.android.com/reference/android/opengl/EGLSurface.html) with a user defined configuration from the provided surface as well as a callback used to render content into the surface for a given frame |\n| [SyncStrategy](/reference/androidx/graphics/opengl/SyncStrategy) | A strategy class for deciding how to utilize [SyncFenceCompat](/reference/androidx/hardware/SyncFenceCompat) within [FrameBufferRenderer.RenderCallback](/reference/androidx/graphics/opengl/FrameBufferRenderer.RenderCallback). |\n\nClasses\n-------\n\n|----------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| [FrameBuffer](/reference/androidx/graphics/opengl/FrameBuffer) | Object that enables rendering into a [HardwareBuffer](https://developer.android.com/reference/android/hardware/HardwareBuffer.html) by creating a frame buffer object from it by leveraging Android specific EGL extensions to create an [EGLImageKHR](/reference/androidx/opengl/EGLImageKHR) object that is loaded as a texture. |\n| [FrameBufferRenderer](/reference/androidx/graphics/opengl/FrameBufferRenderer) | [GLRenderer.RenderCallback](/reference/androidx/graphics/opengl/GLRenderer.RenderCallback) implementation that renders content into a frame buffer object backed by a [HardwareBuffer](https://developer.android.com/reference/android/hardware/HardwareBuffer.html) object |\n| [GLFrameBufferRenderer](/reference/androidx/graphics/opengl/GLFrameBufferRenderer) | Class responsible for supporting rendering to frame buffer objects that are backed by [HardwareBuffer](https://developer.android.com/reference/android/hardware/HardwareBuffer.html) instances. |\n| [GLFrameBufferRenderer.Builder](/reference/androidx/graphics/opengl/GLFrameBufferRenderer.Builder) | Builder used to create a [GLFrameBufferRenderer](/reference/androidx/graphics/opengl/GLFrameBufferRenderer) with various configurations |\n| [GLRenderer](/reference/androidx/graphics/opengl/GLRenderer) | Class responsible for coordination of requests to render into surfaces using OpenGL. |\n| [GLRenderer.RenderTarget](/reference/androidx/graphics/opengl/GLRenderer.RenderTarget) | Handle to a [android.view.Surface](https://developer.android.com/reference/android/view/Surface.html) that is given to [GLRenderer](/reference/androidx/graphics/opengl/GLRenderer) to handle rendering. |"]]