Download presentation
Presentation is loading. Please wait.
Published byRodger Perry Modified over 9 years ago
1
Computer Graphics Coms 385 Fall 2003
2
Introduction Lecture 1 Wed, Aug 27, 2003
3
The Syllabus Syllabus.html
4
Introduction What are the goals of computer graphics? Realism Information Art In this course, we will most often be concerned with realism.
5
Introduction The main application areas of computer graphics. Scientific imaging. Computer games. Movies.
6
Introduction What are the goals of this course? To learn the principles of computer graphics. To learn the issues in computer graphics. To apply these principles in programs using the OpenGL graphics library.
7
Introduction What are not the goals of this course? To learn OpenGL. To create complicated data structures. To learn complicated mathematics.
8
Introduction Nevertheless, we will Learn OpenGL. Create complicated data structures. Learn complicated mathematics. But we will try to keep the second two to a minimum in your programs.
9
Introduction What else are not the goals of this course? To use graphics packages to create graphics (without programming). Adobe Photoshop. Maya. We will learn to program the graphics. In other words, this is a programming course.
10
Computer Prerequisites C++ programming (Coms 261) Data structures (Coms 262)
11
Mathematics Prerequisites Some calculus, maybe. Some linear algebra. Vectors Matrices We will introduce the necessary mathematics on a need-to-know basis. A high-school-level knowledge of these topics will probably be sufficient.
12
Programming Style Rendering a scene can be computationally intensive. Yet, for satisfactory animation the scene must be rendered in less than 1/60 sec. (Why?) Therefore, we place a premium on program efficiency.
13
Programming Style This permits us to do things that otherwise might be considered poor programming style. When deciding how to implement a function, we will choose the method that will execute the fastest, even if it is a bit more complicated or a bit less intuitive than other methods.
14
Programming Style We will make generous use of global variables to reduce the number of function parameters passed. Consequences Most functions will return void. Most functions will have few, if any, parameters. Functions will have “side effects.”
15
Programming Style When creating C++ classes, we will often make data members public. Then we can access them directly without going through inspectors or mutators.
16
Programming Style HOWEVER! Whenever we violate good programming guidelines, we should be able to justify it in terms of program efficiency.
17
Chapter 1 Introduction to Computer Graphics
18
Raster Displays A raster display consists of a rectangular array of picture elements, called pixels. Each pixel emits a single color. The color of each pixel is stored in the framebuffer. The image rendered is the combined effect of these pixels.
19
Rasterized Lines A rasterized line appears as a series of pixels in grid positions. This can produce “the jaggies.”
20
The Jaggies For which lines are the jaggies most obvious? For which lines are the jaggies least obvious? Antialiasing reduces the effect of the jaggies.
21
Examples HSC Display.cpp FunctionPlotter.exe
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.