Lesson 2 - What to Expect from this Course

Tutorial Series: Introduction to Unity with C# Series

Previous Article  |  Next Article


I mentioned in the previous video that this course is about coding basics, C#, and Unity. What should you come to expect in this course? That is what I am going to go over briefly in this video. The most important thing for me throughout the series, is to teach you the why behind the how of coding Unity. It is important for me that you not just understand how to do things, but why it works underneath the hood. As you move forward, you will be able to come up with your own creative solutions to problems as you move forward in game development.

We will be learning C# and Unity concepts in a natural sequence in this course. I hope that will gain you the confidence to work with the Unity API or Application Programming Interface, which is basically Unity's preset code base that it comes with. You will be tapping into and using its objects and behaviors that are important to just about making any kind of game. Basically, what I want to do is teach you how to fish for your own coding solutions rather than ask other people to always help you catch the next fish.

This approach, I hope, will give you a sense of a bunch of small victories. Sometimes when you look at a daunting subject matter like, 'Creating Game,' it is hard to see the small steps that you need to take in order to complete that project, it is so large. I hope I will be able to give you a sense of the small steps in sequence, problems that you end up solving and get that sense of, these are a bunch of tiny small victories that in total, sum up to a complete video game. That is a skill in and of itself that I hope you come away with. That is what this course is. It is a sequence series of lessons designed and targeted towards beginners who want to learn how to create games in Unity, while emphasizing the heartbeat of what makes a game run code and for the purpose of this course, that is going to be C#.

What this course isn't. This course isn't game theory, what makes a good game or bad game, or anything like that. It is also not an in-depth account on how to create game assets such as, bid maps and animations and things of that nature. Of course, we will be doing some basic bid maps in character design and animations just for the purpose of furnishing our game that we are going to end up creating. Nothing too in-depth, it is just too far out of the scope of just pure game development or Unity. This course is also not about 3D game design.

We are just going to focus on 2D game design. Partly because 3D game design is dependent on that knowledge that you will have from 2D game design. It is just a little extra layer of complexity, which is unnecessary for the beginner stage. Also, 2D game design is very rich and rewarding and allows you to focus on game play mechanics. You may have noticed in recent years that 2D game development is back on the map. Lots of great games that are fun and profitable are purely done in 2D.

Here is our actual course outline. We'll start with, surprise, surprise, "Getting Started." It is just going to be just the basics of installing our tools and using 2 or 3 basic tools. We will get right to installing that in the next video. Then right away, I will show you how easy it is to start prototyping an actual game in Unity. Even without understanding the code underneath, I will just show you how with very little... A few lines of code, you can right away start getting some interesting things to appear on your screen. Just to give you a taste of that, we will get started with that right away. Then we will go right into the C# language foundations for Unity's. We will expose it on classes, inheritance, instantiation, fields and properties, methods, enums, loops, collections raised and so on.

If you are already familiar with these C# concepts, you can feel free to pass by these lesson materials. Even so, I would encourage you to at least look at it a little bit because Unity, being its own engine, its own implementation of C#, you are not going to be familiar with exactly how it uses these concepts. In this phase, we will be going over that quite a bit. You will become more acquainted with the Unity engine at that phase.

Finally, we will be bringing together everything that I just detailed and we will be learning how to create a complete game, or as close to a complete game as we can, a platformer, which is pretty basic in game development. We will make a basic character with attack patterns, a health bar, and non-playable characters with similar attributes. You will learn how to do things like, player movement, animation, camera movement, and parallax scrolling hit detection, enemy patterns, scoring, and a bunch of other details important to making a complete game.

Along the way, it is completely up to you, but we will be giving you the option of doing the managed learning portion of DevU.com, which this course is being hosted on, which is basically real-time feedback with how you are progressing with available challenges and quizzes and so on. I think it is quite fun and you should give it a shot if you are confident enough. At that point, at the end of the course, I will set you along... Hopefully set you along your way towards Unity fluency. To help you forward your, hopefully, budding career in Unity, I will give you a recommendation about some helpful resources that I find helpful. Things like books and websites and things of that nature. I will also touch upon some intermediate to advanced concepts that I think would be a good launching point for you at that stage.

