Skip to content
/ MOD3 Public

3D Modifier Library in JavaScript, port of AS3DMod ActionScript 3D Modifier Library

Notifications You must be signed in to change notification settings

foo123/MOD3

Repository files navigation

#MOD3

Further development on this project has stopped!!

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

MOD3.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

  1. 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)
  2. 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)
  3. 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

About

3D Modifier Library in JavaScript, port of AS3DMod ActionScript 3D Modifier Library

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published