pushinbr / pam-native-3d
Native Filament and RealityKit real-time 3D scenes for PAM Native.
Package info
github.com/push-in/pam-native-3d
Type:pam-native-plugin
pkg:composer/pushinbr/pam-native-3d
Requires
- php: ^8.5
- pushinbr/pam-native: ^0.8.0
Requires (Dev)
- phpstan/phpstan: ^2.1
- pushinbr/pam-native-plugin-kit: ^0.2.0
This package is auto-updated.
Last update: 2026-08-25 20:04:06 UTC
README
PAM Native 3D
Native 3D scenes without moving a render loop through PHP.
Render product previews, animated models, and immersive native scenes through Filament on Android and RealityKit on iOS.
Documentation · Quick start · What you can build · PAM ecosystem · Issues
Why PAM Native 3D
Render product previews, animated models, and immersive native scenes through Filament on Android and RealityKit on iOS. The public API is strictly typed for PHP 8.5; expensive or frame-sensitive work stays in Rust or the platform SDK instead of crossing the application boundary every frame.
| Best for | A focused capability you can add to any PAM Native application |
| Native path | Google Filament · RealityKit |
| Application model | Composer package + generated native integration |
| Design rule | Independent module; no feed, vertical, or application template bundled |
What you can build
- Interactive product and property previews
- Animated characters, education, and data visualization
- High-fidelity 3D surfaces embedded in ordinary native screens
Quick start
Already have a PAM Native project? Add only this capability:
pam composer require pushinbr/pam-native-3d pam doctor --fix
New to PAM? Follow the five-minute PAM Native setup once, then return here. Your application stays a normal Composer project with a committed lockfile.
See it in action
This package renders a real-time 3D asset with Google Filament on Android and RealityKit on iOS. It is independent from canvas, raw GPU shaders, AR, games, and application templates. Render and animation loops remain native.
use Pam\Native\ThreeD\Scene3D; use Pam\Native\ThreeD\SceneAsset; return Scene3D::make(new SceneAsset( androidGlb: 'models/robot.glb', iosUsdz: 'models/robot.usdz', animation: 0, ));
Assets are application-sandbox relative: GLB on Android and USDZ on iOS. Use an asset pipeline to generate both formats from one source model. Platform support: Android API 26+, iOS 15+, PHP 8.5+, and PAM Native 0.8.x. Filament is Apache-2.0 licensed.