three_js 0.1.2 copy "three_js: ^0.1.2" to clipboard
three_js: ^0.1.2 copied to clipboard

Flutter package converted from threejs and three_dart to allow users to view, edit, and control 3D models.

three_js #

Pub Version analysis License: MIT

A 3D rendering engine for dart (based on three.js and three_dart) that allows users to view, edit and manipulate their 3D objects. The current builds uses angle for desktop and mobile, and WebGL2 for web applications.

Features #

Gif of dash playing a game.

This is a dart conversion of three.js and three_dart, originally created by @mrdoob and has a coverted dart fork by @wasabia.

Requirements #

MacOS

  • Minimum os Deployment Target: 10.14
  • Xcode 13 or newer
  • Swift 5
  • Metal supported

iOS

  • Minimum os Deployment Target: 12.0
  • Xcode 13 or newer
  • Swift 5
  • Metal supported

iOS-Simulator

  • No longer supported due to IOSurface issue, please use override to flutter_angle: ^0.1.0 for testing on simulator.

Android

  • compileSdkVersion: 34
  • OpenGL supported
  • Vulkan supported

Windows

  • Intel supported.
  • AMD supported.
  • Direct3D 11 and OpenGL supported

Web

  • WebGL2 supported

WASM

  • Currently not supported due to WebGL2RenderingContext conversion issue.

Linux

  • Unsupported

Getting started #

To get started add three_js to your pubspec.yaml file.

Usage #

This project is a simple 3D rendering engine for flutter to view, edit, or manipulate 3D models.

Example #

Find the example for this API here, for more examples you can click here, and for a preview go here.

Know Issues #

All

  • MD2 annimations do not work
  • Collada animations do not work
  • Collada kinnametics does not work
  • PMREM gives weird artifacts
  • VideoTexture only works for web

MacOS

  • Audio has a bug

iOS

  • Protoplanets does not function correctly

Android

  • Morphtargets dones not work
  • Some RGBELoaders cause app to crash

Windows

Web

  • Lens Flare not working correctly
  • Postprocessing does not work
  • Track pad has some bugs

Librarues and Plugins #

ADD-ONS

  • Omio a physics engine for three_js
  • Cannon a physics engine for three_js
  • Terrain a map generator for three_js

Contributing #

Contributions are welcome. In case of any problems look at existing issues, if you cannot find anything related to your problem then open an issue. Create an issue before opening a pull request for non trivial fixes. In case of trivial fixes open a pull request directly.

24
likes
140
points
717
downloads

Publisher

unverified uploader

Weekly Downloads

2024.06.15 - 2025.05.10

Flutter package converted from threejs and three_dart to allow users to view, edit, and control 3D models.

Repository (GitHub)

Topics

#threejs #games #animations #flutter3d #model3d

Documentation

API reference

License

MIT (license)

Dependencies

flutter, three_js_advanced_loaders, three_js_animations, three_js_audio, three_js_controls, three_js_core, three_js_core_loaders, three_js_curves, three_js_geometry, three_js_math, three_js_simple_loaders, three_js_text

More

Packages that depend on three_js