#MOD3
3D Modifier Library for JavaScript
This is a port of the AS3dMod Modifier Library for ActionScript 3 to JavaScript.
supports: Three.js , Pre3d , J3D , Copperlicht , CubicVR.js
It is named MOD3 to signify that it has support for Three.js
It is a complete port (up to limitations between the 2 frameworks)
Not all Modifiers of AS3DMod can be ported but most can.
However the structure is ready for more modifiers to be added (even custom ones)
###Contents
###Live Examples
- 3D flipbook (Three.js, MOD3.js and Tween.js)
- Dancing Box (a simple blend of 3D manipulation and sound visualization)
###Support for 3D JavaScript engines
- Three.js with examples (r58)
- J3D with examples (Build 51)
- Copperlicht with examples
- CubicVR with examples
- Pre3d with examples (my pre3d examples are a liitle blurry but you'll get the picture)
###Modifiers supported (up to present)
- Pivot (note: Pivot does not work with Pre3d)
- Bend
- Twist
- Taper
- Skew
- Noise
- Wheel
- Bloat
- Break
###TODO
- optimize (math ops, caching, modifier chain calls etc..) [DONE partially]
- add custom modifiers except the defaults found in AS3dMod library
- make easier to apply modifiers to complex meshes/objects (which consist of submeshes) (recursion??)
- port the modifiers that use Perlin Noise (using instead the simpler and faster Simplex Noise routine for JavaScript, noisejs , or simplex-noise.js)
- keep up with JavaScript 3D Engines updates (will try)
###How to debug
- If the problem is in one 3D engine, while the other engines work correctly for this example/modifier, then the problem is probably with that engine's proxy classes (plugins/3DENGINENAME/Vertex.js, plugins/3DENGINENAME/Mesh.js)
- If the specific example/modifier does not work in any 3D engine, but other modifiers/examples do work, then the problem is probably with that modifier's code (modifiers/MODIFIERNAME.js)
- If no example works for any engine, then the problem is probably in the core classes, or some class throws a js error which stops the whole execution
###Changelog
- ver 0.3.1 update buildtools, api-reference, use classy.js for OOP
- ver 0.3 code refactoring, extension framework, various optimizations, tidy up repo, new build scripts, project stopped
- added support for CubicVR.js 3D Engine, minor optimizations for all engines
- added support for Three.js revision (r58)
- added support for Three.js revision (r53)
URL Nikos Web Development
URL MOD3 blog post
URL WorkingClassCode