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 “” ” (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) Before hand in, make sure that your code runs properly in any computer within
the Computer Terminal Laboratory 1 and 2. All computers within the Computer
Terminal Laboratory 1 and 2 have the same configuration (Windows 7 (64 bits),
VC2015) and Laboratory 3 have very similar configuration, and I’ll mark by
borrowing a computer within the Laboratory 1 or 2.
iii) The opening hours of Computer Terminal Laboratory is posted outside the
laboratory.
Students can go to Computer Terminal Laboratory to work on their project any
time the laboratory is open and do not have lessons.
iv) 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
__________________
(print your name 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.
2
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”
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.
3
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.