* Added support to texture.offset in CanvasRenderer
* Removed ShadowVolume, ShadowVolumeDynamicMaterial and LensFlare classes.
* Removed Stencil Shadows and LensFlare code out of WebGLRenderer
* Added 2.59 folder to Blender, and removed old ones.
Having these "undefined" for non-mesh objects was causing unnecessary GL state setting when having scenes with mixed content (and coercing "undefined" to boolean turned out to be similarly costly as state setting).
Changed normal map shader to multiply specular component with diffuse weighting as specular highlights were appearing in the dark parts.
Changed camera look speed in minecraft and terrain demos, they were too fast - I guess as everything got faster with antialiasing off.
Reenabled antialiasing in few demos where it was too ugly without (basically anything with lines and without postprocessing).
Fixed again spurious invisible characters in empaempa's code (which are breaking everything and are hard to hunt as they look like spaces).
There is a new class Edge which stores vertices and faces for edge (I wasn't sure if indices or references would be better, so at least for the moment it contains both).
Geometry now contains a list of such edges, created in JSONLoader, based on edge data exported from Blender.
From Blender we get a list of vertex index pairs, from which in Geometry.computeEdgeFaces() we compute faces which share this particular edge and store them in the Edge object.
Not sure if edges work properly till we don't have something using them. For now I just checked cube data exported from Blender and it seems fine.
Also did some whitespace cleanup here and there.
Animation.js - fixed scale bugs and removed flattenToArrayOffset
AnimationHandler.js - fixed so keyframes at same time is removed
Matrix4.lookAt - fixed so it handles situations where z === up and where eye === target
SkinnedMesh.update - added flattenToArrayOffset in end of update
There don't seem to be any effects on performance (though I'm not sure this was actually used in any example/test code path - so far quaternions are used just for animation interpolation and even there they were always dirty, and also just updated during JIT baking).
Also some more code cleanup - no need for Mesh to have own "update" as now it was exactly the same as its parent Object3D.
I need to look at this objectMatrix::extractRotationMatrix() thing. I don't think this works like that... isn't the scale applied to the rotation in the matrix?