You are on page 1of 7

PMAS Arid Agriculture University

Rawalpindi
University Institute of Information Technology

CS 575 Computer Graphics, 3(2-3)

Class: BS (CS) 6 (A, B, Evening) Semester: Spring 2011

Instructor: Sheeraz Akram Office: Room No. 05,


Email: sheeraz@uaar.edu.pk UIIT, PMAS-
AAUR
sheeraz.cs@gmail.com
Website:
Counseling Hours:

Pre-requisites: CS-323
Course Description:
This course will not teach the use of graphic design software
such as Maya or 3D Studio Max, but rather the fundamentals
underpinnings of these programs. Students will also learn and
use OpenGL graphics API, but again the focus of the course is
on the underlying mechanisms of OpenGL rather than its
sophisticated use.

Course Outcomes: The goals of this course are to:

• Learn the principles of computer graphics


• Understand graphical models, fundamental techniques,
algorithms and implementation issues
• Practice some applied mathematics
Get familiar with a Graphical Library (OpenGL).

Books: Recommended Text Books:


• Computer Graphics using OpenGL 3rd Edition by F.S. Hill
and Stephen M. Kelly

Reference Books:
• Hearn and P. M. Baker Computer Graphics (Second
edition). London: Prentice Hall.
• Foley, Van Dam, Feiner, and Hughes. Computer
Graphics: Principles and Practice (Third/Second Edition).
Reading, Massachusetts: Addison-Wesley.
• OpenGL Programming Guide: The Official Guide to
Learning OpenGL, Version 1.2
Tentative Grading Quizzes + Assignments 08
Policy: Labs/Practical 20
Mid Term 12
Final Term 30
PMAS Arid Agriculture University
Rawalpindi
University Institute of Information Technology
Plagiarism Policy: Collaboration and group work is encouraged but each student is
required to submit his/her own contribution(s). Your writings must
be your own thoughts. Cheating and plagiarism will not be
tolerated and will be referred to the Dean for appropriate
action(s).
Quiz/Assignments The quizzes will be unannounced and normally last for 5-10
Policy minutes. The question framed is to test the concepts involved in
the last few lectures and/or reading assignments. It will be the
instructor’s will to choose the number of quizzes for evaluations
purposes.
In order to give practice and comprehensive understanding of
subject, home assignments will be given. The students are
advised to do the assignment themselves. Copying of assignment
is highly discouraged and taken as cheating case and will be
forwarded for disciplinary action. The questions in assignments
are more challenging to give students the confidence and
extensive knowledge about the subject and enable them to
prepare for the exams.
Project Work Students will be given a practical nature problem and at the end,
each group will make a presentation of his/her work and/or give a
demo of the project.

Topics (Theory)
Week # 01:
Introduction to Computer Graphics
What is Computer Graphics?
Where Computer Generated pictures are Used
Elements of Pictures created in Computer Graphics.
Graphics display devices
Graphics Input Primitives and Devices

Week # 02:
Initial Steps in Drawing Figures
Getting started making pictures
Drawing Basic Graphics Primitives
Making Line-drawings

Week # 03: (Quiz 01, Assignment 01)


Initial Steps in Drawing Figures
Simple interaction with mouse and keyboard
Additional Drawing Tools
Introduction
World Windows and Viewports
PMAS Arid Agriculture University
Rawalpindi
University Institute of Information Technology
Week # 04:
Additional Drawing Tools
Clipping Lines
Regular Polygons, Circles, and Arcs

Week # 05: (Quiz 02, Assignment 02)


Additional Drawing Tools
The Parametric Form of a Curve.
Vector Tools for Graphics
Introduction

Week # 06:
Vector Tools for Graphics
Review of Vectors
The Dot Product.
The Cross Product of Two Vectors.
Representations of Key Geometric Objects.
Finding the Intersection of two Line Segments.

Week # 07: (Quiz 03, Assignment 03)


Vector Tools for Graphics
Intersections of Lines with Planes, and Clipping.
Polygon Intersection Problems.
Transformations of Objects
Introduction
Introduction to Transformations
3D Affine Transformations

Week # 08:
Transformations of Objects
How To Change Coordinate Systems
Affine Transformations used in a Program.
To Draw 3D Scenes Interactively with OpenGL.

Week # 09:
Mid Term

Week # 10:
Modeling Shapes with Polygonal Meshes.
Introduction
Introduction to Solid Modeling with Polygonal Meshes.
Polyhedra.
PMAS Arid Agriculture University
Rawalpindi
University Institute of Information Technology
Week # 11:
Modeling Shapes with Polygonal Meshes.
Extruded Shapes.
Mesh Approximations to Smooth Objects.
Particle Systems and Physically Based Systems

Week # 12: (Quiz 04, Assignment 04)


Three-Dimensional Viewing
Introduction
The Camera Revisited.
To Specify a Camera in a program.

Week # 13:
Three-Dimensional Viewing
Perspective Projections of 3D Objects.
To Produce Stereo Views.
Taxonomy of Projections.

Week # 14: (Quiz 05, Assignment 05)


Rendering Faces for Visual Realism
Introduction
Introduction to Shading Models
Flat Shading and Smooth Shading.
Adding Hidden Surface Removal.
To Add Texture to Faces.
To Add Shadows of Objects.
OpenGL 2.0 & The Shading Language (GLSL)

Week # 15:
Tools for Raster Displays
Introduction
Manipulating Pixmaps.
Combining Pixmaps.
Do It Yourself Line Drawing: Bresenham's Algorithm.
To Define and Fill Regions of Pixels.
Manipulating Symbolically-defined Regions.
Filling Polygon-Defined Regions.
Aliasing and Anti-Aliasing Techniques.
Creating More Shades and Colors.

Week # 16: (Quiz 01, Assignment 01)


Curve and Surface Design
Introduction
Describing Curves using Polynomials.
On Interactive Curve Design.
PMAS Arid Agriculture University
Rawalpindi
University Institute of Information Technology
Bezier Curves for Curve Design.
Properties of Bezier Curves.
Finding Better Blending functions.
The B-Spline Basis Functions.
Useful Properties of B-Spline Curves for Design.
Rational Splines and NURBS Curves.
A Glimpse at Interpolation.
Modeling Curved Surfaces.

Week # 17:
Color Theory
Introduction
Color Description
The CIE Standard
Color Spaces
Indexed Color and the LUT.
Color Quantization.

Week # 18:
Final Term

(If time permits)


Ray Tracing
Introduction
Setting Up the Geometry of Ray Tracing
Overview of the Ray-Tracing Process
Intersection of a Ray with an Object.
Organizing a Ray Tracer Application.
Intersecting Rays with Other Primitives
To Draw Shaded Pictures of Scenes
Adding Surface Texture.
Anti-aliasing Ray Tracings.
Using Extents
Adding Shadows for Greater Realism.
Reflections and Transparency
Compound Objects: Boolean Operations on Objects
Ray Tracing vs. Ray Casting
PMAS Arid Agriculture University
Rawalpindi
University Institute of Information Technology
Topics (Practical)
Week # 01:
Introduction to Computer Graphics
Introduction to different Graphics tool.

Week # 02:
Initial Steps in Drawing Figures
Set up of Open GL in VC++ 6.0

Week # 03:
Initial Steps in Drawing Figures
Programs to draw different Shapes

Week # 04:
Additional Drawing Tools
Programs to Draw Polygons

Week # 05:
Programs to draw quards

Week # 06:
Vector Tools for Graphics
Programs for 2D transformations

Week # 07:
Vector Tools for Graphics
Programs for 3D Transformation

Week # 08:
Transformations of Objects
Programs for Interactive Drawing in OpenGL

Week # 09:
Mid Term

Week # 10:
Modeling Shapes with Polygonal Meshes.
Programs to Draw Solid Shapes

Week # 11:
Modeling Shapes with Polygonal Meshes.
Programs involving Meshes

Week # 12:
PMAS Arid Agriculture University
Rawalpindi
University Institute of Information Technology
Three-Dimensional Viewing
Programs for involving changes in View

Week # 13:
Three-Dimensional Viewing
Programs for Stereo View

Week # 14:
Rendering Faces for Visual Realism
Programs for Rendering a movie
OpenGL 2.0 & The Shading Language (GLSL)

Week # 15:
Tools for Raster Displays
Programs to display Raster Images

Week # 16:
Curve and Surface Design
Programs to Handle Curves

Week # 17:
Color Theory
Programs to handle colors in different resolution.

You might also like