640 likes | 753 Views
Explore the principles of positioning synthetic cameras and the intricacies of perspective projection in computer graphics. This guide delves into the transformation of eye coordinates, the significance of orthobases, and the challenges of clipping within the viewing frustum. Additionally, it covers the basics of OpenGL, a powerful low-level graphics API, including buffer management, event-driven programming, and how to manipulate graphics primitives. Ideal for students and developers looking to enhance their understanding of 3D graphics and rendering techniques.
E N D
1. View Transformation CSC 830 Note 3
3. Positioning Synthetic Camera
4. Eye Coordinates
5. Transformation to Eye Coordinates
6. Machinery: Changing Orthobases
7. Applying M to u, v, n
8. Positioning Synthetic Camera
9. Positioning Synthetic Camera
10. Positioning Synthetic Camera
11. Positioning Synthetic Camera
13. Where are we?
14. What is Projection?
20. Perspective Projection
21. Perspective Projection
22. Perspective Projection
23. Are we ready to rasterize? Not yet. It is difficult to do clipping directly in the viewing frustum
24. The View Frustum
25. Canonical View Volume
26. Matrix Formulation
27. Perspective Projection
28. Qualitative Features of Perspective Projection
30. Continue withOpenGL
31. OpenGL OpenGL is a low-level graphics API
Window system independent
No facility for window events/user input
Can use additionally libraries (eg. GLUT)
Vertex driven
Primitives assembled from vertices
***OpenGL is a state machine***
32. OpenGL
33. Clearing the Buffers
34. Drawing Primitives
35. Drawing Primitives
36. Elements of Current State
37. Drawing Example
38. Changing the Current Color
39. Drawing Example
40. Changing the Current Normal
41. Drawing Example
42. Transformation Pipeline
43. Transformation Pipeline
44. Transformation Pipeline
45. Transformation Pipeline
46. Transformation Pipeline
47. Transformation Pipeline
48. Drawing Example
49. Cameras
50. Shading
51. Lights
52. Lights
53. Materials
54. Drawing Example
55. Event Driven Programming Program responds to events
Events are handled by user defined callback functions
Callbacks must know context and event type (passed through variables)
56. Event Driven Programming
57. Simple GLUT Example
58. Display Callback
59. More GLUT
60. Reshape Callback
61. Mouse Callbacks
62. Keyboard Callbacks
63. Animation Callbacks
64. Menu Callbacks