Topics: All topics from the semester, but with a focus on Unity and Blender topics.
Related Reading: Getting Started with Blender slides, Getting Started with Blender - Part 2 Texturing slides, and class notes
Now that you have some familiarity with the Unity 3D game engine, the goal of the final project is to combine your growing experience with scene design, gameplay mechanics, audio and sound effects, and 3D graphics modeling (with Blender) to create a more immersive scene.
In implementing your project, you are welcome to use the Unity scenes that you've previously developed in prior homeworks, or you can fresh with a brand new scene. The choice is yours.
In the first part of the final project, you'll be using Blender to create buildings and objects that you'll then use to populate your scene in Unity. You'll be creating three distinct objects and buildings, importing them into Unity, and then creating instances of them in your scene.
If you haven't already, download and install both Blender
First, read through and follow along with the tutorial outlined in the Getting Started with Blender slides for creating your first Blender models.
After creating your initial Blender models, read through and follow along with the texturing tutorial given in the Getting Started with Blender - Part 2 Texturing slides for texturing your Blender models.
In addition to these tutorials there are numerous online resources for learning aspects of Blender, including but not limited to the wikis and tutorials linked under the Software sub-menu on course website.
Note: While there are a wide variety of textures available in the instructor's asset package (you can get a copy from the instructor in class), you can also download other textures from the web as desired. Any image (.jpg, .gif, or .png) may be used within Blender, provided it is sized (or re-sized) such that the height and width are each a power of 2 (i.e. height and width must be 2, 4, 8, 16, 32, 64, 128, 512, 1024, 2048, or 4096). If you need any assistance in using your own textures, the instructor will be happy to help.
After completing the modeling and texturing of your shape, the next step is to import the Blender project to Unity. See the end of the Getting Started with Blender slides for directions on saving and importing Blender scenes into Unity.
What Blender models to create and include in your Unity project:
For your first Blender project, create a simple object or shape... anything slightly more complex than the basic shapes in Unity (e.g. cube, sphere, cylinder, capsule, and plane) is sufficient.
For your second Blender project, create a basic building or a bridge model.
For buildings and bridges, when creating instances of the model in Unity, be sure that they are correctly positioned relative to the terrain (e.g. not floating in mid-air) and are large enough to enable the player to walk into, through, and/or over them. Likewise, the building shouldn't be overly large in comparison with the player. You can use scaling in Unity and/or Blender to re-size your model as desired in each of the three dimensions (x, y, and z).
In this final problem, use Blender to create a complex, multi-level building object. This building must have have at least two levels, at least three rooms, and a non-rectangular floor plan (i.e. you can still use straight edges, but the floor plan must be more interesting than a single rectangle). And of course, there should be a ramp or stairs that allow the player to move between levels.
Again, for each of these 3D models that you create in Blender, be sure to import them into Unity and create at least one instance of each model in your scene. You may even find it desirable to use your initial simple object for use with the object collection gameplay mechanics of Hwk #6...
While the first part of the project involves learning new tools and techniues (Blender and 3D modeling), this part of the project has you combine together all your experience with Unity (and Blender, Audacity, etc.) to create a complete, polished final product.
In developing your complete game or scene, there are two primary options (A or B) that you may pursue, as listed below. As usual, please be creative in your game construction/design.
Create an engaging game.
The first option is to focus on the gameplay of the game/scene. Using the available tools and gameplay mechanics (introduced in Hwk #6), create an interesting and challenging game. In pursuing this option, your game design should expand upon the gameplay that you developed in Hwk #6.
Some posibilities include a maze and/or platform style game.
Again, as indicated above, these game styles could easily be combined to good effect.
Other game scenarios are certainly conceivable, though you may want to discuss the implementation feasibility of other game ideas with the instructor before proceeding.
For physical obstacles, you can quickly and easily create simple shapes in Unity, or download any of the free asset packages available in the Unity asset store, or use Blender to create your own physical obstacles, such as walls, floors, ramps, etc. that you can place in your game. Alternatively, you could even build the majority of the maze (or gauntlet) within Blender, if you prefer...
To assist the player in finding the objects, a nice touch might be to provide hints or aids to the player. One alternative might be to add 3D sounds to each object, which thereby audibly indicating their relative position... Another option is subtle use of paths in terrain texturing to imply common travel routes...
The tools and gameplay mechanics at your disposal include:
Create a compelling environment.
Your second option is to create a town, that follows a single consistent style or theme. Some possible example themes/styles include: a Western/cowboy town, a suburban neighborhood, an Asian village, the waterways of Venice, urban inner-city slums, a country club resort, a medieval village, etc.
Using Blender, create additional buildings for a particular style of town. The various buildings, along with those created from Part 1 above, should be textured using complementary styles, but should not all be textured exactly the same (in other words, while you may use the same texture(s) on some of the different buildings, the buildings must not all use the exact same sets of textures; each distinct building must have its own look and feel). Please try to use textures and designs targeting the particular theme you have selected for your town.
In addition, consider searching the Unity asset store for useful buildings and/or 3D models. For many of the potential styles/themes, you can likely find a variety of useful buildings and/or objects in the freely available asset packages in the Unity asset store. Furthermore, the Unity asset store provides visual thumbnails of all the 3D models contained in the package, so it's relatively straightforward to find asset packages that may contain useful buildings or objects.
As you did above, after completing the design of your building(s) in Blender, add instance(s) of your building(s) into your game. Be sure that the instances of your building are appropriately sized and positioned so that the player can walk into the building, and is able to walk around inside the building.
Likewise, be sure to design and texture the terrain in a fashion complementary to that style/theme, and incorporate any environmental conditions (water, foliage, rain, lightning, etc.) appropriate to that style/theme. Furthermore, audio sounds and effects appropriate to the theme can also significantly enhance immersion.