Skip to Content
Real-Time 3D Graphics with WebGL 2 - Second Edition
book

Real-Time 3D Graphics with WebGL 2 - Second Edition

by Farhad Ghayour, Diego Cantor
October 2018
Intermediate to advanced
500 pages
12h 40m
English
Packt Publishing
Content preview from Real-Time 3D Graphics with WebGL 2 - Second Edition

Have a Go: Moving Light

We mentioned before that we use matrices to move the camera around the scene. We can also use matrices to move lights. To do this, perform the following steps:

  1. Open ch03_02_moving-light.html in your editor. The vertex shader is very similar to the previous diffuse model example. However, there is one extra line:
vec3 light = vec3(uModelViewMatrix * vec4(uLightDirection, 0.0));
  1. Here, we are transforming the uLightDirection vector and assigning it to the light variable. Notice that the uLightDirection uniform is a vector with three components (vec3) and that the uModelViewMatrix is a 4x4 matrix. In order to complete the multiplication, we need to transform this uniform into a four-component vector (vec4). We achieve ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

WebGL Programming Guide: Interactive 3D Graphics Programming with WebGL

WebGL Programming Guide: Interactive 3D Graphics Programming with WebGL

Kouichi Matsuda, Rodger Lea
3D Graphics Rendering Cookbook

3D Graphics Rendering Cookbook

Sergey Kosarevsky, Viktor Latypov

Publisher Resources

ISBN: 9781788629690Supplemental Content