
Have you ever wanted to make your very own virtual reality games? Well, you've come to the right place!
Please go to the links below to download and install Unity and Blender. Unity works on both Mac and PC. It is virtually the same on both. Also, please make sure you install MonoDevelop. It should come with Unity. This is the code editor we are going to be using.
Blender is the 3D modeling software we are going to be using for this course. It is free and works on both Mac and PC. The interface is virtually the same. The only major difference is the hotkeys.
Download Unity
https://unity3d.com/get-unity/download
Download Blender
https://www.blender.org/download/
Thank you for taking this course.
Upcoming sections will give you an introduction to the Unity game engine. If you already have experience using Unity, you can skip to Section 7, where we will begin making virtual reality games.
You don't have to have any prior coding or digital art experience to succeed here.
Unity is the best user-friendly 3D engine on the market
If you want to make a VR game, Unity is the program for you. The Unity engine comes with built-in models, materials, and more, which you can use to make your own 2D or 3D games.
Unity is the most popular platform for building VR games. You can build a variety of 2D and 3D games with its user-friendly interface.
In Part One, we will cover features of the Unity engine. We will look at 3D models, simple shapes like cubes and spheres. We will look at how to navigate throughout a scene, add shapes, and change appearances.
In this lecture we will enable user input to move a cube!
The Mesh Renderer draws game objects in the Scene. This component contains several properties. For example, Cast Shadows defines whether shadows will be drawn from the cube. Receive Shadows determines if shadows of other elements will be drawn in this cube. In this lecture, we will cover the Materials property.
What is a material? Suppose we want to change the color of Cube. Unity provides the default material "Default-Material" for the cube. To change the cube's color, we need to create our own material.
Lighting is a crucial part of game development. The lighting in your game can set the tone of the scene and provide useful information for your players. Unity's default light is Directional Light. Rays extend from Directional Light in all directions. When a ray hits an object, a shadow will project on the floor.
To create effects such explosions, smoke, or flames in Unity, you can use particle systems. Each particle in such a system is a simple mesh. The effect of all the combined particles creates a moving object.
For your VR game to feel real, its objects should move like they would in real life. In this tutorial, you will learn how to make your game objects respect the laws of physics. We will apply physics to Cube so that it respects gravity.
So far, we have worked with logic provided by Unity. You can extend the working logic by finding new assets. For instance, to change a visual element of the game, you can create your own assets or find an asset in Unity's Asset Store.
To access the Asset Store, go to Window > Asset Store or visit www.assetstore.unity3d.com.
Here you will learn the foundations of coding a C# script for Unity. We will use different coding concepts like variables, methods, conditions, and loops to change how a game object is rendered.
Variables: the building blocks of code. When building a game in Unity, you often need to store information, such as a player's age or the current time. Variables are perfect for storing data.
In this lecture, we will use an example of a cube to show some of the useful things variables can do. We will change the size, name, and rotation of a cube using variables in C#.
A method in a script performs an operation or function. There are two methods that appear in any C# script you create in Unity.
A method can perform an operation and return the result. For instance, a method can add numbers, return the sum, and store the sum in a variable. void means the Start method does not return anything. The method can still execute operations.
Suppose we wanted to run code only when a certain condition is met. For instance, a player could only fly in a game if they had a jet pack. A player could only buy a bicycle if they had enough money. To implement this kind of functionality, we can use if blocks.
An if block runs code when a specified condition passes.
If we wanted our game to contain multiple cubes, we could duplicate Cube. However, there is an easier way to set the number of game objects in the Scene: using loops.
In this section:
We will enable our game to respond to user input. For instance, we will have key presses on a keyboard move a cube around a plane. We will have the cube jump when the Space bar is pressed.
Many games use a system with multiple cameras. We will be able to click, hold, and move a mouse to look at the cube from different perspectives.
When playing a game, a user should interact with the game's software. For instance, to enter a building, a player may have to show their ID. This is an example of an input. Input is important in games because games rely on interaction.
Coming up:
we will enable user input to move the cube.
There are two ways to make the logic for a player to jump.
Here you will enable a player to move forward and back using their keyboard!
One camera, Main Camera, currently points at Player. We will create multiple cameras through which we can cycle to look at Player from different perspectives.
A prefab is a stored instance of a game object that you can reuse. Instead of making multiple enemies in the scene in Unity, you can make an enemy prefab and replicate it.
Coming up, we will create a game where a player shoots a bullet at a wall. When the bullet hits the wall, the bullet will split into multiple pieces. We will use prefabs to achieve the explosion effect. With a prefab, we can make one bullet and replicate it in the scene as many times as needed.
Coming up: we will offset the movement of the bullets!
Now that we have learned how to spawn a bullet, we will make a simple explosion prefab. Every time a bullet touches the wall, we will spawn an explosion.
In this section, we will create a virtual reality (VR) game. In this game, a player will enter a castle by looking at a button.
To activate VR Mode, we will integrate a VR software development kit (SDK).
Coming up: we will build a castle for our game!
To make Door move up and down, we will give it custom logic.
To make the player move inside the castle, we will create logic similar to Door's logic.
In VR games, interface (text) can appear in two ways. One way is like Button in our Scene: text that has a position in the 3D world. Another way is text that stays in the same position in a player's view. For instance, when a player looks at the castle, text can appear at the top of their screen. When the player looks elsewhere, the text can stay at the top of the screen.
What you have all been waiting for! Coming up, we will design and implement a 3D VR Whackamole game. Our Scene in Unity will contain the arcade shown in the next image. The objective of the game will be to hit moles that pop out from the arcade game. The player will hit as many moles as possible in the given period.
We will set up the project, make a simple prototype with primitive shapes, implement the game logic, and integrate the art for this game.
Blender is a powerful (and free) program that can be used to make art assets. The art you make in Blender is easy to add to games or other projects. Even if you're not an artist, you can make basic art models!
Make games and apps like first person shooter, tic tac toe, escape, color converter, and so much more.
A wildly successful Kickstarter funded this course
Are you an aspiring C# developers, digital artists, or iOS developer? This is your ULTIMATE guide.
Sign up now to learn Unity and Xcode
In Part 1 of this course you'll build 30 virtual reality games from start to finish, beginning in Unity 5.4.3f1. Then we make original artwork in Blender 2.78 and integrating the artwork into the game. That's 30 projects you'll be able to add to your porfolio!
One of the best features is that you can watch the courses at any speed you want. This means you can speed up the or slow down the video if you want to.
In Part 2, you learn how to make apps in Xcode 9. This course is project-based, where you follow along with your instructor to build real projects.
The best way for you to learn how to make your own app is to follow project-based training content. You can put the apps you make in this course in your portfolio!
Included in this course is material for beginners to get comfortable with the interfaces. Please note that we reuse this content in similar courses because it is introductory material. You can find some material in this course in the following related courses:
Xcode is Apple's FREE software for app development. Xcode is user-friendly and allows you to make complex and creative apps. At the same time it is accessible for beginners who want to make simple apps. Swift 4 is the programming language to learn if you want to make apps for Apple products.
This course is project-based, so you will not learn a bunch of useless coding practices. At the end of this course, you will have real-world apps to use in your portfolio.
Learning how to code is a great way to jump in a new career or enhance your current career. Coding is the new math and learning how to code will propel you forward for any situation.
Learn a skill today because no one can take it away from you. People who can master technology will rule the future.
Source code and art assets are included in this course. Enroll now to join the Mammoth community!
In this course you'll also find: