A Three.js mesh morph modifier, including nearly ten modifiers, such as Bend, Bloat, Noise, Skew and Taper, etc. It is very lightweight and simple to use, using it can give you unexpected results.
npm install three three.modifiers --save
These demos are real, you can click them! They contain the full code, too.
Download the build at dist/modifiers.min.js and include it as a script tag in a web page. You must include three.js as well.
<script src="./js/three.min.js"></script>
<script src="./js/modifiers.min.js"></script>
Note you must also have three installed via npm.
import * as THREE from "three";
import {
ModifierStack,
Twist,
Noise,
Cloth,
UserDefined,
Taper,
Break,
Bloat,
Vector3,
ModConstant
} from "three.modifiers";
const modifier = new ModifierStack(mesh);
const bend = new Bend(1.5, 0.2, 0);
bend.constraint = ModConstant.LEFT;
const cloth = new Cloth(1, 0);
cloth.setForce(0.2, -0.2, -0.2);
const twist = new Twist(0);
twist.vector = new Vector3(0, 1, 0);
const taper = new Taper(1);
taper.setFalloff(0.1, 0.5);
modifier.addModifier(bend);
modifier.addModifier(cloth);
modifier.addModifier(twist);
modifier.addModifier(taper);
// animate func
function animate() {
requestAnimationFrame(animate);
renderer.render(scene, camera);
// modifier.apply
modifier && modifier.apply();
}
It is the typescript version of the ActionScript engine AS3Dmod. You can find the documentation here.
// DEVELOPMENT MODE
npm install
npm run demo
// (vist http://localhost:8888/)
// PRODUCTION MODE
npm run build
This library is under the BSD License.