Presentation is loading. Please wait.

Presentation is loading. Please wait.

Graphics Graphics Korea University kucg.korea.ac.kr 1 Lights & Material 고려대학교 컴퓨터 그래픽스 연구실.

Similar presentations


Presentation on theme: "Graphics Graphics Korea University kucg.korea.ac.kr 1 Lights & Material 고려대학교 컴퓨터 그래픽스 연구실."— Presentation transcript:

1 Graphics Graphics Lab @ Korea University kucg.korea.ac.kr 1 Lights & Material 고려대학교 컴퓨터 그래픽스 연구실

2 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 2 Contents Phone reflection model Diffuse, specular, and ambient reflections OpenGL lighting Specifying a light source Point, distant, and spot lights Specifying a material Exercise

3 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 3 DrawScene( ) – WireTeapot

4 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 4 Wired Utah Teapot

5 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 5 Phong Reflection Model Simple analytic model: Diffuse reflection + Specular reflection + Emission + “Ambient”

6 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 6 Diffuse Reflection (1/3) Assume surface reflects equally in all directions Examples: chalk, clay

7 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 7 Diffuse Reflection (2/3) How much light is reflected? Depends on angle of incident light dL  dA  cos 

8 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 8 Diffuse Reflection (3/3) Lambertian model Cosine law (dot product)

9 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 9 Specular Reflection (1/3) Reflection is strongest near mirror angle Examples: mirrors, metals

10 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 10 Specular Reflection (2/3) How much light is seen? Depends on angle of incident light and angle to viewer

11 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 11 Specular Reflection (3/3) Phong model {cos(  )} n

12 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 12 Emission Represents light emitting directly from polygon Emission ≠ 0

13 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 13 Ambient Term Represents reflection of all indirect illumination This is a total hack (avoids complexity of global illumination)!

14 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 14 OpenGL Lighting Must enable “lighting calculation” and each “light source” All colors will be assigned based on light sources and material properties not by glColor*( ) glEnable(GL_LIGHTING); glEnable(GL_LIGHT0); glEnable(GL_LIGHTING); glEnable(GL_LIGHT0);

15 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 15 DrawScene( ) – SolidTeapot

16 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 16 Solid Utah Teapot

17 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 17 Enable Lighting (1/3)

18 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 18 Enable Lighting (2/3)

19 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 19 Specifying a Light Source (1/2) Defaults for “glEnable(GL_LIGHT0)” No ambient light Diffuse and specular component – white (1.0, 1.0, 1.0, 1.0) Cf) Other lights – black (0.0, 0.0, 0.0, 1.0) Position – (0.0, 0.0, 1.0, 0.0)  distant light

20 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 20 Specifying a Light Source (2/2) Create a light source light GL_LIGHT0, GL_LIGHT1, … param GL_POSITION, GL_DIFFUSE, GL_SPECLAR, GL_AMBIENT glLight{if}(GLenum light, GLenum param, TYPE value); glLight{if}v(GLenum light, GLenum param, TYPE *value); glLight{if}(GLenum light, GLenum param, TYPE value); glLight{if}v(GLenum light, GLenum param, TYPE *value);

21 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 21 Light Sources Distant light GL_POSITION, GL_DIFFUSE, GL_SPECULAR, GL_AMBIENT Point light GL_CONSTANT_ATTENUATION, GL_LINEAR_ATTENUATION, GL_QUADRATIC_ATTENUATION Spot light GL_SPOT_DIRECTION, GL_SPOT_CUTOFF, GL_SPOT_EXPONENT

22 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 22 Point Light Source (1/2)

23 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 23 Point Light Source (2/2)

24 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 24 Control of Light Position (1/4)

25 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 25 Control of Light Position (2/4)

26 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 26 Control of Light Position (3/4)

27 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 27 Control of Light Position (4/4)

28 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 28 Specifying All Terms (1/2)

29 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 29 Specifying All Terms (2/2)

30 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 30 Point Light – Attenuation (1/2)

31 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 31 Point Light – Attenuation (2/2)

32 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 32 Spot Light (1/4)

33 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 33 Spot Light (2/4)

34 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 34 Spot Light (3/4)

35 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 35 Spot Light (4/4)

36 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 36 Multiple Lights (1/2)

37 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 37 Multiple Lights (2/2)

38 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 38 Specifying a Material (1/5) Reflectivity properties of a material face GL_FRONT, GL_BACK, GL_FRONT_AND_BACK name GL_DIFFUSE, GL_SPECLAR, GL_AMBIENT, GL_AMBIENT_AND_DIFFUSE, GL_EMISSION, GL_SHININESS glMaterial{if}(GLenum face, GLenum name, TYPE value); glMaterial{if}v(GLenum face, GLenum name, TYPE *value); glMaterial{if}(GLenum face, GLenum name, TYPE value); glMaterial{if}v(GLenum face, GLenum name, TYPE *value);

39 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 39 Specifying a Material (2/5)

40 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 40 Specifying a Material (3/5)

41 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 41 Specifying a Material (4/5)

42 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 42 Specifying a Material (5/5)

43 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 43 White Shiny Material (1/2)

44 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 44 White Shiny Material (2/2)

45 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 45 Brass Material (1/2)

46 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 46 Brass Material (2/2)

47 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 47 Red Plastic Material (1/2)

48 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 48 Red Plastic Material (2/2)

49 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 49 Multiple Objects (1/2)

50 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 50 Multiple Objects (2/2)

51 KUCG Graphics Lab @ Korea University kucg.korea.ac.kr 51 Exercise Create yours!! color plate 25


Download ppt "Graphics Graphics Korea University kucg.korea.ac.kr 1 Lights & Material 고려대학교 컴퓨터 그래픽스 연구실."

Similar presentations


Ads by Google