three_d_viewer 0.3.1
three_d_viewer: ^0.3.1 copied to clipboard
A high-performance Flutter package for viewing 3D models (GLB/GLTF) with support for animations, camera controls, custom textures, and AR using Three.js.
0.3.1 #
- Overlay Improvements: Added
enableOcclusiontoThreeDOverlay, allowing you to toggle whether a widget is hidden when behind model geometry. - Accuracy Fixes: Improved occlusion detection precision (epsilon adjustment) to prevent flickering on surfaces.
- Camera Fix: Added a frustum check to ensure hotspots and overlays correctly disappear when the camera moves past them.
- Internal: Re-applied package-aware asset pathing for reliable dependency usage.
0.3.0 #
- Animation Playback: Added
playAnimation(name, {loop})toThreeDViewerController. You can now trigger specific animations by name with optional looping. - Asset Loading: Improved asset path resolution to ensure the internal web viewer loads correctly when the package is used as a dependency.
0.2.1 #
- Bug Fix: Fixed an issue where internal web viewer assets failed to load when the package was used as a dependency in another project.
0.2.0 #
- Flutter Widget Overlays: Introduced
ThreeDOverlaysystem. You can now place any native Flutter widget at a specific 3D coordinate on the model. Widgets track the model's movement and support occlusion detection (disappearing when behind the model). - iOS Requirements: Bumped minimum iOS deployment target to 15.0 for better performance and modern AR features.
- Internal Preparation: Added pre-build scripts to ensure Flutter framework consistency on iOS.
- Linting: Optimized
analysis_options.yamlto exclude generated platform directories.
0.1.2 #
- Web Support: Added initial support for Flutter Web.
- iOS Stability: Improved tap detection and OrbitControls stability on iOS.
- JS Fixes: Added
resetPointersto prevent "stuck" interactions during animations or double-taps. - Bug Fixes: Adjusted tap sensitivity threshold for better responsiveness.
- Pathing: Improved package-aware asset pathing for both mobile and web.
0.1.1 #
- Stability fixes and internal improvements.
0.1.0 #
- AR Support: Added
launchAR()method to view models in Augmented Reality on iOS and Android. - Hotspots: Introduced
ThreeDHotspotfor interactive, tracking markers on 3D models with click callbacks. - Auto-Rotate: Added
ThreeDAutoRotateConfigto control model rotation automatically. - Dynamic Material Control: Added
setMaterialColor()to change mesh colors at runtime. - View Navigation: Added
goToView()to animate the camera to specific angles and distances. - Advanced Debugging: Replaced
showDebugHelperswith a more granularThreeDDebugConfig. - Improved Interaction: Added
onObjectDoubleTappedand optionalenableDoubleTapZoom. - Environment Control: Added
ThreeDEnvironmentConfigfor future HDR/Environment intensity support. - Bug Fixes: Improved initial loading sequence and robust tap detection across devices.
0.0.2 #
- Added
showDebugHelpersoption to display axes and grid helpers. - Added
autoCenteroption to automatically center the model at the origin. - Improved camera positioning and orbit controls.
- Added support for
initialTargetPositionto specify the point the camera looks at. - Enhanced internal load error handling.
- Fixed unused import warning in
lib/three_d_viewer.dart.
0.0.1 #
- Initial release.
- High-performance 3D model viewing using Three.js.
- Support for GLB and GLTF formats.
- Integrated animation controls.
- Customizable camera limits and zoom configuration.
- Support for both local assets and remote URLs.