Version 0.90.0 is available : the fastest voxelent yet!
|
|
By dcantor . March 30, 2014 . blog, changelog. |
|
|
By dcantor . March 30, 2014 . blog, changelog. |
There are a lot of bug fixes and performance improvements over the previous versions. We have reduced the rendering time to a third by implementing several WebGL performance tricks.
Feel free to check the demo page.
longShot after setRoll works now (vxlCamera)ORBITING or EXPLORING to TRACKING and viceversa. After this fix, the camera does not ‘get lost’ after changing the type when it moves again.setWorldRotation(true) and back to setWorldRotation(false) the camera does not get lost. The angles are recalculated.vxlCamera.translate works as expected. The camera is translated by a vectorvxlCamera.pan method has been revisited.vxlMaterial.clone()var cam = vxl.c.camera; cam.longShot().status(); cam.setAzimuth(30).setElevation(40);
vxlActor.follow now receives the actor name or the actor instance as parameterdemo-camera-landmarks.html : check it outtest-5000-monkeys.html : check it outdemo-lookup-table.html : check it outtest-follow.html has been graduated to demo-follow.html: check it out
gl-matrix version: 2.2.1: This was a MAJOR pain in the BHIND but it needed to be done. Previous version was 1.3.4 and the syntax of the library is completely different now! Updating vxlCamera was quite commendable.vxlActor.clone method has been revisited and cleaned upvxlRenderEngine has been completely revamped. Thanks to geometry catching (instead of actor catching) it renders in a 3rd of the time compared to previous versions.vxlPicker class has been reduced considerably by eliminating the huge tridimensional associative array _hmap. In previous versions this created a cube [r,g,b] storing on each position the cell or the object that had that color. Instead of this the color is stored as hex value in an unidimensional associative array (hashmap).vxlRenderEngine, after reading http://ryanmorr.com/reinventing-the-try-catch-block/vxlActor clean up from previous versions: gl_buffers, renderers attributes these are now obsolete as the actors do not know anything about their rendering thanks to vxlEngine and its subclasses.vxlRenderer. All the WebGL code has been moved to the vxlEngine class.vxlProgramManager is an attribute of vxlEngine. There is no dependencyvxlRenderer and the vxlProgramManager anymore. This makes the code of vxlRenderer more compact and maintanable.vxlProgramManager [through the attribute this.pm] tovxlRenderEngine has been modified accordingly to work with this refactoring, all the references to this.renderer.gl and this.renderer.pm have been replaced by this.gl and this.pm (check this change in action in demo-bouncing-balls.html)vxlProgramManager has been updated and simplifiedvxlPickerInteractor calls the renderer.readOffscreenPixel which invxlRenderer anymore. This provide better encapsulation and separation of concerns.vxlBlenderProgram and vxlBlenderEngine have been deleted! There is no reason for this. The blender obj imported models will work with the existing engines.
Leave a Reply