[1]: https://github.com/mrdoob/three.js/
For those of us with slow internet connections please change your Makefile to use a shallow clone:
``` github/three: mkdir -p github git clone --depth 1 https://github.com/mrdoob/three.js.git github/three -b r108 cd github/three && git checkout r108 ```
This would save a couple of gigs and hours in download.
Just skimming your code I see variable mangling but no AST optimizations, is that correct? Which is odd because you show similar output sizes to the JS bundlers.
One source code I look into from time to time is Three.js: https://github.com/mrdoob/three.js/ to discover more details over the documentation.
It is a relatively small JavaScript library for creating and rendering 3D scene graphs in a browser. It enables you to code while thinking of scenes and the objects within them, rather than GPU buffers and what to put in them.
The most well known WebGL library is https://github.com/mrdoob/three.js/ Which has been used for many examples like this http://armsglobe.chromeexperiments.com/
But you could look at the libraries focused on 2d like these http://paperjs.org/ http://fabricjs.com/ But the larger 2d canvas libraries also have much of the same abilities. http://createjs.com/ - http://codepen.io/ianwhitfield/pen/BKOJmj https://github.com/pixijs/pixi.js - http://anvaka.github.io/ngraph/examples/pixi.js/06%20-%20Pac...
If you are just rendering vectors like an icon image, there is no harm in using SVG. If you want access to nodes on a page with a JavaScript library like jQuery, SVG is still the best option. For everything else SVG is not the most performant and is not able to deliver on many graphics abilities that the Canvas tag is capable of. I respect that in most visualizations it doesn't matter and it might be easier but it doesn't mean SVG is the best thing to use for all graphics.
One way you could hedge the WebGL vs. Canvas bet is to use something like THREE.js, where you use THREE's cameras, lighting, etc and then specify whether it should use WebGL or Canvas for rendering. But then again, you'd be betting on THREE.js :)
Github repo: https://github.com/mrdoob/three.js/
Examples: http://mrdoob.github.com/three.js/
http://sourceforge.net/projects/vlc/
https://github.com/mrdoob/three.js
They serve entirely different purposes. Sourceforge looks like a sales page, listing features and downloads. Gitub has the contents of the source right there at the top, before the readme or description, even!
Github seems to be focused on developers, while sourceforge is like a download portal for open source software.
I've noticed that a lot of the demos people have created so far are rendering a simple scene, or trying to build a game engine. I'm looking forward to more people building user interfaces that make use of 3D for data visualization and user interaction. 3D has literally never been so accessible.
[Edit: guessing, not second-guessing]
EaselJS has been considering it[1], and even Three.js has it[2], but as Canvas gets more widespread and Hardware acceleration by default, these multiple renderers may not be that helpful. On the other hand, how long until then?
[1] https://groups.google.com/forum/#!searchin/easeljs/renderer/...
Three.JS: https://github.com/mrdoob/three.js/
You can also see the framework Three.Js[1], which Mr. Doob used/created on his Google Colabs[2]