UHURU 3D
Uhuru is a real-time 3D engine written in JavaScript. It renders directly on the canvas tag, without the need of plugins, on any browser that supports HTML5 (Firefox, Chrome, Safari, Opera, and upcoming IE9). Using the ingenious excanvas, the engine now works on Internet Explorer 7 and older IE versions, albiet without support for rendering textures.
CAPABILITIES:
# Lighting
# Flat shading
# Frustum clipping
# Backface culling
# Z-sorting
# UV affine texture mapping
# .Obj model loader
# Skybox
With no graphic acceleration, there are some major performance limitiation with using JavaScript to
handle a 3D pipeline in real-time:
# No texture support for IE at the moment. Waiting for IE9 which supports HTML5
# In most browsers, texture mapping leaves artifacts along the vertices.
# At high polygon counts (~1500+ vertices) performance deminishes quite quickly.
# Rendering textures is the most processing demanding part in the 3D pipeline.
But I can't see any way to optimise this without graphic acceleration. I'm experimenting with this...
# JavaScript engines today can't really handle real-time per-pixel shading with anything close to a reasonable framerate.
The next-gen versions of browsers will eventually be coming with built-in harnessing of GPUs. With this, we can expect to see real improvments in many of the speed limitations restraining Web3D today. There are currently many initiative to this end, like this one.