Why an FPS? Well, that’s because:
- There are alotoftutorials showing us how to make an FPS that I can reference.
- I hope I can use this project as a base to start porting over the VR game logic.
- How different could it be from Survival Shooter?
So let’s get started!
What I’m envisioning is a First Person version of the Survival Shooter that we just finished:
- The players spawn in a simple environment.
- Different types of enemies will spawn that chase the player.
- We shoot them until they finally bring us down.
Also, from this point on, these posts will probably finally be a lot shorter as each day I’ll be trying to figure out new code while writing my experiences.
Creating the Environment
Getting Assets for the Environment
If there’s anything I learned from the past 3 tutorials is that we have to first set up the environment.
In the past 3 tutorials, everything has been provided for us, this time around, we have to somehow create them ourselves.
How hard could that be…. right?
Luckily, thanks to the Unity Asset Store, I was able to find a couple of generous free 3D environment development kits.
The specific one that I’m interested in is the Mega Fantasy Props Pack.
I click download and then click Open in Unity. From there, that launches the Asset Store in Unity.
Prior to this point, I already created a new project called First Person Shooter.
I downloaded the pack inside Unity and then imported it to my game.
You’ll see this folder in your Assets folder in the Project pane.
(Note, I also already created a Main scene.)
From what we learned in the Survival Shooter from the previous tutorial, we’ll create a parent environment object for everything.
After looking at the assets, I noticed something: there aren’t any assets for the floor.
After digging around, I found that Unity has their own terrain editing tools.
Using the Terrain Editing Tool
To start working with the Terrain editor, right-click in the hierarchy and choose 3D Object > Terrain to create a terrain game object:
Our terrain is just a white plane, however, playing around with the tools provided, I learned a bit about how to make a floor.
The first thing to do is to change the size of the terrain. Clicking on the
terrain object, click the cog setting option and then under resolution, change the
Terrain Width and
200 to make it smaller.
Next, we want to change the material of the ground.
Terrain component, we can select the 4th option to paint with a texture.
Texture, we want to add a texture, in this case, I’m going to pick the grass material that was provided by the Asset kit, specifically
Also after experimenting around a bit, I found that setting the size of the terrain to all be
1 makes everything look better.
And when you apply these settings, you’ll have grass at its finest:
I found out that you can add multiple textures to our “artist canvas.”
Once we have multiple textures, we can select our “color palate” and pick one of the multiple
Brushesavailable to paint in the terrain.
Let’s add another texture to our terrain:
Dirt_1_fixed_dand add the same settings.
Now we can paint around on top of our terrain.
I’m going to paint the center of the Terrain with dirt. This will be where we’ll add all the houses and other structures.
We’ll have something like this. Masterful, I know!
We might come back to this later (or spend an even longer time looking into how to make better terrains), but I think this is good enough for an example stage.
Before I move on, I do want to point out that there are other nifty features that you can use with the terrain system such as:
- Creating hills
- Adding water
- Adding trees and other simple foliage
However, with all of that being said, I’m not going to play around too much with those features.
Adding the Building
Now that I have created the floor, I’m going to go back to the prefab of the Mega Fantasy Props Pack and start laying them around our dirt patches.
Maybe add a couple of houses in:
Maybe create a backyard by using the fences prefab, manually duplicating (ctrl + D) them, and manually move the new pieces to form a fence.
I created an empty object,
Backyard to hold all of my fence pieces:
Make sure to include some space for the players to run into the backyard!
We also want to be able to run on the houses. Let’s add a stair to the roof of one of the houses, like so:
This will be good enough for now.
There’s a lot left to be desired in the map, but for creating a simple environment for us to walk around, I think this is good enough.
Feel free to explore around and add some beds, shelves, and other miscellaneous things in and around the house, however, I’m going to call this a day and move on to the actual gameplay starting tomorrow.
But before I leave, I organized the environment together with an
Environment parent object: