Sunday, 18 March 2012

WebGL

WebGL (Web-based Cartoon Library) is acomputer application library that extends the adequacy of the JavaScript programming accent to acquiesce it to accomplish alternate 3D cartoon aural any accordant web browser. WebGL cipher executes on a computer affectation card's Cartoon Processing Unit (GPU), which charge abutment shader rendering.

WebGL is a ambience of the canvas HTML aspect that provides a 3D computer cartoon API after the use of plug-ins.2 The blueprint was appear as adaptation 1.0 on March 3, 2011.1 WebGL is managed by the non-profit Khronos Group.

Design

WebGL is based on OpenGL ES 2.0 and provides an API for 3D graphics.3 It uses the HTML5 canvas aspect and is accessed application Document Object Model interfaces. Automatic anamnesis administration is provided as allotment of the JavaScript language.2

Desktop Browsers

Mozilla Firefox - WebGL has been enabled on all platforms that accept a able cartoon agenda with adapted drivers back adaptation 4.0.4 Mozilla Firefox 8.0 and newer versions use Cross-Origin Resource Sharing (CORS) to ascendancy all WebGL cross-domain textures.56

Google Chrome - WebGL has been enabled on all platforms that accept a able cartoon agenda with adapted drivers back adaptation 9.7 Google Chrome 13.0 and newer versions use Cross-Origin Resource Sharing (CORS) to ascendancy all WebGL cross-domain textures.8

Safari - Safari 5.1 and newer versions installed on Mac OS X Lion and Mac OS X Snow Leopard implemented abutment for WebGL, which is disabled by default.910111213

Opera - WebGL has been implemented in Opera 11 and 12 alpha (pre-release) snapshots.1415

Internet Explorer - Microsoft has not appear any affairs to abutment WebGL. The Chrome Frame and IEWebGL16 plugins accommodate options to add abutment for WebGL to Internet Explorer 6.0 and newer versions.

Mobile Browsers

Nokia N900 - WebGL is accessible in the PR1.2 firmware update.17

BlackBerry PlayBook - WebGL is accessible via WebWorks in PlayBook OS 2.018

Firefox for adaptable - WebGL is accessible for Android accessories in ambiguous builds back aboriginal 2011.19

The Sony Ericsson Xperia ambit of Android smartphones accept had WebGL capabilities afterward a firmware upgrade.20

Opera Adaptable 12 final supports WebGL (on Android only).21

Development

WebGL is managed by the non-profit technology bunch Khronos Group. The WebGL alive accumulation includes Apple, Google, Mozilla, and Opera.2 The armchair of the alive accumulation is Ken Russell.

History

WebGL grew out of the Canvas 3D abstracts started by Vladimir Vukićević at Mozilla. Vukićević aboriginal approved a Canvas 3D ancestor in 2006. By the end of 2007, both Mozilla22 and Opera23 had fabricated their own abstracted implementations.

In aboriginal 2009 Mozilla and Khronos started the WebGL Working Group.24 Version 1.0 of the WebGL blueprint was appear March 2011.1 WebGL was accepted to accept analytical aegis vulnerabilities in May 2011, which would acquiesce abnegation of account and cantankerous scripting attacks.25

Notable aboriginal applications accommodate Google Body.2627

Security

In May and June 2011, the aegis close Context Advice Aegis appear two letters on vulnerabilities that were present in Google Chrome and Mozilla Firefox WebGL implementations at the time. The letters provided archetype exploits able of cross-domain angel theft, cartoon anamnesis theft, and client-side abnegation of service.2528 This prompted the absolution of a WebGL aegis advising from the United States Computer Emergency Readiness Team (US-CERT)29; an advertisement by Microsoft that they could not endorse WebGL in its accepted form30; tweets from notable absolute experts John Carmack31 and Dan Kaminsky32; as able-bodied as responses from The Khronos Group33 and Mozilla34.

The afflicted browser vendors after addressed the cross-domain angel vulnerability by administration the aforementioned agent action on WebGL textures. The cartoon anamnesis annexation affair was anchored in Firefox 5. The adeptness of a awful calligraphy to blast or benumb the applicant apparatus charcoal a concern, depending on the robustness of the basal operating arrangement and cartoon driver, but does not acquiesce an antagonist to accretion ascendancy of the applicant apparatus or to abduct advice from it. As of March 2012, there are no WebGL-related entries in the National Vulnerability Database that would affect the currently aircraft adaptation of any browser

Developer libraries

There are several libraries for WebGL development.

WebGLU. the aboriginal library fabricated about available.35

GLGE

C3DL

Copperlicht

SpiderGL

PhiloGL

gwt-g3d

G3D (WebGL wrapper) for GWT (Google Web Toolkit)

SceneJS

X3DOM

Oak3D

Processing.js

Three.js

Turbulenz, OSGJS

XB PointStream

CubicVR.js.

A3

ANGLE (Almost Native Graphics Layer Engine) is an advancing accessible antecedent activity appear beneath the BSD authorization that allows advice WebGL agreeable OpenGL ES 2.0 API calls to DirectX 9 API calls on Microsoft Windows platforms after the charge for abstracted OpenGL drivers. In November 2011 ANGLE has accomplished an important milestone: it now passes the OpenGL ES 2.0 analysis apartment and has been certified as a adjustable GL ES 2.0 implementation.36 Despite this certification, ANGLE does not apparatus the OpenGL ES 2.0 concealment accent to the appear accessible blueprint instead relying on Khronos Group's abridged and clandestine accent acclimation tests.3738

Content creation

One of the means to actualize WebGL scenes after programming is to use a agreeable conception apparatus such as Blender or Autodesk Maya. The scenes are again exported to WebGL. This was aboriginal accessible with Inka3D, a WebGL consign plugin for Maya.