Basic Lighting and Shading
The Important Properties of Light It can Reflect, bend, spread and scatter
Most Common Light Sources Global Illumination Light Located at Infinity (Distant Light) Light Located Locally – Uniform Light (Ambient) – Point Source Intensity is L(p,P 0 ) = (1 / |p-p 0 | 2 ) L(P 0 ) – Spotlights (Directional Lights)
OpenGL Light Types Point Spotlight Ambient Distant
Point home.elka.pw.edu.pl/.../general/General.html
Spot home.elka.pw.edu.pl/.../general/General.html
Ambient (Area) home.elka.pw.edu.pl/.../general/General.html
Distant (Sun / Moon) home.elka.pw.edu.pl/.../general/General.html
Physical Light Bidirectional Reflection Distribution Function – (BRDF) This is based on 5 Variables: – Frequency – Source Vector (x,y) – Output Vector (x,y) It also requires a ‘real’ surface
This is a hugely expensive calculation Most light consists of a large frequency Range In games we have many fast ways of creating the effects of light
Firslty we need to get rid of the ‘spectrum’ The human Eye recognises colours through 3 types of cones – We can exploit this behaviour by directly addressing the cones
By exploiting this behaviour we can define the colour of light as RGB Varying the levels of Red, Green and Blue can make the eye ‘see’ every colour of the spectrum.
The downside to this simplification is that our model of light looses the ability to separate during reflections/refractions. As a solution to this we can either use multiple lights, or use explicit functions to ‘create’ light separation For offline rendering you may even consider doing a BRDF Rendering using a more complex Lighting method rojects/micro_rs/theory.html
Using Basic Lighting in OpenGL ed/Cg%20Effects%20Explained.htm
Enabling Lighting Enable Lighting in OpenGL glEnable(GL_LIGHTING) Enable Each Individual Light glEnable(GL_LIGHTi) i <= GL_MAX_LIGHTS All implementations support at least 8 lights
The 3 Functions to set you lights glLightfv(…) glLightf(…) glLightModelfv(…)
Specular Reflection Specular – The more specular a surface, the move light is reflected very closely to the angle of reflection – A mirror is a near perfect Specular Surface oomla/forum/files/specular_mat erial_test_01_168.jpg
Diffuse Reflection (Lambertian reflection)
Emissive It Glows! network.html
Translucent Surfaces hp?productid=1572&cat=293&page= 2 cts/Raytracer/
The End (for now)