MONASH UNIVERSITY
SCHOOL OF COMPUTER SCIENCE AND SOFTWARE ENGINEERING
HONOURS YEAR
Assignment Notes
Title : | Folly in the Garden |
Date Due: | Refer to main page |
Weight: | 100% of your final mark for this unit |
Submission: | CD or DVD-ROM or emailed tar file |
A garden folly is an architectural decoration, a building introduced to a garden for purely aesthetic reasons. Your task is to produce a dynamic landscapegarden with such a folly as a highlight, using the techniques suggested below. The mark allocation for each component is also given in the table.
Landscape Component | Modelling Technique | Mark Allocation |
Mountain, valley or undulating hillside landscape in which the garden is situated | Fractal landscapes | 20 |
River or stream with water cascading into the foreground | Particle system | 30 |
Trees, plants or vines growing in the garden or over the folly | L-systems or simpler random trees | 35 |
A folly (e.g. a bridge, castle ruin, fountain or other scenic architecture situated in an aesthetically pleasing location within the garden) | Procedural architectural generation technique of your own invention (discuss your intention with the lectrer first!) | 10 |
Mist, fog or clouds | Technique of your own choosing | optional bonus 5 |
Bibliography: only published books, conference and journal papers count for marks. | 5 | |
TOTAL maximum mark |
100 |
An example from the gardens of the palace in Caserta, Italy is provided below. An image search for "garden folly" will reveal many more possibilities!
All your code should be written in C, C++ or Java (including Processing) and should run under a UNIX (or derivative) operating system. The models should be visualised in OpenGL. Either a camera path through your landscape can be pre-programmed by you or it can be left under the control of a human user. Alternatively, a good camera position can be hard-coded. Any of these possibilities is acceptable as long as the view is shown off well.
If you wish to get into the Hall-of-Fame here is something that might assist. Visualize your animated model by rendering a still image specified by a model file exported from your software. Use a stand-alone free/share-ware renderer such as POV-Ray to produce the rendering. It is worth scanning the POV-Ray gallery and Hall-of-Fame for ideas on how to use the modelling primitives the software can handle to generate landscapes containing buildings, plants, light sources, mist etc. This rendering can be made after the project deadline if you desire as it will not be assessed.
Choose the features of the landscape that most interest you and model them appropriately. You will need to research modelling techniques, especially those on generative architecture. Prepare a bibliography document detailing the references you have consulted in the course of your research. Write a sentence or three describing the contents of each reference you have consulted. The text should be specific about what the reference contained that was of value (or not) for your assignment.
TIP: Plan your software, don't jump in straight away writing code. Even your particle system, fractal mountain code and tree code should be as simple as you can make them. Your architectural model can be really simple e.g. it can consist of some well placed and well-sized boxes or other primitives. Work out in advance what features your models will need and leave out anything that is unecessary. Only in this way will you be able to spend a sensible amount of time completing this project.
The assignment is due at the time specified on the main page.
Submit all of the files specified below on a CD/DVD-ROM clearly labelled with your name and ID number. Submissions will be accepted at the General Office in building 63 or presented in person or emailed in tar format to the lecturer prior to the deadline.
You will need to include the following in your submission:
- The complete source code required to create the programs.
- Makefiles with default targets that build the executable.
- A screen snapshot image file (or two) showing off the details of your landscape.
Documentation is important. Marks are allocated within each section for the research you have done. Documentation submitted should include:
- Information as to what was completed. (1 paragraph at the most!)
- The annotated bibliography (see above)
- Brief instructions on how to run the program
- Adequate comments in the source code
Each file of your source code must contain the follwing at the top:
/* * This software is the original work of <Your Full Name>. ID: <Your ID> * This software is submitted in partial fulfillment of the * requirements for the degree of <Your Degree> , * Monash University */ You are encouraged to consult reference material as widely as possible, but remember the code you write MUST be your own work. Make sure you think about, and understand, the processes involved rather than blindly copying the work of others.
Please be realistic about what you can achieve given the time constraints. Students invariably spend far too much time on this assignment. As much fun as it is, any time above 50 hours would be better spent on other activities. (e.g. fishing in the Monash pond)
Late assignments will incur mark penalties according to the Fibonacci sequence multiplied by a lecturer-determined scaling factor (e.g. 0.5, 1 or 100). An assignment that is one day late will receive a one mark penalty multiplied by the scaling factor. Assignments two days late will receive a 2 mark penalty, three days late, 3 marks, each multiplied by the factor. The sequence is [1],1,2,3,5,8,13,21... (times the factor). This applies for all days including public holidays and weekends so please submit your assignments punctually!