Frameworks facilitate development of complex software, but there is no framework for developing 3D applications for browsers at the moment. The purpose of the project is to simplify the development of 3D Web applications and to improve 3D object performance in Web-browser. For this purpose I have developed a wrapper (framework) for existing object-oriented browser’s 3D features with modular structure and enhanced user-friendly interface for developers.The framework supports JSON-like object description that allows uploading scenes from configuration files for automation of rendering. The framework uses WebWorkers technology that provides multithread rendering and physics calculation for resource-intensive applications. Engine has API with common functions like autoresize that allows developers to implement basics much easier. Main innovation of the framework is support of convex and concave shapes in calculating collisions between complex objects. I made several examples with my framework that show basic features used in all web applications or games and compared results achieved from other devices and programs. As a result, implementation of framework in terrain generation and rendering increased frame rate from 25 to 60 fps and halved page loading time in application. In collation of apps made with Whitestorm.js to similar programs it was revealed that Whitestorm.js code size was at least 2 times smaller, while fps rates and stability as well as app performance were significantly higher.Whitestorm.js framework can be used for development of complex 3D applications that run in browser, such as games or interactive websites. Using this framework will enable implementation of ready-made component system with plugin feature and rendering optimizations in application.
Third Award of $1,000