Making the world spin, does it have to be so hard?
summary
A lightweight offline 3D globe built with Kotlin + Jetpack Compose and an OpenGL ES renderer uses Natural Earth vector data postprocessed into a ~1 MB vertex/index bundle, integrated via AndroidView wrapping a GLSurfaceView, render‑when‑dirty updates, Compose animations and gesture-driven animatables; markers, zoom bounds and snapping work on-device and the library ships inside Mullvad VPN to 500,000+ Android devices in one month with smooth animations and low bandwidth requirements.
AI-written summary · about
chapters (11)
- 0:00Introduction
- 1:03Company ethos
- 2:05Lightweight interactive map
- 3:53Android globe with OpenGL
- 5:18GL surface with Compose
- 7:43Efficient rendering
- 9:06Spinning globe animations
- 12:07Prevent surface updates
- 13:29Interactive gestures markers
- 15:15Fling boundary animations
- 17:24Conclusion
related talks
36mCreative Coding with Compose
35mPut some 3D sparkles in your 2D app
36mBuild The Million-Dollar Animation
37mAndroid Canvas: Building one of the worlds largest Interactive DataViz exp.
43mPixel with Superpowers: Modern Android UI with AGSL Shaders
48mA page out of Server driven UI on Android
37mThe JPEG of 3D: Bringing 3D scenes and objects into your 2D Android app with glTF
32mJetpack Compose for Games & Animations
