1. Course Description
Computer Graphics is a course that teaches students how computers create, display, and manipulate visual images. From the icons on a phone to the scenes in a video game, every image on a screen is produced by the principles covered in this course. Students learn the mathematical foundations and algorithms that make graphics work, and apply them using OpenGL, the industry-standard graphics programming library.
The course is structured around two complementary themes:
- Conceptual & Applied Foundations: How images are created, transformed, and rendered with just enough mathematics to understand why algorithms work, not to derive them from scratch.
- Hands-on Programming with OpenGL: Implementing key techniques in C/C++ with OpenGL so students directly see results on screen and appreciate engineering trade-offs.
Students with a management background will find this course useful for understanding how digital interfaces, data visualizations, maps, and simulations are built, skills that are increasingly valued when evaluating and commissioning technology products.
2. General Objectives
After completing this course, students will be able to:
- Explain the fundamental concepts of computer graphics, including how images are represented and displayed on screen.
- Understand and trace classical rasterization algorithms - DDA and Bresenham’s for drawing lines, circles, and ellipses.
- Apply 2D geometric transformations (translation, rotation, scaling, reflection) using matrix representations.
- Apply clipping algorithms to restrict drawing within a defined window or viewport.
- Perform 3D transformations and apply parallel and perspective projections to represent 3D scenes on a 2D screen.
- Explain and implement visible surface detection methods including back-face culling and the Z-buffer algorithm.
- Apply illumination models (ambient, diffuse, specular) and shading techniques (Flat, Gouraud, Phong) for realistic rendering.
- Write basic OpenGL programs in C/C++ to draw shapes, apply transformations, and render lit 3D scenes.
3. Course Contents
| Specific Objectives | Content |
| Unit 1: Introduction to Computer Graphics [6 Hrs.] | |
|
|
| Unit 2: Graphics Programming Basics [2 Hrs.] | |
|
|
| Unit 3: Line and Circle Drawing Algorithms [7 Hrs.] | |
|
|
| Unit 4: 2D Transformations [9 Hrs.] | |
|
|
| Unit 5: 3D Transformations [5 Hrs.] | |
|
|
| Unit 6: Visible Surface Detection Methods [5 Hrs.] | |
|
|
| Unit 7: Introduction to Illumination [5 Hrs.] | |
|
|
| Unit 8: Introduction to OpenGL[4hrs] | |
|
|
| Unit 9: Applied Computer Graphics Tools, Trends & Industry Practice [5hrs] | |
|
|
4. Practical Work
- setting up the development environment and drawing first shapes.
- Creating and comparing raster and vector images; examining file sizes and quality at different resolutions.
- tracing DDA and Bresenham's manually then implementing both; comparing outputs.
- implementing Midpoint Circle and Ellipse algorithms with visual verification.
- applying translation, rotation, scaling, and reflection to shapes with interactive controls.
- implementing Cohen-Sutherland clipping and mapping a world scene to a viewport.
- implementing 3D transforms and comparing orthographic vs. perspective projections.
- implementing back-face culling and Z-buffer on a simple 3D scene.
- applying ambient, diffuse, and specular lighting with flat, Gouraud, and Phong shading.
- building a complete lit and textured 3D mini-scene using all concepts covered.
Some important contents that should be included in lab exercises are as follows:
- Lab 1: Introduction to Graphics Programming
- Lab 2: Raster vs. Vector Practice
- Lab 3: Line Drawing Algorithms
- Lab 4: Circle and Ellipse Drawing Algorithms
- Lab 5: 2D Transformations
- Lab 6: Clipping and Viewport Mapping
- Lab 7: 3D Transformations and Projection
- Lab 8: Hidden Surface Removal
- Lab 9: Lighting and Shading Models
- Lab 10: OpenGL Scene Creation
Note: Students are encouraged to combine concepts from multiple units in a final mini-project such as creating a small interactive graphics application (e.g., a 2D drawing tool, a 3D rotating object, or a lit scene)
5. Method of Instructions
General Instructional Technique: Lecture, Discussion, Readings, Question and Answer
Specific Instructional Technique: Practical Works, Project Based Learning, Self-Directed Learning, Industry Insights and Case Study
6. Evaluation System and Student's Responsibility
In addition to the formal exam(s), the internal evaluation of a student may consist of quizzes, assignments, lab reports, projects, class participation, etc. The tabular presentation of the internal evaluation is as follows.
| Internal Evaluation | Weight | Marks | External Evaluation | Marks |
| Theory | 30 | Semester End Examination | 50 | |
| Attendance & Class Participation | 10% | 3 | ||
| Assignments | 20% | 6 | ||
| Presentations / Quizzes | 10% | 3 | ||
| Internal Assessment | 60% | 18 | ||
| Practical | 20 | |||
| Attendance & Class Participation | 10% | 2 | ||
| Lab Report / Project Report | 20% | 4 | ||
| Practical Exam / Project Work | 40% | 8 | ||
| Viva | 30% | 6 | ||
| Total Internal | 50 | |||
| Full Marks: 50 + 50 = 100 | ||||
7. Student's Requirements
Each student must secure at least 45% marks separately in both internal assessment and practical evaluation with a minimum of 80% attendance in the class in order to appear in the Semester End Examination. Failing to get such score will be given NOT QUALIFIED (NQ) to appear the Semester-End Examinations.
8. Prescribed Books and References
Prescribed Text Books
- Hearn, D., & Baker, M. P. (2014). Computer Graphics with OpenGL (4th ed.). Pearson Education.
- Godse, A. P., & Godse, D. A. Computer Graphics. Technical Publications.
Reference Books
- Foley, J. D., van Dam, A., Feiner, S. K., & Hughes, J. F. (1995). Computer Graphics: Principles and Practice (2nd ed. in C). Addison-Wesley.
- Angel, E., & Shreiner, D. (2012). Interactive Computer Graphics: A Top-Down Approach with Shader-Based OpenGL (6th ed.). Addison-Wesley.
- Newman, W. M., & Sproull, R. F. (1979). Principles of Interactive Computer Graphics (2nd ed.). McGraw-Hill.
- Akenine-Möller, T., Haines, E., & Hoffman, N. (2018). Real-Time Rendering (4th ed.). CRC Press.