Topics: The Unity 3D game engine, 3-D scenes, terrain editing and texture painting, skyboxes, trees and foliage, scene lighting, character controller, water, and 3D models.
Related Reading: Class notes, zoom recordings, and Chapters 3-4 of "Hands-On Unity 2020 Game Development"
The goal of this assignment is to become familiar with the basic design features of the Unity 3D game engine. To accomplish this goal, your task is to create your own Project and Scene in Unity.
If you haven't already, you'll need to first complete the following steps outlined in Canvas, in the following order:
Start off by creating a new Project. If you already started one in class, you may continue with that Project. When creating a new Project, remember to select the appropriate initial assets (e.g. Characters, Environment, etc.)
A singe Project may contain multiple Scenes. For this assignment, you only need to create a single Scene. When you first open a new Project, it will begin with an empty Scene. Before exiting though, it will ask you to save your Scene. To load any saved Scene later, the Assets/ folder (or the Assets/Scenes/ sub-folder) in the Project Window contains all the Scenes in the Project. Double-clicking on one will open that Scene in the Hierarchy and Scene windows.
Following we'll list the steps you should take in creating your Scene, but again, you are welcome to continue developing the Scene that you started in class.
Start off by using the terrain editing and texture painting tools to create the terrain for your Scene. In designing the terrain, consider the purpose of this Scene... what type of game will it be for? what will be the theme and setting of the game? what will the purpose of this particular Scene be in the game? Try to design the terrain with a vision in mind.
In painting (and editing) the terrain, consider using variety in your Scene, both to give the Scene a more realistic feel (i.e. the outdoors is nothing if not irregular), and to show signs of human or animal life (e.g. paths, more regular town areas, open areas in woods, etc.). There are some terrain assets in the SLU_asset_bundle you imported, but you'll find a wide variety of terrain textures and environmental assets on the Unity Asset Store.
The Unity Asset Store can be accessed from within Unity via Window → Asset Store, or within the center window by select the Asset Store tab, which is just to the right of the Scene and Game tabs. Click on "Search online" and it will take you to the Asset Store website. When choosing assets in the Asset Store, be sure to check "Free Assets" in the Pricing filter. There are LOTS of free assets to choose from -- there's no need to purchase anything.
As discussed in class, in the textbook, and in the Unity online documentation, select Window → Rendering → Lighting Settings, then select the "Environment" tab and click on the little circle to the right of Skybox in order to select a skybox for your scene.
First though, you'll need to find a skybox that you like on the Unity Asset Store. In the Unity Asset Store, in the search box type "skybox", and you'll find a variety of great skyboxes to choose from.
After you select a Skybox, adjust the Intensity and/or Color of the default Directional Light object in your scene (listed under the Hierarchy window), which serves as your "Sun". The default intensity is 1.0, and the default color is a kind of a light cream color with RGB value (255,244,214). Adjust these as appropriate to match the skybox and theme.
The game needs a player view camera and a controller (that moves by player's control) to enable the player to interact with the game. As discussed in class, add a player controller to the Scene. I recommend the FirstPersonController that's already been included in your github Unity project template. You'll find the FirstPersonController prefab under the SLU Prelim Assets → ModularFirstPersonController → FirstPersonCharacter folder in the Project window.
It is exceedingly rare in nature to encounter completely barren terrain, so add some environmental assets to your Scene to give the terrain more character (more "life"), such as trees, grass, bushes, rocks, water, etc...
Again, a plethora of good, freely-available options can be found on the Unity Asset Store. Check out some of the popular, highly-rated packages, or try sifting through the Asset Store for some of the more distinct and esoteric options...
In many games, the terrain and natural environment start to "set the stage", but it's generally the 3D models, such as buildings, vehicles, and other objects the player interacts with, that are the major focal points for the player's attention. As such, start adding some 3D Models to your Scene.
While there are a few 3D models in the SLU_asset_bundle you imported, I encourage you to look at the free assets available in Unity's Asset Store. There's a huge range of freely-available 3D models there.
Again, when selecting 3D models for your Scene, consider the theme, setting, and/or purpose of your Scene. Try to find models that match with the desired theme/setting.
Note: I know that only using the freely-available assets may limit your options, so if you can't find the right assets for your theme, then just try to make do with the closets options you can find.
Suggestions for creating your Scene/level:
As noted in part #1 of the assignment, you were to complete three steps that were outlined in Canvas (and that we completed in class). This provides the foundation for you to relatively easily submit your assignment.
First, be sure you scene is saved appropriately. Please save it in the "Scenes" sub-folder inside the "Assets" folder. I recommend naming your scene for this homework something like "Hwk2_Scene".
Then, open either the "Terminal" application (on a Mac) or "git bash" (on a PC) and enter the following commands:
The second-to-last step should display a bunch of "create mode ..." lines. Then the last step, assuming it worked correctly, should display the following lines: