Skip to content

swoodruff21/Unity3D-CodeMash-Workshop

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Intro to Unity 3D Game Development

Welcome to an intro to Unity 3D! Follow along in the labs to fix, improve, and build on a simple roller ball game.

The game you will make is a simple one where the goal is to roll the ball to the end of the level, dodging obstacles along the way. This game may be simple but you will learn about and engage with many key aspects of game development including programming for obstacles, player controls, and more, UI, Collision, and building your game.

Follow all the steps below before starting the training so you are prepared and ready to dive in!

Pre-requisites:

IMPORTANT: Installation can take a decent bit of time, so make sure everything is installed and ready to go ahead of time!!!
If you need any help installing, ping "@Mason Beale" in the CodeMash Discord

Announcement: If you cloned this repo before 12/28/2023 noon, please clone again as some branches were updated.

Previous knowledge

  • No knowledge of Unity needed
  • At least some object oriented programming experience is highly recommended. We will be using basics such as but not limited to: functions, classes, conditionals, variables and loops.
  • Knoweledge of Git/GitHub is preferred, but not required

Equipment

You'll need a laptop(if attending in person) or desktop with Windows, Linux, or Mac installed

  • Unity can run decently well on most laptops, even if they are not super powerful, as long as they aren't already super slow even with things like browsing the internet, but especially for the game we will make, it is not super power intensive

It would also be recommended to have a mouse instead of a touch pad, as that makes scene navigation easier(IMO)

Itch.io

As long as there is time, the last lab will involve uploading a build of our game to Itch.io, so to save time, go ahead and register for a (free) account now: https://itch.io/register

Unity

This will be done using Unity 2021.3.6. You will have to create an account with Unity, just follow the prompts when they appear. Since this is the basics, any version should work, but it is better to have the same version. Follow the instructions here to install Unity.

IDE

You will also need something to edit the code. If you followed the above steps, VS Community should be installed, which is the recommended IDE to use, as the process to install is much more streamlined and will include more autocomplete features out of the box.

You can also feel free to install VS Code or Jet brains Rider(free trial), though there may be extra steps involved

It may be worth it to create a simple C# "Hello World" program to ensure code completion, intellisense, and general SDK is working.

Git

You can manage without Git but it is recommended to have it installed. If you clone using Git there will be progress branches to help stay on pace

Cloning the project

This repo contains a test project and a starter project for the training, so you need the files.

With Git installed, you can clone the project.

Unity License

You also need a license to use Unity, and for personal/hobby use, it will be free. Follow the steps at this link to get your personal license, it only only take a minute: Instructions

How to test if it works

It should work just fine, but always good to make sure :) Also a good time to make sure your IDE is hooked up

  • In the Unity Hub, at the top right of the window click "Add"
  • Navigate to the directory where you cloned the project, and open "RockPaperScissors" in the main folder
  • In the middle of the "Projects" tab in the Hub, click "RockPaperScissors" to open the Unity project, and wait for the Editor to open(this might take a minute)
    • The project you are loading is also where you can set up your IDE as mentioned above
  • Once Unity loads in the middle window select the "Game" tab next to the "Scene" tab
    • If you see this pop up:
      SkipNewVersion
    • Click, "Skip new Version"
  • If you see a blank screen on this game tab, open the the "assets" tab in the bottom of the window next to "console"
  • From the assets tab, double click to enter the "scenes" folder, then double click the "Main" scene to open that scene
  • Once on the proper game scene, click the "console" tab in the bottom of the window to view game results
  • Click the play button at the very top of the editor
  • If you can play the game, you're all set!

Finishing Set-Up

We also need to add the main project just like we did above, since there is a small amount of starter content for the actual workshop Just like before: In the Unity Hub, at the top right of the window click "Add"

  • Navigate to the directory where you cloned the project, and open "RollerBall" in the main folder
  • You're all set! See you at the Kalahari!

Tentative Schedule

Before starting, make sure you are on the master branch branch. Below is a tentative schedule, which will likely change slightly as time allows

  1. Intro and Welcome

  2. Presentation

  3. Lab 1

  4. Lab 2

    1. Break ~5 minutes
  5. Lab 3

  6. Lab 4

  7. Lab 5

    1. Break ~ 10 minutes
  8. Lab 6

  9. Lab 7

  10. Lab 8

  11. Break ~ 5 Minutes

  12. Lab 9

  13. Lab 10

  14. Wrap-up

Where to go next

I would encourage you to keep learning and (hopefully) having fun with Unity, so I wanted to provide a few different things you can do next:

  • The biggest is to simply keep making games. Several small, yet complete, games are incredibly helpful for learning Unity. Even just for a hobbyist, it is really really good to start smaller(Even smaller than what you're thinking!
    • Game Jams are a wonderful way to do this. There are tons of public online ones, some in person, or even do one solo or with a friend
  • There are several good courses out there. I tend to like the ones at gamedev.tvhttps://www.gamedev.tv/courses/category/Unity) (Note, don't start with online multiplayer courses).
    • They are paid, but they go on sale quite a lot, Udemy.com also has a lot
  • Explore other areas of game dev to stretch your creative muscles, such as learning Blender, music or audio(gamedev.tv also has some Blender courses)
  • Look into engine/backend/computer graphics if you wanna get technical
  • Also, the Unity Asset Store has tons of great resources, such as models, UI, and even programs. They have many free things available as well, which help for quickly making your game look decent, especially if you just want to show off to friends(note, for commerical projects, check licensing!)

Here is also a handy link to a public .gitignore which is great thing to have built for you!

Also keep working on the game today, see what else you can expand on and make, and feel free to ping me "@Mason Beale" on the CodeMash Discord if you need anything, and I'll do my best.

There are many things you can do of course, but it really comes down to just doing something. Be careful of tutorial hell, but don't be afraid of tutorials either. Game dev involves a large variety of software and creative fields, so figure out what you like, and just enjoy yourself 🙂

About

Unity Game Making Basics - CodeMash 2024

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • ShaderLab 82.4%
  • HLSL 14.3%
  • C# 3.3%