Jump to content
  • entries
    44
  • comments
    19
  • views
    2315

100 Days of VR: Day 7 Creating a VERY Simple First Person Shooter

Josh Chang

378 views

Welcome back to day 7, after the behemoth that was “yesterday’s” Survival Shooter tutorial, I’m itching to get back to coding something.

At this point, we have gained enough experience to start making some very simple gameplays on our own. And that’s exactly what I’m going to do!

Note how I say gameplay and not a full game.

In the future I’d like to be able to create a full game, but for now, I’d like to just focus on just being able to put what I learned to use.

Now the question is: what shall we make?

The answer: A first person shooter!

Why an FPS? Well, that’s because:

  • There are a lot of tutorials 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 setup 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 is the Mega Fantasy Props Pack

 
0*9KM58056Y04RFWG4.png

I clicked 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

 
0*CedDF4K26QI_5NOX.png

(Note, I also already created a Main scene)

From what we learned in the Survival Shooter from the previous tutorial, we’ll create 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:

 
0*ED9U9j4FF-N2vEwi.png

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 Terrain Length to 200 to make it smaller

 
0*3o-pa4DEhaah4BSo.png

Next we want to change the material of the ground.

Under the Terrain component, we can select the 4th option to paint with a texture.

Under 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 grass_1_fixed_d

Also after experimenting around a bit I found that being setting the size of the terrain to all be 1 makes everything looks better.

 
0*0jBsnYG87Ib0fv5H.png

And when you apply these settings you’ll have grass at its finest:

 
0*g-PVl27X-rcO-vUj.png

Ah grass!

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 Brushes available to paint in the terrain.

Let’s add another texture to our terrain: Dirt_1_fixed_d and add the same settings.

 
0*kPUe1Yj7nKuCAtE2.png

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!

 
0*AqU6uBua6AQGYS1g.png

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:

 
0*2OxDHODnQGgn_akz.png

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:

 
0*q7-KVC3Jo2KUK4d-.png

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:

 
0*twrvRPpWFuRRK34J.png

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:

 
0*nc7_zbrPo9l1XYbv.png

Conclusion

See? Isn’t that much shorter than the past 6 days?

This might seem relatively shorter than the previous days, but that’s because I’m investigating while also doing some write-ups on the problems encountered, so please bear with me.

Today, we learned more about using assets from Unity’s game store and how to use the terrain system.

We also setup the assets that we downloaded.

Tomorrow, I’m going to start looking into how to create a character that we can control around and move.

Original Day 7

Visit the 100 Days of VR Main Page



0 Comments


Recommended Comments

There are no comments to display.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Advertisement
  • Advertisement
  • Blog Entries

  • Similar Content

    • By GameTop
      Dirt Bike Extreme - another game made with Unity. Took about 2 months to complete.
      Take part in extreme motorcycle races across the dangerous and challenging tracks. Dirt Bike Extreme is easy to pick up but hard to master. Race, jump and crash your way and other mad rivals through the amazing tracks as you master the skills and physics of motocross in this high-speed racing adventure. Conquer challenging routes on 23 different runs, discover new bikes and become the best of the best! Over 257K downloads already!
      Windows Version:
      https://www.gametop.com/download-free-games/dirt-bike-extreme/

      Mac Version:
      https://www.macstop.com/games/dirt-bike-extreme/
       

       


    • By Sergio Ronchetti
      Continuing to work on “Eldest Souls” (first article here!), I’ve begun familiarising myself with the workflow between Fmod and Unity, and the integration system. I know much of this will be pretty obvious to most, but I thought I’d share my thoughts as a complete beginner learning the ropes of sound designing. 
      The library of sounds that Fmod provides has been very useful, at least as reference points. I’ve still kept to my ethos of producing the sounds myself as much as possible. Having said that, Fmod gives you 50 free sounds with your download, and I’ve used a wooden crate smash, a drawbridge and electricity sound you can hear in the foley video below.
       
       
      The thing i found most useful was witnessing changes i made in Fmod being realised instantly in Unity. If a volume needed changing, or the timing of one of my effects was off, i can literally switch to Fmod and then back to Unity and immediately see the result of my alterations. It also seems apparent that using middleware such as this (or i've heard Wwise is also equally intuitive) grants the developer, and myself included, a great deal more flexibility and opportunity to edit sounds without going all the way back to a DAW, and bouncing down again. Needless to say, my workflow is so much faster because of it.
      I've also loved the randomised feature of Fmod, whereby any sound can be made to sound slightly different each time it is heard. Taking a footstep recording i made for example, I was able to add further authenticity of uneven footsteps by randomising the pitch and volume of each playback. 
       

       
      I used this technique when creating footsteps for the first major boss in the game called "The Guardian". A big, over-encumbered husk of a monster. I also had fun rummaging through the garage for old tools and metal components for the “Guardian” (the first boss) footsteps. See below!
       
       
      I also created a sword attack for our player, trying to sound different from the generic “woosh” I see in so many video games. I used a very “sharp” and abrasive sound to differentiate him from any enemies.
       
       
      On another note, I recently upgraded my microphone to a Rode NTG2 shotgun, which has been phenomenal. I haven’t had to worry about noise interfering with the clarity of my objects, whereas before with the sm58 I had to be clever with my EQ and noise reduction plugins.
      Important to note again that this still a “cheap” mic in comparison to most other products on the market, and all in all my entire setup is still very simple and affordable which I’m quite proud of. I’ve seen many musicians spend heaps of money on gear they don’t necessarily need. I much prefer being resourceful with less equipment, than to have more than I can understand or remember how to use.
      It’s forced me to understand every aspect and capability of my tools, which I believe is a principal that can be applied to any discipline.
       
      I have more fun little sound effect videos on my Instagram for those interested, where I post regular updates. Thanks for reading! (if you’ve made it this far)
       
      www.sergioronchetti.com
      INSTAGRAM
      fallenflagstudio.com
    • By Sergio Ronchetti
      BASICS IN SOUND DESIGNING FOR VIDEO GAMES
       
      Recently I joined the talented team at Fallen Flag Studio as the composer for their latest release "Eldest Souls" which consequently lead me into a field I have always dreamt of trying - sound design!
      Having no prior experience, I began watching a few online tutorials (if you want to learn from anyone make it Akash Thakkar from "Hyper Light Drifter"... what a guy!) and basically just testing stuff out i found around the house. Luckily my dad has a garage FULL of random crap to use.
      Before i continue, it's important to note that i DO NOT have fancy equipment, meaning anyone can try this. (my equipment is an sm58, focusrite scarlett interface and Logic Pro X plugins... that's it!)
      I started basic with some footsteps, which weren't all too difficult. Then I moved on to projectiles and a spear attack one of the bosses has. Below are a couple super short videos on my resulting attempts.
       
       
      Amazing how great a banjo sounds for that typical "woosh" sound! And if you're wondering, the paper was added to give some texture to the jab.
      I could be finding a lot of these sounds in libraries online (like the built-in ones that come with Fmod and Unity) but I've chosen not to, in order to produce authenticity and hopefully a more unique gameplay experience for players when the final product is put together.
       
      P.S. if you'd like to try the game and hear my hard work we'll be at EGX and several other conventions later this year, soon to be announced! Thanks for reading!
      www.sergioronchetti.com
      fallenflagstudio.com
       
      To those interested, there's an Alpha trailer of the game in question below.
       
       
    • By OConquestGame
      Hello there!
      I’m the creator and producer of an upcoming visual novel / video game. 
      My team and I are looking for artists (character and background), writers (experienced in writing relatable characters and witty dialogue), and programmers (familiar with unity and creating mini games). 
      Our team is a group of close friends looking to break the mold of the traditional visual novel and create something new and positive. This game will be highly promoted and be a great portfolio piece. Rates are negotiable!
      If you are interested please contact/message us today! OConQuestGame@gmail.com
    • By Kamal Wafi
      Hi there,
      i recently start learning unity and im working in my first game ,
       
      I was wondering if unity had functions to support the motion control effect (tilting screen to move character) you see
      in doodle jump (which is 2d game) ? If it exists, what are they called? and how it works ?

      Thanks
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!