Course Code | COMP3421 |
Course Title | Computer Graphics |
Units of Credit | 6 |
Course Website | http://cse.unsw.edu.au/~cs3421 |
Handbook Entry | http://www.handbook.unsw.edu.au/undergraduate/courses/current/COMP3421.html |
This course teaches the fundamental algorithms underlying computer graphics in both 2D and 3D. It introduces students to an industry standard graphics API (OpenGL) and gives them experience developing graphical applications.
Lecturer in Charge:
Rob Everest
robertce@cse.unsw.edu.au
Consultations: Friday 1pm in K17 G01
The course timetable is available here .
This course aims to teach the fundamental algorithms underlying computer graphics in both 2D and 3D. The course also aims to introduce students to an industry standard graphics API (OpenGL) and give them experience developing graphical applications using Java.
After successfully completing this course, students will:
This course contributes to the development of the following graduate capabilities:
Graduate Capability | Acquired in |
scholarship: understanding of their discipline in its interdisciplinary context |
lectures, assignments
|
scholarship: capable of independent and collaborative enquiry |
assignments
|
scholarship: rigorous in their analysis, critique, and reflection |
tutorials
|
scholarship: able to apply their knowledge and skills to solving problems |
tutorials, assignments
|
scholarship: ethical practitioners |
all course-work by doing it yourself
|
scholarship: capable of effective communication |
tutorials, final assignment demonstration
|
scholarship: digitally literate |
everywhere in CSE
|
leadership: enterprising, innovative and creative |
assignments
|
leadership: collaborative team workers |
assignments
|
professionalism: capable of operating within an agreed Code of Practice |
assignments
|
The formal prerequisite for COMP3421 is COMP2511 or COMP2911.
For COMP9415 there is no formal prerequisite, but you are still expected to have the requisite knowledge.
Both undergrads and postgrads are expected to have a working knowledge of:
Computer Graphics is fun. You can use it to make cool games and amazing special effects in movies. So learning it should be fun.
Computer Graphics is hard. The reason why the world looks like it does is because there are gazillions of photons bouncing around between all the objects. Simulating all the photons and the properties of the objects is too hard to do, so we have to come up with mathematical approximations and clever algorithms.
So you are going to have to work hard to understand the maths and the algorithms. But then you get the reward of making pretty pictures. Which is even more fun because you have earned it.
Lectures will be used to introduce theoretical concepts and will include exercises, demonstrations and live coding examples.
In week 1 you can go to an optional lab where you can get help setting up eclipse to work with OpenGL and work through your first graphics program. This is your chance to get help setting up on your laptops too if you need it, so bring them along as well.
Tutorials aim to clarify ideas from lectures. There will be a number of exercises set for each tutorial class. The aim of the class is not to simply get the tutor to give you the answers; the aim is to focus on just one or two of the exercises and work through them in detail, discussing as many aspects, alternative approaches, fine details, etc. as possible. You must be active and ask questions in tutorials. Ideally, students should run the entire tute themselves, with the tutor being a moderator and occasionally providing additional explanations or clarifications. Any questions that are not completed during tutorials can be used for self study and revision. Sample solutions to most tutorial questions will be provided at the end of each week.
Assignments are a very important part of the course. They allow students apply the techniques introduced in the course and the final assignment involves students working in pairs to create a significant application.
The online quizzes assess your comprehension of the lecture content throughout the course. You are encouraged to submit the quiz shortly after attending or viewing the lecture. They are all automatically marked.
Assessment will be based on 2 assignments and a final exam and is subject to scaling. Contributions are as follows:
Task | Value |
---|---|
Quizzes | 10% |
Assignment 1 | 10% |
Assignment 2 | 20% |
Exam | 60% |
This is an individual assignment
Released: Week 2
Due: End of week 5
Covers: 2D drawing and transformations
Late Penalty: 10% per day off the maximum mark
This will be a pair assignment
Released: Week 7
Initial milestone due: End of week 10
Final submission due: End of week 12. Demo in week 13
Covers: 3D drawing and transformations
Late Penalty:
10% per day off the maximum mark for the final submission.
There will be 5 quizzes throughout the semester (worth a varying number of marks, but coming to a total of 10% of the overall course mark). They will be released after the lecture in weeks 1, 3, 5, 7 and 9. The first four will be due on Friday at 11:59PM in the following week. For example, the quiz for week 1 will be due on the Friday of week 2. The final week 9 quiz will be due on Friday at 11:59PM in week 11.
There will be a two hour final exam at a time to be arranged, covering the entire syllabus.
The exam will be open book. Calculators and rulers will also be allowed into the exam.
A supplementary exam will only be awarded under the following situations:
If you cannot attend the Final Exam because of illness or misadventure, then you must submit a Special Consideration request, with documentation, through MyUNSW within 48 hours of the exam. If your request is reasonable, then you will be awarded a Supplementary Exam.
If your work on assignments in this course is affected by unforseen adverse circumstances, you should apply for Special Consideration through MyUNSW, including documentation on how your have been affected. If your request is reasonable and your work has clearly been impacted then you may be offered an extension.
If you are registered with Disability Services, please forward your documentation to Robert Clifton-Everest within the first two weeks of semester.
The Student Code of Conduct ( Information , Policy ) sets out what the University expects from students as members of the UNSW community. As well as the learning, teaching and research environment, the University aims to provide an environment that enables students to achieve their full potential and to provide an experience consistent with the University's values and guiding principles. A condition of enrolment is that students inform themselves of the University's rules and policies affecting them, and conduct themselves accordingly.
In particular, students have the responsibility to observe standards of equity and respect in dealing with every member of the University community. This applies to all activities on UNSW premises and all external activities related to study and research. This includes behaviour in person as well as behaviour on social media, for example Facebook groups set up for the purpose of discussing UNSW courses or course work. Behaviour that is considered in breach of the Student Code Policy as discriminatory, sexually inappropriate, bullying, harassing, invading another's privacy or causing any person to fear for their personal safety is serious misconduct and can lead to severe penalties, including suspension or exclusion from UNSW.
If you have any concerns, you may raise them with your lecturer, or approach the School Ethics Officer , Grievance Officer , or one of the student representatives.
Plagiarism is defined as using the words or ideas of others and presenting them as your own. UNSW and CSE treat plagiarism as academic misconduct, which means that it carries penalties as severe as being excluded from further study at UNSW. There are several on-line sources to help you understand what plagiarism is and how it is dealt with at UNSW:
Make sure that you read and understand these. Ignorance is not accepted as an excuse for plagiarism. In particular, you are also responsible that your assignment files are not accessible by anyone but you by setting the correct permissions in your CSE directory and code repository, if using. Note also that plagiarism includes paying or asking another person to do a piece of work for you and then submitting it as your own work.
UNSW has an ongoing commitment to fostering a culture of learning informed by academic integrity. All UNSW staff and students have a responsibility to adhere to this principle of academic integrity. Plagiarism undermines academic integrity and is not tolerated at UNSW. Plagiarism at UNSW is defined as using the words or ideas of others and passing them off as your own.
If you haven't done so yet, please take the time to read the full text of
The pages below describe the policies and procedures in more detail:
You should also read the following page which describes your rights and responsibilities in the CSE context:
Make sure that you read and understand these. Ignorance is not accepted as an excuse for plagiarism.
The (tentative and subject to change) schedule of lecture topics is:
Week | Lectures | Tutes |
Week 1 | Introduction, getting started with graphics |
Optional Lab
|
Week 2 |
2D Transformations
|
Introduction to the course and the basics
|
Week 3 |
Homogeneous Coordinates, Vector Geometry, Shaders
|
2D Transformations |
Week 4 |
3D Graphics, Depth, Perspective
|
Homogeneous Coordinates, Vector Geometry, Shaders |
Week 5 |
Hidden Surface Removal, Clipping, Illumination I
|
3D Graphics, Depth, Perspective |
Week 6 | Illumination II, Meshes | Hidden Surface Removal, Clipping, Illumination |
Week 7 |
Modeling
|
Meshes |
Week 8 |
Textures
|
Modeling and VBOs |
Week 9 |
Rasterisation
|
Textures |
Week 10 | NO LECTURE | NO TUTORIAL |
Week 11 |
Ray Tracing
|
Rasterisation |
Week 12 |
Radiosity, Splines
|
Ray Tracing, Radiosity, Revision |
Week 13 |
Advanced Topics, Revision, Exam Info
|
Assignment 2 Demos
|
Week 13 will be an assignment demo instead of a tutorial. Locations for the assignment demos will be arranged closer to the date. The rest of the weeks will be tutorials in your allocated tutorial rooms.
Note that neither of these books use Java for their examples, so should be viewed as references for the theoretical underpinnings rather than programming guides.
This course is evaluated each session using the My Experience system. Students are also encouraged to provide informal feedback during the session and to let the lecturer in charge know of any problems as soon as they arise. Suggestions will be listened to very openly, positively, constructively and thankfully, and every reasonable effort will be made to address them.
Feedback from last year indicated that some students found it hard to be motivated to keep up with the course and wanted more ongoing assessments. To resolve that, this year we have introduced online quizzes. Other students wanted more opportunities for feedback for the second assignment. This year we address that by having two milestones. Both milestones will be opportunities to get marks and feedback on the assignment.
Resource created Monday 02 July 2018, 05:02:52 PM, last modified Sunday 22 July 2018, 10:28:38 PM.