Final Project: Creating an Interactive 3D
Virtual World
Specification: Design and implement an interactive 3D virtual world using the C++ programming language and OpenGL application programming interface for 3D graphics, in which the user can explore and interact with the virtual world.
Assessment Part
1: Basic
technical requirements (8 points)
You can add as many bells and whistles
into your final project as you want, but the following are the basic
requirements:
Assessment Part
#2: Storyline
and modeling (14 points):
We will evaluate storyline
of the virtual world project based on how well you design the patterns of
interaction between the user and your virtual world to make up a story
attracting the user to engage in the game.
i.
Storyline
(6 points): The storyline
should provide an interesting cause-and-effect relationship between the events
and introduces incentives attracting the user to interact with the virtual
environment for reward. The events of interaction should be related to one
another in a coherent way allowing smooth transition between scenes you create
in the virtual world following storyline.
|
(Could be fractional) |
Cause-and-effect relationship of individual events |
Up to 1 point |
Connection of the events together as a storyline |
Up to 1 point |
Attractive reward mechanism |
Up to 1 point |
Technical complexity of the events and the story |
Up to 3 points |
ii.
Modeling (8 points): We will evaluate modeling
of the virtual world project based on how well you model the objects in the virtual
world and render them in a visually appealing way. You should craft the virtual
world with fine details regarding (a) the
appearance of objects there and (b) the settings of lighting, texture, blending/fog and so forth to make it appealing
in all these aspects. You also provide convenient ways for the user to navigate
in the virtual world and explore the details of the virtual world.
|
(Could be fractional) |
Appearance of individual objects |
Up to 1 point |
The effect of lighting and materials |
Up to 2 point |
The effect of texture |
Up to 1 point |
The effect of blending/fog |
Up to 1 point |
Technical complexity of the objects and the scene |
Up to 3 points |
Developmental Timeline
·
Proposals and Prototyping: There are three formation stages.
1. Formation Stage I: Monday, March. 23,
2. Formation Stage II: Monday, April. 13, and
3. Formation Stage III: Monday, May. 11
In each stage, you need to provide a
proposal regarding (i) new features to be added into
the virtual environment and (ii) the expanded storyline in terms of the
dynamics and rewarding mechanism after incorporating the new features into the
environment. You need to incrementally implement your system as an evolving
prototype. There will be three prototype
demos in the process, leading to your final system.
Final
submission: Monday, May 25
Enclose the following documents together as a single zip file and upload it under Canvas.
1. Document#1: User manual for the public
(i) Overview: In beginning of the manual, you should succinctly describe the key theme and main ideas of your virtual world to inspire the user to try your program, including a number of appealing snapshots from your program. (ii) Commands: The manual should then inform the details of how the user can interact with the virtual world through the keyboard and the mouse.
2. Document#2: Assessment report for Dr. Lin
(i)
Fulfillment
of the basic requirements A1~A8:
Succinctly explain how your
implementation fulfills each of the requirements A1~A8 described earlier in
this document. You also need to provide an estimate of time you spent in the
project.
(ii) Bug list: Provide a list of all the flaws/bugs you are aware of .
(iii) Highlight of accomplishments and effort put into the project:
Give a rough estimate of the amount of time you put into the project. What are the most impressive features you have implemented in your program? What are the most challenging parts of the implementation?
(iv) User feedback:
Find someone to play with your program and write a paragraph of their comments on their experiences at least a classmate, a friend or family.
(v) Reference and Acknowledgement:
Provide a complete list of all code segments adapted from examples in the public domain and acknowledge all the people involved in the coding, debugging, and testing of your program.
(vi) Permission for posting the executable:
Write down some statements about whether you permit the department to post your executable as a sample demo example about student projects in the computer graphics class.
3. Document#3: Source code + executable: Include all your source code files together with a Windows/Mac executable of your project.