L7 - CS310 - Computer Graphics
L7 - CS310 - Computer Graphics
Credits: 3 (3,0,1)
Co-requisite: None
Level: 7
Course Description:
This course will provide basic techniques on computer graphics, including software, hardware and
applications. This course assumes good background in programming using C or C++, mathematics and linear
algebra. Major topics include introduction to basic computer graphics, 2D and 3D transformations, curve
modeling, and illumination and surface rendering approaches. Concepts and graphics algorithms will be
reinforced using standard application program interface (e.g. OpenGL).
Course Aims:
The aim of this course is to allow students to acquire knowledge of understanding Computer
Graphics Systems, specifically;
1. The fundamental display algorithms for raster graphics systems
2. The mathematical nature of 2- and 3-D environments
3. The properties of surfaces and their simulation
☒(a) An ability to apply knowledge of computing and mathematics appropriate to the program’s student
outcomes and to the discipline
☒(b) An ability to analyze a problem, and identify and define the computing requirements appropriate to its
solution
☒(c) An ability to design, implement, and evaluate a computer-based system, process, component, or
program to meet desired needs
☐(e) An understanding of professional, ethical, legal, security and social issues and responsibilities
☐(g) An ability to analyze the local and global impact of computing on individuals, organizations, and society
☐(h) Recognition of the need for and an ability to engage in continuing professional development
☒(i) An ability to use current techniques, skills, and tools necessary for computing practice.
☒(j) An ability to apply mathematical foundations, algorithmic principles, and computer science theory in the
modeling and design of computer-based systems in a way that demonstrates comprehension of the tradeoffs
involved in design choices. [CS]
☐(k) An ability to apply design and development principles in the construction of software systems of varying
complexity. [CS]
☐(j) An ability to use and apply current technical concepts and practices in the core information technologies
of human computer interaction, information management, programming, networking, and web systems and
technologies. [IT]
☐(k) An ability to identify and analyze user needs and take them into account in the selection, creation,
evaluation, and administration of computer-based systems. [IT]
☐(l) An ability to effectively integrate IT-based solutions into the user environment. [IT]
☐(m) An understanding of best practices and standards and their application. [IT]
1. Understand the foundations of computer graphics: hardware systems, math basis, light and color.
2. Implement key components of the rendering pipeline, especially visibility, characterization,
viewing, and shading to understand issues involved in implementing other components.
3. Evaluate the complexities of modeling realistic objects through modeling complex scenes using a
high-level scene description language.
4. Identify some advanced topics in computer graphics; these might include texturing, animation,
physically-based modeling, procedural modeling, curves and surfaces, global illumination,
interaction, visualization, and virtual reality.
CLO/SO a b c d e f g h i j k l m n
CLO1 √
CLO2 √ √
CLO3 √ √ √
CLO4 √ √ √
No. Topics Weeks Teaching
hours
1 Introduction and applications of Computer Graphics 2 6
Total 14 42
Textbook:
• Hearn, Donald, and M P. Baker. Computer graphics with OpenGL. Boston: Addison Wesley, 2011.
Essential references: