CSCI 5838: Graphics and Animation for Gaming

Final Game Project Specifications

Goals of the Project

The goal of this project will be to implement characters and objects in Blender, and then to import them as assets into the Unity game engine to be used in a simple game.

Basic Game Structure

To simplify things, I would suggest you create your own version of the “chase” and “treasure collection” game you began in Assignment 4:

·  The goal of the player is to collect a number of “treasure” objects from the world. These treasures should try to “avoid” the player in some way.

·  There is also an “adversary” in the world who is “chasing” the player. If the adversary captures the player, the game is over.

The game is required to be a third person game, in which the character that the player controls is visible to the player.

Beyond this, or possibly in place of this, feel free to come up with your own game (subject to the requirements listed below).

As always, please talk to me if you have any questions.

Blender Requirements

For this project, you are required to create new characters/objects in Blender (that is, I do not want you to reuse the ones that you created for the previous assignments). This is meant to give you additional experience with creating game assets in Blender, and to design meshes with images/animation/gaming in mind.

You are required to implement the following in your characters/objects:

·  Your meshes must be complex and well designed, and make sense in the context of the game you are creating.

·  At least one object must use an image as a UV texture.

·  At least one object (either the player or the adversary) must have an animated armature to simulate walking, running, or some other complex motion that makes sense in the context of the game when the player is in motion.

Unity Requirements

There are a number of things that your game is required to have, generally implemented as scripts in Unity.

·  As mentioned above, this is to be a third person game, in which the character controlled by the player is visible to them (generally from an “over the shoulder” perspective). The actions of the player should be controlled by the mouse/keys.

·  At least one of your non-player characters (the adversary/treasure/etc.) should move in an intelligent way. That is, do not just move them either directly towards/away from the player at all times, but make their movements related to the nature of the game in some way.

·  Your game must involve collision detection in some way.
The exact nature of this, in terms of what collisions you will detect and what will happen when a collision occurs should be based on the nature of your game.

·  Your game must use prefabs to generate objects within the scene at different points in the game. Some examples of this might be:

o  Generating and randomly placing “treasure” objects

o  Generating new “adversaries” if your player can defeat them

o  Generating “projectiles” that can be thrown/fires by the player.

·  You are to create an interesting world for your game (at least more interesting than the plane and geometric shapes you created for Assignment 4). A couple of suggestions:

o  Explore using the terrain assets available in Unity. Since I may not be able to demonstrate them in class, you may need to research this on your own.

o  Build a set of “walls” from the cube object to create a set of “rooms” for the player to explore or some sort of “maze” layout (sort of like a typical level in a game).

Extras

Implementing a game that meets all of the above requirements will give you a maximum score of 90/100. In order to get the full 100 points, you will need to do at least one of the following:

·  Aditional animation
Create another “action” type of movement that the player can take as part of the game. This might be something like “jumping” to avoid the adversary or reach a treasure, “throwing” something to disable the adversary, etc.
You will need at least one other script to implement the other action the player can take. I suggest that you link that script to a specific key (such as “j” for jump, “t” for throw, etc.)

·  Scripted lighting
Use lighting in some interesting way. This must be something crucial to the playability of the game, either helping the player or making things harder for the player under certain conditions.
The lighting must be scripted. That is, the important properties of the light must be tied to the state of the game or the player actions in some way.

·  Multiple adversary or treasure types
Instead of a single adversary or treasure type, have several different ones that behave in different ways to make the game more interesting or challenging.
This means that you will need multiple scripts, one for each adversary/treasure type.

·  Build a totally different type of game
Rather than the “chase/collect” type of game described above, come up with something different. If there is a game that you are familiar with that you would like to create a simplified version of, that might be a good place to start.
Of course, it should be at least as complex as the simple “chase/collect” game. Please talk to me first to make sure it will be workable in the time available in the semester.

Proposal

You are to email me a short proposal describing your game (including basic goals, rules, and characters) by Wednesday, November 16, although I encourage you to send it as soon as you come up with an idea.
I will use this to give you suggestions about the scope of your project, as well as possible ideas for the implementation.

Presentation

You are to present you final project to the class during the scheduled finals time for this class. I don’t expect a formal presentation of any sort – just briefly:

o  Describe what the basic rules for the game are.

o  Demonstrate the game for us.

o  Describe how you accomplished this, by showing the main features of your work – the mesh/rigging of the main characters, the timelines of the animation, and the scripts of the game.

What to Turn In

Turn in (via email or CD) all files necessary for me to run your project, including the Blender file, all image files, and the entire Unity project (this would best be done by compressing the project folder if you are sending it via email).

This is also due at the time of the final.

Grading

Grading will be based on:

o  The complexity and creativity of the game you create.

o  The complexity and appearance of the characters and the world they exist in.

o  The complexity and realism of the motion of characters in the game.

o  The complexity of the scripts that you create to run the game.

o  Any interesting extra features that you implement.

o  How well the game runs in the Unity game engine.