devices Platform Showcase

One SDK, Every Screen

SceneView delivers native 3D rendering across 9 platforms using each platform's native renderer. One API, every screen, zero compromise.

9
Platforms
2
Renderers
5
Frameworks

Supported Platforms

Native renderer per platform. Filament on Android and Web, RealityKit on Apple.

iOS
SwiftUI + RealityKit
Alpha

Native SwiftUI views with RealityKit rendering. SPM integration in one line. ARKit for augmented reality.

SceneView {
    ModelNode(
        url: "robot.usdz"
    )
}

ARSceneView {
    AnchorNode(anchor) {
        ModelNode(url: "robot.usdz")
    }
}
macOS
SwiftUI + RealityKit
Alpha

Same SceneViewSwift API on macOS. Desktop-class 3D experiences with native Metal rendering via RealityKit.

// Same API as iOS
SceneView {
    ModelNode(
        url: "product.usdz"
    )
}
Web
Kotlin/JS + Filament.js
Alpha

Same Filament engine as Android, running in the browser via WebAssembly. WebGL2 rendering with WebXR AR/VR support.

SceneView.modelViewer(
    'canvas-id',
    'models/robot.glb'
)
Android TV
Compose TV + Filament
Alpha

D-pad navigation, model cycling, auto-rotation. Big-screen 3D experiences optimized for living rooms.

// Same SceneView composable
SceneView(
    modifier = Modifier
        .focusable()
        .onKeyEvent { /* D-pad */ }
) { ModelNode(model) }
Desktop
Compose Desktop (Filament)
Alpha

The SceneViewer composable from sceneview-compose, rendered by Filament through filament-kmp (JDK 22+). Viewer subset only: model, orbit camera, light, environment, tap hit-testing. No AR.

Flutter
PlatformView bridge
Alpha

Flutter plugin with PlatformView wrapping native SceneView on Android (Filament) and iOS (RealityKit).

SceneViewWidget(
    model: 'models/robot.glb',
    autoRotate: true,
)
React Native
Fabric bridge
Alpha

React Native Turbo Module with Fabric component bridging to native SceneView on Android and iOS.

<SceneView
    model={"models/robot.glb"}
    autoRotate={true}
/>

Architecture

Shared logic in Kotlin Multiplatform, native renderer per platform. No compromise on performance.

Shared Core (KMP)
sceneview-core
math, collision, geometry, animations, physics
arrow_downward
Android Renderer
sceneview
Filament + Jetpack Compose
Apple Renderer
SceneViewSwift
RealityKit + SwiftUI
arrow_downward
UI Layer
Compose UI
SceneView { }, ARSceneView { }
UI Layer
SwiftUI
SceneView { }, ARSceneView { }

Feature Comparison

What each platform supports today

Platform Renderer 3D AR Status Framework
Android
Filament check_circle check_circle Stable Jetpack Compose
iOS
RealityKit check_circle check_circle Alpha SwiftUI
macOS
RealityKit check_circle remove Alpha SwiftUI
visionOS
RealityKit check_circle check_circle Alpha SwiftUI
Web
Filament.js check_circle check_circle Alpha Kotlin/JS
Desktop
Filament check_circle remove Alpha Compose Desktop
Android TV
Filament check_circle remove Alpha Compose TV
Flutter
Native check_circle check_circle Alpha PlatformView
React Native
Native check_circle check_circle Alpha Fabric

Start Building Today

One SDK, every screen. Add native 3D to your app in minutes.