Basic benchmarks to measure HTML5 performance and support for game related features
- Install Node.js (0.6.0+).
- Run in shell:
npm install - Run in shell:
node server - Open in browser:
http://localhost:3002/ - Configure parameters of the test run, if desired.
- Click "Run Tests".
- If you uploaded results, see the
server/uploads/directory.
The Source type indicates the data being displayed.
The Technique indicates the browser method used to render the data.
The Test type indicates what transformations were performed on the data using
the technique.
The JS time (ms) result shows how much JavaScript time was spent rendering
the objects in one second.
The Objects at 30FPS result shows how many objects were able to be rendered
while rendering at 30 frames per second.
The Cold play latency indicates how much time it took between .play() and
the first subsequent play or timeupdate event on a new WAV <audio>
element.
The Warm play latency indicates how much time it took between .play() and
the first subsequent play or timeupdate event on a WAV <audio> element
which has already played.
The Score result shows how many renders could be made per 100 milliseconds.
Test cases are build into a recursive object structure. Test cases are run
through the test runner in js/testRunner.js.
Test cases are displayed based upon the specification in js/tables.js.
Sprite tests are found under js/sprites/.
There are three interleaved components:
Each source represents some asset (e.g. a sprite sheet). Maps to the Source type result.
Transformers modify the source by applying affine or other transformations.
Maps to the Test type result.
Renderers displayed transformed sources using different techniques. Maps to the
Technique result. See js/sprites/renderers/README.md for details.