I am pleased to tell you some interesting results from my thesis defended 3 months ago.
The thesis has two parts that might interest you:
We observed two negative aspects of rendering using WebGL with multiple canvases. Namely, increase in initialization time with increasing number of canvases (especially in Google Chrome), and a lack of sharing GPU resources between WebGL contexts.
We presented the Overlay Canvas that uses one canvas to render multiple scenes. This approach solves both issues and improves rendering performance in Google Chrome and Firefox.
- various rendering issues in web browsers make this method not ready for production. However, the method is pretty stable in Google Chrome.
Full summary is on page 28.
We focused on loading of 3d models in 6 selected frameworks: c3DL, CubicVR.js, GLGE, O3D, OSGJS, three.js.
Total time necessary to load and render a model stored in COLLADA format and 5 custom file formats was measured. Out of 4 frameworks supporting COLLADA format, the fastest framework for loading a single model is three.js.
When all file formats were considered, OSGJS JSON and three.js Binary formats proved to be suitable for loading a single small model.
For loading large models, OpenCTM format in three.js gives significant acceleration because of its high compression ratio.
Nonetheless, results of the test cannot be easily generalized. Experimentation with a specific application is still crucial but we believe this thesis gives some guidelines to speed up this process.
Link to full PDF: http://is.muni.cz/th/207993/fi_m/faster_webgl_graphics.pdf