I know in the last video I gave you a bit of a pep talk about how this is perfectly within the grasp of beginning coders. I really want to emphasize that. In a lot of ways, I feel that learning how to code by learning how to create games is ideal. Many coding concepts are so abstract, that they can be difficult to understand. By creating a video game, it just helps sort of make it more concrete by manipulating objects in a simulated world. That helps you understand how certain concepts in programming work. It is not at all a bad thing that you are starting off learning how to program and develop games at the same time. As a matter of fact, that is why this course exists, for people like you.

In the next video, we will go right to installing those tool sets we will be using. I don't want to waste too much time, I know you are probably really excited to get going, I am too. In the next video we will do that and get right into it. Alright, thanks a lot.

Related Articles in this Tutorial:

Lesson 1 - Who This Course is For

Lesson 2 - What to Expect from this Course

Lesson 3 - Installation and Getting Started

Lesson 4 - Starting the First Project

Lesson 5 - Prototype Workflow

Lesson 6 - Basic Code Review

Lesson 7 - Game Loop Primer

Lesson 8 - Prototyping Continued

Lesson 9 - C# Fundamentals and Hello World

Lesson 10 - Variables and Operations

Lesson 11 - Variables and Operations Continued

Lesson 12 - Floats, Bools and Casting

Lesson 13 - If Statement Conditionals

Lesson 14 - If Statements Continued

Lesson 15 - Complex Evaluations and States

Lesson 16 - Code Syntax vs. Style

Lesson 17 - Variable Scope

Lesson 18 - Object-Oriented Programming Intro

Lesson 19 - OOP, Access Modifiers, Instantiation

Lesson 20 - Object Containment and Method Returns

Lesson 21 - "Has-A" Object Containment

Lesson 22 - "Is-A" Inheritance Containment

Lesson 23 - Static Fields and Methods

Lesson 24 - Method Inputs and Returns

Lesson 25 - Reference vs. Value Types

Lesson 26 - Introduction to Polymorphism

Lesson 27 - Navigating the Unity API

Lesson 28 - Applying What You've Learned and Refactoring

Lesson 29 - Constructors, Local Variables in the Update Method

Lesson 30 - Collecting Collectibles, Items and Powerups

Lesson 31 - Spawning and Managing Prefab Powerups

Lesson 32 - Implementing Powerup State Logic

Lesson 33 - Displaying Text, OnGUI, Method Overloading

Lesson 34 - Referencing Instantiated GameObjects, Parenting

Lesson 35 - Understanding the Lerp Method

Lesson 36 - Creating Pseudo Animations in Code

Lesson 37 - Understanding Generic Classes and Methods

Lesson 38 - Animations Using SpriteSheets and Animator

Lesson 39 - Working with Arrays and Loops

Lesson 40 - Debugging Unity Projects with Visual Studio

Lesson 41 - Camera Movement and LateUpdate

Lesson 42 - Playing Audio Clips

Lesson 43 - Routing Audio, Mixers and Effects

Lesson 44 - Adding Scoring Mechanics and Enhancements

Lesson 45 - Scene Loading and Game Over Manager

Lesson 46 - Understanding Properties

Lesson 47 - Controller Mapping and Input Manager

Lesson 48 - Understanding Enums

Lesson 49 - Dealing with Null References

Lesson 50 - Handling Variable Framerates with time.DeltaTime

Lesson 51 - Preparing the Project for Final Build

Lesson 52 - Final Build and Project Settings

Lesson 53 - Introduction to the Unity Physics Engine

Lesson 54 - Understanding FixedUpdate vs. Update

Lesson 55 - Movement Using Physics

Lesson 56 - Attack Script and Collision Events with OnCollisionEnter2D

Lesson 57 - Projectiles and Stomping Attack

Lesson 58 - Parallax Background and Scrolling Camera

Lesson 59 - Infinitely Tiling Background Sprites

Lesson 60 - OOP Enemy Classes

Lesson 61 - OOP Enemy Classes Continued

Lesson 62 - Trigger Colliders and Causing Damage

Lesson 63 - Multi-Dimensional Arrays and Procedural Platforms

Lesson 64 - Finishing Touches

Lesson 65 - Series Wrap


Please login or register to add a comment