What can you do by programming a GPU


Fabien Benetou @Utopiah, WebVR developer

Before / After

depth of field

displacement map

combined maps

style e.g. cel shading

how on the hardware side

how on the software side..?

https://glitch.com/edit/#!/remix/equinox-rainstorm

help

Shaders

To do

  1. Add GTC Europe proposal with GPGPU & more
  2. pedagogical shader toy example (ideally embedded, if GPU allows ;)

Learn how to program GPUs to reach the largest audience with exciting new content in 2D, 3D, VR and AR all on the web.

The web isn't about {h1 style="color:red;"}GPU?{/h1} anymore but instead THREE.WebGLShader().

The talk will introduce how WebGL enabled 3D on the web, WebVR after that then even rendering in general today. The collaboration between GPU manufacturers, browser vendors, standardization organizations, developers, content producers made new functionalities available for the benefits of ALL users of the web. Those new functions now available will be showcased and explained in order to create exciting new content. The talk will open on the new media like WebAR also rely on the GPU.</textarea>

The talk will aims to : - show to GPU developers how to reach the widest audience via the web with their high quality content - teach web developers how they can leverage GPUs to create exciting new content

The motivation from this talk comes from my background in the 2nd category namely a "traditional" web developer (re) discovering GPU and overall even just 3D programming. I believe showing an efficient learning path to leverage GPUs to the largest community of developers, web developers, could help a lot. I personally hope to use this occasion to both summarize my knowledge on the topic and push it further.

Materials to be included:

example showcases

    https://www.awwwards.com/the-rise-of-shaders-filters-and-effects-in-web-projects.html
    https://www.shadertoy.com/
    http://www.jam3.com/
    http://fabien.benetou.fr/Tools/Shaders

key APIs

    https://threejs.org/docs/#api/renderers/webgl/WebGLShader
    https://developer.mozilla.org/en-US/docs/Web/API/window/requestAnimationFrame
    https://developer.mozilla.org/en-US/docs/Web/API/OffscreenCanvas

standardization

    https://w3c.github.io/webvr/spec/latest/
    https://webkit.org/wp-content/uploads/webgpu-api-proposal.html

generalization

    https://github.com/holgerl/webgl-gpgpu
    https://github.com/schteppe/gpu-physics.js

News since

   https://research.googleblog.com/2017/08/harness-power-of-machine-learning-in.html