Changelog ========= 2011 11 17 - **r46** (343.383 KB, gzip: 87.468 KB) -------------------------------------------------- - Added reflections to Normal Mapping. (`alteredq `_) - ``Ray`` now checks also object children. (`mrdoob `_) - ``*Loader.load( parameters )`` to ``*Loader( url, callback, texturePath )``. (`mrdoob `_ and `alteredq `_) - Reworked scene graph setup. (`mrdoob `_ and `alteredq `_) - Fixed ``CanvasRenderer``'s ``SphericalReflectionMapping`` rendering. (`mrdoob `_) - Improved ``SubdivisionModifier``. (`zz85 `_) - Refactored ``*Controls`` to use externally supplied time delta. (`alteredq `_) - Improvements to ``CombinedCamera``. (`zz85 `_) - ``ColladaLoader`` doesn't create extra ``Object3D``. (`mrdoob `_) - Improvements to Lambert and Phong materials. (`alteredq `_) - Removed multi-materials for simplicity reasons. (Multi-materials will come back with MeshLayerMaterial hopefully soon) (`alteredq `_) - Fixed ``Ray`` not considering edges. (`mrdoob `_) - Massive cleanup to ``WebGLRenderer``. (`alteredq `_) - ``Ray`` optimisations. (`mrdoob `_ and `alteredq `_) - JSON file format is now worker-less (this was crashing Chrome/Firefox with dealing with many assets). (`alteredq `_) - Improved ``CubeGeometry``, ``PlaneGeometry``, ``IcosahedronGeometry`` and ``SphereGeometry``. (`mrdoob `_) - Improvements to ``Curve``. (`zz85 `_) - Removed ``Collisions`` code and focusing on ``Ray``. (`mrdoob `_) - Added ``cloneObject()`` method to ``SceneUtils``. (`alteredq `_) 2011 10 06 - **r45** (340.863 KB, gzip: 86.568 KB) -------------------------------------------------- - ``Object/Scene.add*()`` and ``Object/Scene.remove*()`` are now ``Object/Scene.add()`` and ``Object/Scene.remove()``. (`mrdoob `_) - ``LOD.add()`` is now ``LOD.addLevel()``. (`mrdoob `_) - Reworked ``CylinderGeometry``. (`mrdoob `_) - Added ``.depthWrite`` and ``.fog`` to ``Material``. (`alteredq `_) - Added ``.applyMatrix`` to ``Geometry``. (`mrdoob `_) - Improved postprocessing stack in ``/examples/js/postprocessing``. (`alteredq `_) - Added a realistic skin shading example. (`alteredq `_) - Started of a GUI for composing scenes and autogenerate code. (`mrdoob `_) - Added ``.center()`` to ``GeometryUtils``. (`alteredq `_) - Fixed buggy scenegraph manipulation (adding/removing objects). (`jsermeno `_, `alteredq `_ and `skython `_) - Renamed ``MeshShaderMaterial`` to ``ShaderMaterial``. (`alteredq `_) - Fixed ``CanvasRenderer`` ignoring color of ``SmoothShading``ed ``MeshLambertMaterial``. (`mrdoob `_) - Renamed ``renderer.data`` to ``renderer.info``. (`mrdoob `_) - Fixed ShadowMap aspect ratio. (`kig `_ and `alteredq `_) - Fixed ``Loader``'s ``extractUrlbase()`` incorrect output for short urls. (`rectalogic `_ and `alteredq `_) - Added ``.color`` and ``.visible`` support to ``Sprite``. (`alteredq `_) - Added ``Face4``, Vertex Colors and Maya support to ``ColladaLoader``. (`mrdoob `_) - Rewrite of lighting shader code. (`alteredq `_) - Improved internal array concatenation approach. (`pyrotechnick `_) - ``WebGLRenderer`` performance improvements. (`alteredq `_) - Added lower level immediate rendering support to ``WebGLRenderer``. (`NINE78 `_ and `alteredq `_) - Added ``CubeCamera`` for rendering cubemaps. (`alteredq `_) - Improved ``GeometryUtils``'s ``.mergeVertices()`` performance. (`zz85 `_) - Removed ``Camera``'s ``.target``. (`mrdoob `_) - ``WebGLRenderer``'s ``.clear()`` is now ``.clear( color, depth, stencil )``. (`mrdoob `_) - Added ``.autoClearColor``, ``.autoClearDepth`` and ``.autoClearStencil`` to ``WebGLRenderer``. (`mrdoob `_ and `alteredq `_) - Added ``OctahedronGeometry``. (`clockworkgeek `_) - Splitted ``Camera`` into ``PerspectiveCamera`` and ``OrthographicCamera``. (`mrdoob `_ and `alteredq `_) - Special cameras are now ``*Controls``. (`alteredq `_ and `mrdoob `_) - Added ``SubdivisionModifier``. (`zz85 `_) - ``Projector``'s ``unprojectVector()`` now also works with ``OrthographicCamera``. (`jsermeno `_) - Added ``.setLens()`` method to ``PerspectiveCamera``. (`zz85 `_) - Added Shadow Maps, ``Texture``'s ``.offset`` and ``.repeat`` and reflections support to Normal Map shader. (`alteredq `_) 2011 09 04 - **r44** (330.356 KB, gzip: 84.039 KB) -------------------------------------------------- - Added ``ColladaLoader``. (`timknip2 `_) - Improved ``ExtrudeGeometry``. (`zz85 `_) - Fixed ``CylinderGeometry`` normals. (`alteredq `_) - Fixed issue with ``WebGLRenderer.setTexture`` (`rectalogic `_) - Fixed ``TorusGeometry`` normals. (`mrdoob `_) - Fixed ``Ray`` behind-ray intersects. (`mrdoob `_) - Added ``OrthoCamera``. (`alteredq `_) - Refactored postprocessing effects used in some examples. (`alteredq `_) - Added ``.deallocateObject()`` and ``.deallocateTexture()`` methods to ``WebGLRenderer``. (`mrdoob `_) - Fixed a glitch in normal and phong shader. (`evanw `_ and `alteredq `_) - Added ``.frustumCulled`` property to ``Object3D``. (`alteredq `_ and `mrdoob `_) 2011 08 14 - **r43** (298.199 KB, gzip: 74.805 KB) -------------------------------------------------- - Improved Blender exporter - 2.58 (and 2.59) support, normals maps, specular, ao maps... (`alteredq `_) - Added `CORS `_ to ``ImageUtils``. (`mrdoob `_) - Refactored ``TextGeometry`` and added ``Shape``, ``Curve``, ``Path``, ``ExtrudeGeometry``, ``TextPath``. (`zz85 `_ and `alteredq `_) - Added handling of custom attributes for ``ParticleSystems``. (`alteredq `_) - Fixed ``CanvasRenderer.setClearColor``. (`mrdoob `_, `StephenHopkins `_ and `sebleedelisle `_) - Improved uniform handling in ``WebGLRenderer``. (`alteredq `_) - Implemented Shadow Mapping in ``WebGLRenderer``. (`alteredq `_) - Added ``Spotlight`` light type. (`alteredq `_) - Fixed constructor-less prototypes. (`pushmatrix `_) - Added ``DataTexture``. (`alteredq `_) - ``WebGLRenderer`` opaque pass now renders from front to back. (`alteredq `_) - Simplified ``Color``. (`mrdoob `_) - Added ``preserveDrawingBuffer`` option to ``WebGLRenderer``. (`jeromeetienne `_) - Added ``UTF8Loader`` for loading the new, uber compressed, `UTF8 format `_. (`alteredq `_) - ``CanvasRenderer`` now supports ``RepeatWrapping``, ``texture.offset`` and ``texture.repeat``. (`mrdoob `_) - Removed Stencil Shadows and Lensflare code. (`mrdoob `_) 2011 07 06 - **r42** (277.852 KB, gzip: 69.469 KB) -------------------------------------------------- - Added ``AnaglypWebGLRenderer`` and ``CrosseyedWebGLRenderer``. (`mrdoob `_, `alteredq `_ and `marklundin `_) - Added ``TextGeometry``. (`zz85 `_ and `alteredq `_) - Added ``setViewOffset`` method to ``Camera``. (`greggman `_) - Renamed geometries to ``*Geometry``. (`mrdoob `_) - Improved Blender exporter. (`alteredq `_, `sweetfish `_ and `Jhonnyg `_) - Added Blender 2.58 exporter. (`georgik `_) - Fixed ``Matrix4.multiply()``. (thanks `lukem1 `_) - Added support for additional Euler rotation orders in ``Matrix4``. (`rectalogic `_) - Renamed ``QuakeCamera`` to ``FirstPersonCamera``. (`chriskillpack `_) - Improved Normal Map Shader. (`alteredq `_) - ``Collision`` now supports ``Object3D.flipSided`` and ``Object3D.doubleSided``. (`NINE78 `_) - Removed most of ``SceneUtils`` methods. (`mrdoob `_) - Removed ``Sound`` object and ``SoundRenderer``. (`mrdoob `_) 2011 05 31 - **r41/ROME** (265.317 KB, gzip: 64.849 KB) ------------------------------------------------------- (Up to this point, some `RO.ME `_ specific features managed to get in the lib. The aim is to clean this up in next revisions.) - Improved Blender Object and Scene exporters. (`alteredq `_) - Fixes on WebGL attributes. (`alteredq `_ and `empaempa `_) - Reduced overall memory footprint. (`mrdoob `_) - Added ``Face4`` support to ``CollisionSystem``. (`NINE78 `_) - Added Blender 2.57 exporter. (`remoe `_) - Added ``Particle`` support to ``Ray``. (`mrdoob `_ and `jaycrossler `_) - Improved ``Ray.intersectObject`` performance by checking boundingSphere first. (`mrdoob `_) - Added ``TrackballCamera``. (`egraether `_) - Added ``repeat`` and ``offset`` properties to ``Texture``. (`mrdoob `_ and `alteredq `_) - Cleaned up ``Vector2``, ``Vector3`` and ``Vector4``. (`egraether `_) 2011 04 24 - **r40** (263.774 KB, gzip: 64.320 KB) -------------------------------------------------- - Fixed ``Object3D.lookAt``. (`mrdoob `_) - More and more Blender exporter goodness. (`alteredq `_ and `mrdoob `_) - Improved ``CollisionSystem``. (`drojdjou `_ and `alteredq `_) - Fixes on WebGLRenderer. (`empaempa `_) - Added ``Trident`` object. (`sroucheray `_) - Added ``data`` object to Renderers for getting number of vertices/faces/callDraws from last render. (`mrdoob `_) - Fixed ``Projector`` handling Particles with hierarchies. (`mrdoob `_) 2011 04 09 - **r39** (249.048 KB, gzip: 61.020 KB) -------------------------------------------------- - Improved WebGLRenderer program cache. (`alteredq `_) - Added support for pre-computed edges in loaders and exporters. (`alteredq `_) - Added ``Collisions`` classes. (`drojdjou `_) - Added ``Sprite`` object. (`empaempa `_) - Fixed ``*Loader`` issue where Workers were kept alive and next loads were delayed. (`alteredq `_) - Added ``THREE`` namespace to all the classes that missed it. (`mrdoob `_) 2011 03 31 - **r38** (225.442 KB, gzip: 55.908 KB) -------------------------------------------------- - Added ``LensFlare`` light. (`empaempa `_) - Added ``ShadowVolume`` object (stencil shadows). (`empaempa `_) - Improved Blender Exporter plus added Scene support. (`alteredq `_) - Blender Importer for loading JSON files. (`alteredq `_) - Added load/complete callbacks to ``Loader`` (`mrdoob `_) - Minor WebGL blend mode clean up. (`mrdoob `_) - \*Materials now extend Material (`mrdoob `_) - ``material.transparent`` define whether material is transparent or not (before we were guessing). (`mrdoob `_) - Added internal program cache to WebGLRenderer (reuse already available programs). (`mrdoob `_) 2011 03 22 - **r37** (208.495 KB, gzip: 51.376 KB) -------------------------------------------------- - Changed JSON file format. (**Re-exporting of models required**) (`alteredq `_ and `mrdoob `_) - Updated Blender and 3DSMAX exporters for new format. (`alteredq `_) - Vertex colors are now per-face (`alteredq `_) - ``Geometry.uvs`` is now a multidimensional array (allowing infinite uv sets) (`alteredq `_) - ``CanvasRenderer`` renders ``Face4`` again (without spliting to 2 ``Face3``) (`mrdoob `_) - ``ParticleCircleMaterial`` > ``ParticleCanvasMaterial``. Allowing injecting any ``canvas.context`` code! (`mrdoob `_) 2011 03 14 - **r36** (194.547 KB, gzip: 48.608 KB) -------------------------------------------------- - Added 3DSMAX exporter. (`alteredq `_) - Fixed ``WebGLRenderer`` aspect ratio bug when scene had only one material. (`mrdoob `_) - Added ``sizeAttenuation`` property to ``ParticleBasicMaterial``. (`mrdoob `_) - Added ``PathCamera``. (`alteredq `_) - Fixed ``WebGLRenderer`` bug when Camera has a parent. Camera``Camera.updateMatrix`` method. (`empaempa `_) - Fixed ``Camera.updateMatrix`` method and ``Object3D.updateMatrix``. (`mrdoob `_) 2011 03 06 - **r35** (187.875 KB, gzip: 46.433 KB) -------------------------------------------------- - Added methods ``translate``, ``translateX``, ``translateY``, ``translateZ`` and ``lookAt`` methods to ``Object3D``. (`mrdoob `_) - Added methods ``setViewport`` and ``setScissor`` to ``WebGLRenderer``. (`alteredq `_) - Added support for non-po2 textures. (`mrdoob `_ and `alteredq `_) - Minor API clean up. (`mrdoob `_) 2011 03 02 - **r34** (186.045 KB, gzip: 45.953 KB) -------------------------------------------------- - Now using camera.matrixWorldInverse instead of camera.matrixWorld for projecting. (`empaempa `_ and `mrdoob `_) - Camel cased properties and object json format (**Re-exporting of models required**) (`alteredq `_) - Added ``QuakeCamera`` for easy fly-bys (`alteredq `_) - Added ``LOD`` example (`alteredq `_) 2011 02 26 - **r33** (184.483 KB, gzip: 45.580 KB) -------------------------------------------------- - Changed build setup (**build/Three.js now also include extras**) (`mrdoob `_) - Added ``ParticleSystem`` object to ``WebGLRenderer`` (`alteredq `_) - Added ``Line`` support to ``WebGLRenderer`` (`alteredq `_) - Added vertex colors support to ``WebGLRenderer`` (`alteredq `_) - Added ``Ribbon`` object. (`alteredq `_) - Added updateable textures support to ``WebGLRenderer`` (`alteredq `_) - Added ``Sound`` object and ``SoundRenderer``. (`empaempa `_) - ``LOD``, ``Bone``, ``SkinnedMesh`` objects and hierarchy being developed. (`empaempa `_) - Added hierarchies examples (`mrdoob `_) 2010 12 31 - **r32** (89.301 KB, gzip: 21.351 KB) ------------------------------------------------- - ``Scene`` now supports ``Fog`` and ``FogExp2``. ``WebGLRenderer`` only right now. (`alteredq `_) - Added ``setClearColor( hex, opacity )`` to ``WebGLRenderer`` and ``CanvasRenderer`` (`alteredq `_ & `mrdoob `_) - ``WebGLRenderer`` shader system refactored improving performance. (`alteredq `_) - ``Projector`` now does frustum culling of all the objects using their sphereBoundingBox. (thx `errynp `_) - ``material`` property changed to ``materials`` globaly. 2010 12 06 - **r31** (79.479 KB, gzip: 18.788 KB) ------------------------------------------------- - Minor Materials API change (mappings). (`alteredq `_ & `mrdoob `_) - Added Filters to ``WebGLRenderer`` - ``python build.py --includes`` generates includes string 2010 11 30 - **r30** (77.809 KB, gzip: 18.336 KB) ------------------------------------------------- - Reflection and Refraction materials support in ``WebGLRenderer`` (`alteredq `_) - ``SmoothShading`` support on ``CanvasRenderer``/``MeshLambertMaterial`` - ``MeshShaderMaterial`` for ``WebGLRenderer`` (`alteredq `_) - Removed ``RenderableFace4`` from ``Projector``/``CanvasRenderer`` (maybe just temporary). - Added extras folder with ``GeometryUtils``, ``ImageUtils``, ``SceneUtils`` and ``ShaderUtils`` (`alteredq `_ & `mrdoob `_) - Blender 2.5x Slim now the default exporter (old exporter removed). 2010 11 17 - **r29** (69.563 KB) -------------------------------- - **New materials API** Still work in progress, but mostly there. (`alteredq `_ & `mrdoob `_) - Line clipping in ``CanvasRenderer`` (`julianwa `_) - Refactored ``CanvasRenderer`` and ``SVGRenderer``. (`mrdoob `_) - Switched to Closure compiler. 2010 11 04 - **r28** (62.802 KB) -------------------------------- - ``Loader`` class allows load geometry asynchronously at runtime. (`alteredq `_) - ``MeshPhongMaterial`` working with ``WebGLRenderer``. (`alteredq `_) - Support for *huge* objects. Max 500k polys and counting. (`alteredq `_) - ``Projector.unprojectVector`` and ``Ray`` class to check intersections with faces (based on `mindlapse `_ work) - Fixed ``Projector`` z-sorting (not as jumpy anymore). - Fixed Orthographic projection (was y-inverted). - Hmmm.. lib file size starting to get too big... 2010 10 28 - **r25** (54.480 KB) -------------------------------- - ``WebGLRenderer`` now up to date with other renderers! (`alteredq `_) - .obj to .js python converter (`alteredq `_) - Blender 2.54 exporter - Added ``MeshFaceMaterial`` (multipass per face) - Reworked ``CanvasRenderer`` and ``SVGRenderer`` material handling 2010 10 06 - **r18** (44.420 KB) -------------------------------- - Added ``PointLight`` - ``CanvasRenderer`` and ``SVGRenderer`` basic lighting support (ColorStroke/ColorFill only) - ``Renderer`` > ``Projector``. ``CanvasRenderer``, ``SVGRenderer`` and ``DOMRenderer`` do not extend anymore - Added ``computeCentroids`` method to ``Geometry`` 2010 09 17 - **r17** (39.487 KB) -------------------------------- - Added ``Light``, ``AmbientLight`` and ``DirectionalLight`` (`philogb `_) - ``WebGLRenderer`` basic lighting support (`philogb `_) - Memory optimisations 2010 08 21 - **r16** (35.592 KB) -------------------------------- - Workaround for Opera bug (clearRect not working with context with negative scale) - Additional ``Matrix4`` and ``Vector3`` methods 2010 07 23 - **r15** (32.440 KB) -------------------------------- - Using new object ``UV`` instead of ``Vector2`` where it should be used - Added ``Mesh.flipSided`` boolean (false by default) - ``CanvasRenderer`` was handling UVs at 1,1 as bitmapWidth, bitmapHeight (instead of bitmapWidth - 1, bitmapHeight - 1) - ``ParticleBitmapMaterial.offset`` added - Fixed gap when rendering ``Face4`` with ``MeshBitmapUVMappingMaterial`` 2010 07 17 - **r14** (32.144 KB) -------------------------------- - Refactored ``CanvasRenderer`` (more duplicated code, but easier to handle) - ``Face4`` now supports ``MeshBitmapUVMappingMaterial`` - Changed order of ``*StrokeMaterial`` parameters. Now it's ``color``, ``opacity``, ``lineWidth``. - ``BitmapUVMappingMaterial`` > ``MeshBitmapUVMappingMaterial`` - ``ColorFillMaterial`` > ``MeshColorFillMaterial`` - ``ColorStrokeMaterial`` > ``MeshColorStrokeMaterial`` - ``FaceColorFillMaterial`` > ``MeshFaceColorFillMaterial`` - ``FaceColorStrokeMaterial`` > ``MeshFaceColorStrokeMaterial`` - ``ColorStrokeMaterial`` > ``LineColorMaterial`` - ``Rectangle.instersects`` returned false with rectangles with 0px witdh or height 2010 07 12 - **r13** (29.492 KB) -------------------------------- - Added ``ParticleCircleMaterial`` and ``ParticleBitmapMaterial`` - ``Particle`` now use ``ParticleCircleMaterial`` instead of ``ColorFillMaterial`` - ``Particle.size`` > ``Particle.scale.x`` and ``Particle.scale.y`` - ``Particle.rotation.z`` for rotating the particle - ``SVGRenderer`` currently out of sync 2010 07 07 - **r12** (28.494 KB) -------------------------------- - First version of the ``WebGLRenderer`` (``ColorFillMaterial`` and ``FaceColorFillMaterial`` by now) - ``Matrix4.lookAt`` fix (``CanvasRenderer`` and ``SVGRenderer`` now handle the -Y) - ``Color`` now using 0-1 floats instead of 0-255 integers 2010 07 03 - **r11** (23.541 KB) -------------------------------- - Blender 2.5 exporter (utils/export\_threejs.py) now exports UV and normals (Thx `kikko `_) - ``Scene.add`` > ``Scene.addObject`` - Enabled ``Scene.removeObject`` 2010 06 22 - **r10** (23.959 KB) -------------------------------- - Changed Camera system. (Thx `Paul Brunt `_) - ``Object3D.overdraw = true`` to enable CanvasRenderer screen space point expansion hack. 2010 06 20 - **r9** (23.753 KB) ------------------------------- - JSLinted. - ``autoClear`` property for renderers. - Removed SVG rgba() workaround for WebKit. (WebKit now supports it) - Fixed matrix bug. (transformed objects outside the x axis would get infinitely tall :S) 2010 06 06 - **r8** (23.496 KB) ------------------------------- - Moved UVs to ``Geometry``. - ``CanvasRenderer`` expands screen space points (workaround for antialias gaps). - ``CanvasRenderer`` supports ``BitmapUVMappingMaterial``. 2010 06 05 - **r7** (22.387 KB) ------------------------------- - Added Line Object. - Workaround for WebKit not supporting rgba() in SVG yet. - No need to call updateMatrix(). Use .autoUpdateMatrix = false if needed. (Thx `Gregory Athons `_). 2010 05 17 - **r6** (21.003 KB) ------------------------------- - 2d clipping on ``CanvasRenderer`` and ``SVGRenderer`` - ``clearRect`` optimisations on ``CanvasRenderer`` 2010 05 16 - **r5** (19.026 KB) ------------------------------- - Removed Class.js dependency - Added ``THREE`` namespace - ``Camera.x`` -> ``Camera.position.x`` - ``Camera.target.x`` > ``Camera.target.position.x`` - ``ColorMaterial`` > ``ColorFillMaterial`` - ``FaceColorMaterial`` > ``FaceColorFillMaterial`` - Materials are now multipass (use array) - Added ``ColorStrokeMaterial`` and ``FaceColorStrokeMaterial`` - ``geometry.faces.a`` are now indexes instead of references 2010 04 26 - **r4** (16.274 KB) ------------------------------- - ``SVGRenderer`` Particle rendering - ``CanvasRenderer`` uses ``context.setTransform`` to avoid extra calculations 2010 04 24 - **r3** (16.392 KB) ------------------------------- - Fixed incorrect rotation matrix transforms - Added ``Plane`` and ``Cube`` primitives 2010 04 24 - **r2** (15.724 KB) ------------------------------- - Improved ``Color`` handling 2010 04 24 - **r1** (15.25 KB) ------------------------------ - First alpha release