3D content with Compose Multiplatform
summary
Combining Compose Multiplatform with real 3D engines proves trickier than it sounds because Compose/Skia uses 2D orthographic rendering while 3D engines require a perspective camera, so mixing projections in one scene breaks the pipeline. Practical approach uses Filament plus platform bridges: SurfaceView on Android, MTKView on iOS and a Swing/JPanel + JNI path on desktop. A working sample renders models (glTF), Android/iOS run fine, desktop needs manual native libs or Java 21 foreign memory workarounds, and transparency and CocoaPods integration remain unresolved.
AI-written summary · about
chapters (17)
- 0:00Introduction
- 1:113D in 2D scenes challenges
- 2:37Skia and 3D rendering limits
- 5:28Shaders and matrices in 3D
- 6:33Perspective projection issues
- 8:00XR demos vs 3D in 2D
- 9:263D inside Compose Multiplatform
- 11:58Choosing a 3D engine
- 13:25Unity and Unreal limitations
- 14:11Filament for Compose Multiplatform
- 16:00Filament on Android setup
- 19:55Filament on iOS with CocoaPods
- 22:00Filament desktop challenges
- 25:513D models and glTF format
- 27:37Compose for Web unsupported
- 29:01Future improvements
- 30:04Conclusion
related talks
40mBuilding Multiplatform Apps with Compose
35mPut some 3D sparkles in your 2D app
51mShared mobile UIs with Compose Multiplatform
34mBuilding Shared UIs Across Platforms With Compose
39mCompose Multiplatform for iOS: Ready for Production Use
45mThe Adventures of Kotlin And Compose Through the Multiplatform World
45mShared mobile UIs with Compose Multiplatform
35mBuilding Android/iOS Apps with Jetpack Compose
