School of Electronics and Computer Science:
COMP3004 Principles of Computer Graphics
Basic Information
| School | Dept- Electronics & Computer Science |
|---|---|
| Known as | COMP3004. |
| Session and Semester | Semester One, 2011 - 2012 |
| Credit | 10 Credit Points |
| Unit Leader | Dr John N Carter |
| Teachers | EJ "Ed" Zaluska |
| Moderators | Dr Enrico Costanza |
| Study | Assignment 25 hours, Other 17 hours |
| Assessment | 50% examination, 50% coursework |
| Coursework | 2 minor (Low level Graphics, OpenGL) and 1 major (Virtual World) |
| Teaching | Lectures 23, Tutorial 1 |
| Prerequisites and Exclusions | Prerequisites: (COMP1003 - Advanced Programming or COMP1010 - 'C' Programming). |
| Referral | On referral, this unit will be assessed 100% by examination. |
| Syllabus Approved |
Description
Aims
The manipulation and display of geometric information is at the heart of many computer applications and graphical output plays an important part of modern Human - Computer interactions.
The aim of this course is to show how to generate, manipulate and display graphical images.
Learning Outcomes
Knowledge and Understanding
Having successfully completed the module, you will be able to demonstrate knowledge and understanding of:
Computer Graphics Systems, specifically;
- The fundamental display algorithms for raster graphics systems
- The mathematical nature of 2- and 3-D environments
- The properties of surfaces and their simulation
Intellectual Skills
Having successfully completed the module, you will be able to:
- Design algorithms to raster scan new curves and shapes.
- Devise the complex 3-D transformations and coordinate system changes required to build complex scenes.
- Manipulate lighting and material properties to produce pleasing visual effects
Better students, with sufficient experience in software engineering, will be able to take the basic algorithms and design their own graphics programing environment.
Practical Skills
Having successfully completed the module, you will be able to:
Program low level algorithms at the pixel level.
Program complex 3-D scenes using a modern computer graphics system, OpenGL
General Transferable (key) Skills
Having successfully completed the module, you will be able to:
Appreciate the complexity and effort involved in producing modern computer games, film and television animation.
Topics Covered
- A brief introduction to the capabilities of a popular graphics package. Introduction to primitive graphics elements, SDL, Direct X etc.
- Programming in OpenGL, specifying shapes, geometry, viewing, animation and user interaction.
- Manipulating pixels, line drawing and Bresenhams' algorithms. Arbitrary curves. Circles, Ellipses and filling areas. Flood Fill for polygon's. Scan converting polygons.
- Scan converting polygons. Smooth curves and splines, Beizier Curves. Pix Blit and its related techniques.
- Device coordinates, Viewports and windows. Transformations, translation, rotating scaling and shear. Device independent and device coordinates and graphics pipeline.
- Clipping including the Cohen-Sutherland algorithms.
- Introduction to vectors and homogeneous coordinates. Derivations of transformations and matrix representation. Show how transforms combine and how they are put together. Three dimensional transformations, Coordinate systems.
- Concept of a synthetic camera and the perspective projection. 3-D Clipping and the view volume.
- 3-D representation. Hidden Line and Hidden Surface removal using Z-Buffers. Introduction to BSP Trees.
- Real world model for three D lighting. The intensity function. Gouraud and Phong Shading as approximations.
- Smooth curves and splines. Beizier Curves, C-Splines, Besier Surfaces and Nurbs.
- Advanced lighting and reflection. Texture mapping, Mip Maps and Bump mapping
Teaching and learning activities
Teaching methods include
Lectures twice a week.
Three coursework assignments:
- Low level (pixel) algorithms using SDL
- Concentrating on basic technique and OpenGl programming
- Gives an opportunity for you to demonstrate flair and imagination, while exercising the skills learnt in the first assignment.
Learning activities include
All students expected, and assumed, to have read the course text
Better students should read around the subject
Working with SDL and OpenGl.
Methods of assessment
| Assessment method | Number | % contribution to final mark |
|---|---|---|
| Examination [exam] | 1 | 50 |
| Programming asignments [cwork] | 3 | 50 |
Feedback and student support during module study
Coursework marked and returned with comments before the next assessment, where possible.
Past Examination papers on the WWW
Relationship between the teaching, learning and assessment methods and the planned learning outcomes
The knowledge, understanding and intellectual outcomes will be discussed in lectures.
The coursework will enable you to see many of the techniques discussed in action,and will provide opportunity to explore their strengths and limitations.The 3nd coursework is double marked to remove any subjective bias due to the highly individualistic nature of the submissions.
The exam will test your breath of knowledge and will consist of a large number of short questions, a proportion will be directly relevant to the coursework.
Resources
Core Resources
- Angel E and Shreiner D, Interactive Computer Graphics: A top-down approach with Shader-based Open GL, 6th Edition, Pearson Education 2011 [Library] [Shops]
Background Resources
- Foley J D and Van Dam, Computer Graphics: Principles and Practice (2nd Edition) in C , Addison Wesley 1996 [Library] [Shops]
- Hearn D and Baker M P, Computer Graphics with OpenGL 3rd Edition, Prentice Hall 2003 [Library] [Shops]
- Foley J D and Van Dam A, Introduction to Computer Graphics, Addison Wesley 1994 [Library] [Shops]
- Hill F S, Computer Graphics using OPEN GL 2nd Edition, Prentice Hall 2001
- Bourg D Physics for Games Developers O'Reilly 2001 [Library] [Shops]
Computer requirements
- Access to modern computer workstations, with high performance graphics cards.
Software requirements
- C, C++ Compilers and software environments that support the latest versions of SDL, OpenGl and GLUT.
Other resource requirements
- Network access to course Web site with lecture material, assignment details, software tools and programming examples.
Taught to
COMP3004
Non-existing cohort: "ceMEng3" (Optional)Pt III BSc Computer Science (Optional)
Non-existing cohort: "csBScAi3" (Optional)
Non-existing cohort: "csBScDs3" (Optional)
Non-existing cohort: "csBScIm3" (Optional)
Computer Science Integrated PhD (Optional)
Pt III MEng Computer Science with Artificial Intelligence (Optional)
Pt III MEng Computer Science (Optional)
Pt III MEng Computer Science with Distributed Systems & Networks (Optional)
Pt III MEng Computer Science with Image and Multimedia Systems (Optional)
Pt III MEng Computer Science with Mobile and Secure Systems (Optional)
Pt III BEng Electronic Engineering (Optional)
Pt III MEng Electronic Engineering (Optional)
Pt III MEng Electronic Engineering with Artificial Intelligence (Optional)
Pt III MEng Electronic Engineering with Computer Systems (Optional)
Pt III MEng Electronic Engineering with Nanotechnology (Optional)
Pt III MEng Electronic Engineering with Optical Communications (Optional)
Pt III MEng Electronic Engineering with Power Systems (Optional)
Pt III MEng Electronic Engineering with Mobile and Secure Systems (Optional)
Pt III MEng Electronic Engineering with Wireless Communications (Optional)
ECS Socrates Students (Optional)
Pt III Units offered to other Faculties (Optional)
Pt III BEng Software Engineering (Optional)
Pt III MEng Software Engineering (Optional)
Students who are not registered on an ECS approved programme may take this module subject to meeting its pre-requisites and the availability of resources. To confirm this, please can you contact the module leader (as listed above) in the first instance. They will then refer you on to the appropriate director of studies for formal approval of your selection.
Change Log
2011-06-29 10:30:29.900 - jnc2011-06-29 10:28:54.173 - jnc
2011-04-04 18:59:39.290 - Roll script
