CSC/ECE 517 Fall 2017/M1753 OffscreenCanvas API: Difference between revisions

From Expertiza_Wiki
Jump to navigation Jump to search
Line 9: Line 9:




'''OffscreenCanvas''' is
'''The OffscreenCanvas API''' supports a canvas to be rendered off screen. This API is the first that allows a thread other than the main thread to change what is displayed to the user. This allows rendering to progress no matter what is going on in the main thread.[https://hacks.mozilla.org/2016/01/webgl-off-the-main-thread/]


== '''Project Description''' ==
== '''Project Description''' ==

Revision as of 21:55, 22 October 2017

M1753 - Implement OffscreenCanvas API

The HTML specification defines a <canvas> element that can use a 2d or 3d rendering context. A new specification was recently developed that defines a canvas that can be used without being associated with an in-page canvas element, allowing for more efficient rendering.

Background Introduction

Servo[1] is a modern web browser engine designed to maximize the benefits of multi-core-based parallel processing. Written in the Rust language, servo was aimed for the application on Android and ARM processors, but now its applicable scope has expanded to Linux, Mac OS X, Windows, Android and Firefox OS (also known as Gonk) and other operating systems[2].


Rust[3] is a programming language that emphasizes security, concurrency and efficiency. The three keywords, safety, control of memory layout, and concurrency are the core features of rust, and also the primary factors that distinguish rust from other programming languages. Rust is developed on GitHub/Git [4], and every commit to the source code is documented by the version control system.


The OffscreenCanvas API supports a canvas to be rendered off screen. This API is the first that allows a thread other than the main thread to change what is displayed to the user. This allows rendering to progress no matter what is going on in the main thread.[5]

Project Description

Implementation

Testing Details

Pull Request

Future Work

References