three-engine let's you create a three.js scene with one line of code.
Complatible with three.js r.148
npm install three-engine
import * as THREE from 'three';
import ThreeEngine from 'three-engine';
new ThreeEngine({
callbacks: {
init: threeEngine => {
const box = new THREE.Mesh(new THREE.BoxGeometry(0.5, 0.5, 0.5), new THREE.MeshStandardMaterial);
box.setupClickable();
threeEngine.scene.add(box);
box.onClick = function(){console.log('Clicked')};
box.onHover = function(){console.log('Hovered')};
}
},
setup: {
enableControls: true,
enableTestLights: true,
enableAntialias: true,
DEV_MODE: true
}
});
You can find example in /examples/example.js. To run example:
git clone https://github.com/allala0/three-engine.git
cd three-engine
npm install
npm run example
- Switch to Vite
- Documentation!!!
- Fix FXAA antialias warning
- Export all tools in ThreeEngine
- Axes helper with signed axes
- Screenshots
- Thick lines
- Built in shaders
- Outline shader
- Particle system
- Geometry sprites
- Physics engine
- 3D models
- 3D models animations
- PerspectiveCamera min width
- Builtin custom geometries
- Geometry editor
- Postprocessing pipeline manager
- 3D Editor with UI (adding, moving and rotating, scaling objects, lights, cameras etc. with mouse)
- Material editor
- Zoom to cursor in controls
- First person camera
- Third person camera
- Keyboard and mouse controls
- Multiplayer engine (Colyseus)
- AI
- Helpers for test lights
- Custom loading screens
- Shadow config in gui
- Keyboard input
- UI system
- Sound system
- Settings template
- Mobile touch controls (pinch)
Creator: Artur Brytkowski