Menu toggle
latest: v0.5.3 GitHub

New versions are released through GitHub, so the reference page is the GitHub Releases page.

Starting from v0.3.1, you can support development through the GitHub Sponsors program. Companies can share a tiny part of their revenue and get private support hours in return. Thanks!


  • New: Upgrade to Kotlin 1.4 ([#27][27])
  • New: Add a few getters to GlTexture and GlSharedStorageBuffer ([#27][27])


  • Fix: fixed a bug with the Android/JVM implementation (#23)


Native targets are now published to JCenter and can be added as dependencies from Kotlin Multiplatform projects (#22). You can add the granular dependencies:

implementation("com.otaliastudios.opengl:egloo-android:0.5.1") // android
implementation("com.otaliastudios.opengl:egloo-androidnativex86:0.5.1") // android native
implementation("com.otaliastudios.opengl:egloo-androidnativex64:0.5.1") // android native
implementation("com.otaliastudios.opengl:egloo-androidnativearm32:0.5.1") // android native
implementation("com.otaliastudios.opengl:egloo-androidnativearm64:0.5.1") // android native

Or simply add the common dependency for your Kotlin Multiplatform common source set:

// This will include the correct artifact into your targets


This release adds support for native targets. We provide an implementation for Android native libraries, but other targets like iOS can probably be added easily. These artifacts are not currently published but can be built using ./gradlew :library:publishLocal (#20).

Other changes:

  • New: EglCore.makeCurrent() to make the context current with no surfaces (#18)
  • New: GlBuffer base class, and GlShaderStorageBuffer implementation for SSBOs
  • New: GlShader abstraction for GlPrograms


  • New: GlTexture class to create textures (#14)
  • New: GlFramebuffer class to create framebuffers (#14)
  • New: Gl2dMesh drawable (#14)


First versioned release.