Skip to editor
File
New File Ctrl+N
New Folder

Save Ctrl+S
Upload File…
Download as ZIP

Delete File

Reset Files…
View
Toggle Sidebar Ctrl+B
Toggle Terminal Ctrl+`

Word Wrap Alt+Z

Exercise Info
Run
Run Code Ctrl+Enter
Save & Run F5

Clear Output
CS 476: Computer Graphics - Module 10 Exercise 1 (1.5 pts)
Explorer
GitHub

Connect to GitHub to push and pull your project files to a repository.

On the page that opens, create a token with repo scope, copy it, then paste it below.

Paste the personal access token you created on GitHub with repo scope.

Click Refresh to load commit history
Exercise Info
← Prev Next →

Goals

  1. Explore how Lambertian illumination can be implemented with vertex shaders
  2. Explore how ideas from physics/optics can be implemented in code

Instructions

Fill in the vertex shader to complete per-vertex Lambertian illumination (also known as Gouraud Lambertian illumination). Most of the code has been completed for you, but you need to construct the vector from the vertex position in world coordinates to the light position. Then, you need to take the dot product of a normalized version of this vector and the normal direction NT at the surface to compute your diffuse coefficient. If the coefficient is less than 0, you should clamp it at 0

The Ursinus-WebIDE by Chris Tralie (opens in new tab) and Bill Mongan (opens in new tab)

Your browser does not support WebGL. A graphical rendering canvas would appear here.


          
No suggestions. Code quality feedback will appear here.
Not logged in graphics_shader
Ln 1, Col 1