Transcript

WebGL: yesterday, today, tomorrow

Bogdan GorpynchukNWG studios, co-founder & core developer

WebGL - one of many• WebAudioApi

• FileAPI

• WebRTC

• WebWorkers

• WebSockets

• and lots more!

WebGL ?• JS API to OpenGL ES [v2.0]

• Drawing to a canvas using special context

• Low-level drawing [buffers, textures, shaders]

• Accelerated by GPU

• 3D and 2D

Yesterday2011-2015

What we had…• Chrome WebGL support 10+

• Firefox WebGL support 4+

• IE 10+ [poor support]

• Almost no mobile support [till recent time]

• Low performance

Pros and cons• Low support

• Quite slow

• No mobile [almost]

• Not enough features

• But it’s FUN and looks nice

Main projects• Three.js

• Chrome experiments

• PlayCanvas

• HexGL

Today

Improvements ?• Working stable 1.0 WebGL release

• Full browser support [and mostly mobile]

• Nice performance

• Lots of examples, tools and frameworks

• Large community

Engines• Three.js (threejs.org)

• Goo engine (goocreate.com)

• PlayCanvas (playcanvas.com)

• Artillery Engine (artillery.com)

• Scene.js (scenejs.org)

• BabylonJS (babylonjs.com)

Tools• ShaderToy

• WebGL inspector [chrome extension]

• Chrome webGL profiler

• WebGL <-> node.js npm plugins

• And lots more

Unity and Unreal + asm.js

• FF support

• Chrome performance improvements

• LLVM compilers [C++ / Python / Ruby support]

• But has some problems…

asm.js

asm.js as it is…

• Awesome for newbies

• Documentation

• Extreme amount of examples

• Largest webGL community

• OpenSource [nicest js code I have ever seen]

Three.js (by mr.doom)

Basic sceneSome VAR’s

Create scene and camera

Setup renderer

Add cube object

Rotate / render

And THE hidden part

Allmost 500 lines of code!vs. 37 using three.js

Tomorrow2015+

WebGL 2.0• Moving to OpenGL ES 3.0

• More gl extensions [instancing, VAO, Fragment depth]

• 3D Textures

• Sampler Objects

• Uniform Buffer Objects

• Sync/Query Objects.. and more!

Future is here?• WebGL 2.0 still has a long way to go.

• WebAssembly! New way of asm.js-ing!

• Still has problems with support [minor, but problems]

• Still developing libs / frameworks / tools, and it’s not bad!

NOPE!

DemoTime

QA?Bogdan Gorpynchuk

http://nwgstudios.comSkype: le.sunge-mail: [email protected]


Top Related