Assignment title: Management
1
University of London International Programmes
CO3355 Advanced graphics and animation
Coursework assignments 2016–2017
Coursework assignment 1
Very often in computer graphics we need to represent composite objects or object
collections that base their behaviour on relationships between their parts. In order
to do so, we usually model these objects as hierarchies. Processing facilitates such
modelling by providing a stack of transform matrices that are controlled with the
pushMatrix and popMatrix commands.
Familiarise yourself with hierarchical modelling and the matrix stack using Chapter
4 of the subject guide, suggested reading [1] and online sources.
A. (15%) (Guideline: 300 words plus illustrations.) Make a hand drawn sketch
of a dynamic scene of your choice, consisting of an object or an organisation
of objects. Describe the selection process; expose the transformations that
will take place during animation; and explain how the scene is appropriate
for hierarchical modelling. Note that while proficiency in drawing is not a
primary determinant for assessment, your sketches should clearly show
your intention.
B. (30%) Implement your scene in Processing. Make the object parts move
according to your intention by applying appropriate transforms. Make the
scene interactive by letting the user control aspects of the movement in real
time. Use a camera such as peasycam [2] to enable navigation.
C. (25%) Incorporate basic GLSL vertex and fragment shaders to render your
scene. Now modify the vertex shader so that it changes the size of the
object it is applied to, as a sinusoidal function of time. Make different objects
of your scene grow and shrink in different phases.
D. (30%) Create a vertex shader that implements a 'damage' effect that
distorts the shape of an object according to a mathematical function of your
choice. Experiment with different types of damage, and demonstrate the
effect on different objects/parts of the scene. Improvise and see what other
distortion effects you can produce.
[TOTAL 100%]
Notes
For every step of the coursework assignment, remember to provide screenshots
from multiple viewpoints. Describe your modelling approach; expose the problems
you faced and the design decisions you made. Also, include an assessment of how
well the techniques you used apply to what you are trying to do, and identifying the
advantages and disadvantages.
You may choose to construct your models relying on primitive shapes generated
in Processing or to employ more complex objects; for example, those created2
using external 3D modelling tools. Striving for realistic representation is
appreciated, but the assessment on this part focuses on hierarchical modelling.
Submission
Submit a single .zip file which contains:
• your coursework as a single .pdf. This should include listings of the software
you have developed, with your own contributions highlighted and an
attribution for the remaining code (such as code taken from the subject
guide or external sources)
• all source code files that you have developed for this coursework
assignment, with instructions (as comments in the source files, or as a
separate readme file) on how to run them.
When naming your zip file ensure that you include your full name, student
number, course code and assignment number
e.g. FamilyName_SRN_COxxxxcw#.pdf (e.g. Zuckerberg_920000000_CO3355cw1.zip)
o FamilyName is your family name (also known as last name or
surname) as it appears in your student record (check your student
portal)
o SRN is your Student Reference Number, for example 920000000
o COXXXX is the course number, for example CO3355, and
o cw# is either cw1 (coursework 1) or cw2 (coursework 2)
References
[1] Angel, E. and D. Shreiner Interactive Computer Graphics. 2011, Chapter 8.
[2] http://mrfeinberg.com/peasycam/
[END OF COURSEWORK ASSIGNMENT 1]