Please
read these notes carefully: they contain important information regarding
this course, including assignment and assessment details, and what you
need to achieve in order to pass the subject.
|
Handbook entry for this subject (http://www.monash.edu.au/pubs/handbooks/units/CSE3313.html)
This course aims to give a general introduction to two and three-dimensional computer graphics. Computer graphics techniques play a major a role in computing and many other disciplines. Applications include such diverse areas as graphical user interfaces (GUIs), photorealistic simulation in the film and television industries, scientific visualisation, medical simulation, Geographic Information Systems (GIS), Virtual Reality (VR), interactive multimedia and computer games. In addition to these many applications, computer graphics has a strong foundation in computer science. This course has an emphasis on theory, with reference to the practical applications of algorithms and techniques. Successful completion of the course should give you a solid background in the basics of modern computer graphics topics, such as synthetic camera models, graphics programming languages, hidden surface removal and shading algorithms. This knowledge can be applied to engineer simple graphics applications and serves as a basis to more advanced study in graphics at honours and postgraduate level.
The following are prerequisite units for this course: FIT2004 or CSE2304 (Algorithms and Data Structures)
It is expected that you are familiar with programming in C or C++ in a Unix environment. You should know how to use programs such as
gcc
,Make
andgdb
. In addition it is assumed that you have an appropriate maths background (linear algebra). In particular you should be familiar with the following terms and concepts:
See the library web reading list. (http://www.lib.monash.edu.au/resource lists/c/cse3313.html)
Recommended Text:
Hearn, Donald & M. Pauline Baker, Computer Graphics with OpenGL (3rd Edition), Prentice-Hall 2004.
For the assignments:
Angel, Edward, Open GL: A primer (2nd Edition), Addison Wesley, 2005.
Other texts:
Angel, Edward, Interactive computer graphics – a top down approach with Open GL (4th edition), Addison-Wesley, 2007.
Slater, Mel et. al., Computer Graphics and Virtual Environments: from realism to real-time, Addison Wesley, 2002.
Foley, James D. et. al., Computer Graphics: Principles and Practice (2nd Edition), Addison Wesley, 1990.
Rogers, David F., Procedural Elements for Computer Graphics (2nd Edition), McGraw-Hill, 1998.
Hill, F.S. Jr., Computer Graphics Using Open GL (2nd Edition), Prentice-Hall, 2001.
See also the web resources section of the course resources page for additional books and on-line resources.
All assignments to be completed on Linux or UNIX variants (Mac OS X acceptable), using the C or C++ programming languages.
The MESA Open GL library is installed on university computing facilities available for this unit.
There are no formal lab classes for this unit, however there are tutorials which cover the practical and programming aspects of the course. You need to allocate your own time to complete the assignments. This is a six point unit, which means you should be spending 6-8 hours per week (in addition to lectures and tutorials) on study related to this unit.
Week | Lecture Topic | Tutorial Topic |
1 | Unit overview. History of computer graphics. Graphics input and output
devices. Display and basic interaction. |
– |
2 | Image capture and display, frame buffer techniques and storage. |
– |
3 | Algorithms for line drawing on raster displays. |
Basics of OpenGL, frame buffer, simple drawing commands. |
4 | Introduction to 2D graphics, affine transformations, modelling primitives. |
– |
5 | Compound transforms, aggregate objects. |
Transformations, using the stack, windows and text. |
6 | 2D clipping, windowing systems, co-ordinate systems and transformations. |
_ |
7 | Introduction to the Open GL graphics language, covering primitives, text,
attributes, transformations, and co-ordinate systems. |
Creating 3D primitives, efficient storage and display using display lists. The basic rendering process. |
8 | 3D transforms and primitives. |
– |
9 | The synthetic camera model. Projective transformations. |
Constructing 3D views, effective use of the stack for multiple compound transformations and windows. |
10 | Backface elimination. Algorithms for hidden surface removal. |
– |
11 | Shading and illumination models. Shading interpolation models. Ray Tracing and Radiosity. | Lighting with OpenGL. Advanced features such as vertex buffers, OpenGL shading language. |
12 | Introduction to colour theory. Basics of computer animation. |
– |
13 | Revision. Exam preparation. |
In addition to the lectures, two hour tutorials are run every second week, beginning in week 3. The tutorials focus on the programming and practical assessment for this unit. Some tutorials include more advanced information, such as OpenGL lighting and shading languages. These advanced topics are not examinable but may be used as part of the practical exercises.
Attendance at tutorials is optional.
Tutorials run every second Monday, from 3-5pm in the CEMA Media Room (145, Bldg. 63) beginning week 3. The tutorial page has material related to the tutes.
All study materials required for this unit, with the exception of textbooks, are provided on-line. See the unit web page (http://www.csse.monash.edu.au/~jonmc/CSE3313/) for details.
The resources page contains links to
sample Open GL code, and teaching programs to help you understand the material
covered in the course.
Examination, 3 hours: 70%
Two assignments (total assessment value 30%) :
Assignments are submitted electronically (see the assessment
page for details).
Late submissions will be penalised.
If you believe that your assignment will be delayed because of circumstances
beyond your control (such as illness) you should apply for an extension before the
due date. Medical certificates or certification supporting your application
will be required.
Assignment marks (and feedback) will be available on-line within a few weeks of the submission date.
You need to achieve a total mark of at least 50% to pass this subject (Total mark = exam mark + assignment 1 mark + assignment 2 mark). There are no hurdle requirements for this unit.
It is important that your solutions to the assignment questions be your
own work. It is perfectly acceptable to seek help and advice when completing
the assignments, but this must not be taken to the point where what is
submitted
is in part someone else's work.
Please note that, since the assignments are used in assessing your final
grade in this unit, the Faculty policy on Cheating applies. In addition,
the following
School policy applies.
" The assignments set in this unit are designed primarily as learning exercises, but they also contribute to your final grade. Copying of other student's assignment solutions is unacceptable.
All students have a responsibility to ensure that their assignment solutions are their own work. You must ensure that others do not obtain access to your solutions for the purpose of copying a part of them. Where such plagiarism is detected, both of the assignments involved will receive no marks.
In
significant cases of plagiarism, action may be taken against the offenders
under the University's disciplinary regulations."
In addition, plagiarism includes copying of information found on the internet (including source code).
The lecturer for this unit is Dr
Jon McCormack, CL(Bldg. 63), Room 144
email: jonmc@csse.monash.edu.au
Phone: x59298 (9905.9298 outside Monash)
The CSSE Help Room, located in Bldg. 26 offers tutor assistance for this unit. See the help room timetable for details (currently scheduled times are Thursdays 11am-12pm starting week 3).
Consultation hours for this unit in Australia are Wednesday 5-6pm. Please email for an appointment to see the lecturer outside these hours.
A subject discussion newsgroup is available at news://collabra1.monash.edu.au/classes.it.scsse.cse3313.02-07.disc or via the my.monash portal. The newsgroup allows anonymous posting.
Close to the exam period, extra consultation hours will be listed here.