OpenGL Mini-Project


Write a computer graphics animation using techniques that you have learnt.


1) This is an individual project. Hand in a folder (please refer to 5) for hand in method) with name “<your name>” <your student ID>” (e.g. “Chan Tai Man 51234567”). Inside the folder, please include

i) a subfolder named “source code” containing the C source code and ALL project files, including the .exe file.

ii) a subfolder named “exe” containing the exe file.

iii) a subfolder named “report” containing the report in pdf format.


2) Please note:

i) The C source code should be thoroughly commented.

ii) Hand in a report of at most 10 pages describing your work. Include at the end of the report the following declaration:

“I declare that every line of code is written by myself and I have not committed any plagiarism.

Signed

__________________

(sign with your digital signature here)

For definition of plagiarism, please refer to the university document and Clarifications on Plagiarism below. To repeat, you are expected to write your own code. Copying and pasting of code written by others are not permitted.


3) Examples of A+ project are shown in the demo during lecture. You can make the animation a simple game if you like. Please include a message about the keys that should be used at the first screen.


4) The grade of the mini-project will be determined by the overall quality of the animation. The following technical merits will also be considered: presence/absence of

a) realistic hierarchical structures;

b) realistic animation;

c) shadowing effect and

d) texture mapping.


5) Students can read ahead the OpenGL part of

i) Lecture 3 and 4 for a)

ii) Lecture 6 for b)

iii) Lecture 9 for c)

iv) Lecture 10 for d)

to implement the above when you have spare time.


Notes on Animation Design:

Students cannot hand in animation with the theme “Solar System” or “Rubix (Magic) Square” or “Pendulum” or “Dinosaur”, etc identical to OpenGL open source examples or text book examples.

In general, be creative, design your own scene, and avoid handing in some “standard” objects. Try to use all the techniques that you have learnt. Handing in scenes similar to examples in text book, references or open source teaching web pages will get very low or zero marks.


Clarifications on Plagiarism

The purpose of the mini project is a complementary learning to help you to understand the concepts and techniques learnt through lecture through learning by doing. According to this spirit:

If you have used some utility functions, e.g. load texture function in gluax, it is ok and not considered as plagiarism.

You can also modify the code from OpenGL Exercises and that would not be considered plagiarism. Be professional however; remove references to "OpenGL Ex. 1", "step 3", etc.

If you use other sources, you can make your animation even more beautiful and realistic, but this defeats the purpose a bit, and of course using other sources and not doing it yourself is plagiarism. In particular, modifying other’s source code (including open source code), instead of writing it yourself, is considered plagiarism.

If you use large data sets obtained from 3D scanner for your quadrilateral mesh, it would be considered plagiarism. If you must use it, please seek my approval beforehand and also write an acknowledgment of the data set source in your mini project report.

Apart from the above, to be safe, you can acknowledge all sources in your mini project report.


Clarifications on Report Writing

I would mark your report mainly based on your animation. You can put essential information in your report (e.g. how to start your game if it does not automatically start, essential commands for playing the game, or pictures of special effect you really wish me not to miss).

In general, don't spend time in the report otherwise. I would go to read your report if I have problems or queries about your animation.