인프런 영문 브랜드 로고
인프런 영문 브랜드 로고
BEST
Game Dev

/

Game Programming

Game Development with Unity: Part 3. Shooting Game Development

You will understand the basic functionality and memory operations of Unity and learn how to create a game that runs a full cycle, not just a prototype.

(5.0) 20 reviews

557 students

C#
Unity
Thumbnail

This course is prepared for Basic Learners.

What you will learn!

  • Memory structure of Unity actions

  • How to make a shooting game with Unity

  • How to make a real game, not a prototype

Game development for non-majors & beginners!
Let's understand the structure and principles of Unity + C# together.

UdevApp / UdevApp / udevapp

Lecture Introduction 📝

After learning C# in Unity, I thought about what the most necessary course would be for beginners who want to make games. It is to know the internal functions of Unity and the relationship between the actual code and memory. Even if you make a cube or a character, if you don't know the actual internal memory operation, you can no longer make a game. You can only make a project where the ball bounces. I made this course to solve that problem.

So unlike other game courses, you learn Unity features and C# grammar while making a game with Unity. It doesn't just focus on using features. It explains how one feature internally relates to the code I'm making, and how actual classes, instances, and memory work between Unity features and my code. You can make games without having to use difficult grammar. Creating a character class that allows multiple inheritance of delegates or interfaces is something you should do after you've easily made and uploaded several games.

• How the memory of a game object in the hierarchy view exists
• Why connect objects by dragging?
• Why multiply a vector by Time.deltaTime?
• Why is there vector3 in game programming?
• Explains the principles and reasons why rigid bodies and colliders are separated.

In other lectures, these contents are explained for about a minute and then finished. That's because the lecture is for actual developers. However, non-majors and non-experts who are just starting out in game development need a different lecture. They need to understand why Unity has these features.

So, in this lecture, in addition to game production, more than half of the lecture is about understanding and practicing Unity's functions like C#. Games come after the middle part. This is because you can't write a program until you know the principles. Only actual developers can learn a lecture that only covers game development.

I created this course to teach non-majors and beginners how to create games.

Why should you learn ✒️

This lecture is about how to approach game development from the perspective of non-majors and beginners. However, it is not easy. For example, in order to explain the principle of operation of game object variables in Monobehavior, it explains examples of possessive references, dereferences, and mutual references, and then explains the principle of operation of game object variables. If you see a small example with a similar structure, you may wonder why you should do this. However, programming is the work of understanding the internal principles of a computer and talking to a computer. As I said, in order for a computer to work, we need to go outside the class and know how the variables and functions that we can use work. It is the same as putting yourself in someone else's shoes in order to talk to someone else.

And that is what makes debugging possible. Programming is a struggle against hardship. You can make ridiculous and nonsensical errors. The basics are essential to solve these problems.

For beginners or novices, it will be impossible to understand this lecture if you do not know the basics of C# (corresponding to Part 2) . However, after learning this lecture and being able to create similar examples, the fear of creating an actual game will disappear.

  • Before making a game, learn the principles first. If you know the principles, you can apply them. If you just follow them without understanding them, you won't be able to make a game.
  • The study time per lecture will not exceed 10 minutes. (There are lectures that exceed this, but I think it is okay to exceed this, so I made it that way. If you think it is too long and interferes with learning, I will split it up or re-record it.)

What you will learn in this course ✏️

  • You will learn how to use Unity's features to add the functionality you need.
  • You can learn how to view API documentation.
  • Explains how Unity's features work internally.
  • Explains the memory and principles of the code you write.
  • I'll explain the memory for the code I wrote and the features of Unity.

Course Features 💡

The goal is to learn the grammar and develop an actual game by looking at the memory structure of Unity. It will be a simple shooting game, but we will work on uploading it to an actual store.

After taking this course, you will be able to develop a simple game. However, beginners should practice for at least 30 minutes a day. I think it will be a great help to beginners and non-majors who are approaching Unity.

The current course is short at about 8 hours, but there are nearly 100 lectures (more to come) .
If you study and practice briefly with short lectures, you can learn the basics of Unity C# programming in 30 days at the fastest and 3 months at the longest, with 30 minutes a day. However, non-majors are advised to learn slowly. Since programming is a language, you need to accumulate it in your long-term memory so that you can program yourself.

A brief introduction to each section 📖

Section 0. Reviewing C#

  • This is the stage where majors learn Unity and review C# to approach Unity.
  • Existing learners may skip this, but we recommend that you review it.
  • In particular, please make sure to take the Object-Oriented 1 and Object-Oriented 2 lectures.

Section 1. Game Development and Unity

  • Let's take a look at how actual Unity features work with memory.
  • Learn about the relationships between game objects and components and test their actual internal workings.
  • Knowing how memory works internally takes the fear out of programming.

Section 2. Class Inclusion Relationships (Added as a lecture that was not previously scheduled)

  • Classes have a inclusion relationship even if they are the same class.
  • Knowing who is the main and who is the sub in a class will help you manage both of them properly.
  • Learn about possessive references, backreferences, and cross-references and how they work in Unity.
  • Learn how to view Unity's API. Once you get used to it, you'll be able to develop just by looking at the API.

Section 3. Basic Grammar and Unity

  • You need to know how C# syntax is used and presented in Unity.
  • Learn static and generic programming from a Unity perspective.
  • Learn about keyboard input and mouse input.
  • Understanding how grammar is used in Unity will change the way you look at Unity classes.

Section 4. Movement of Objects

  • Vector3 is not just Vector3. It is used in different meanings such as position, direction, speed, size, angle, etc. You should not think of Vector3 as just a vector.
  • I will teach you the movement and speed of objects very easily. (I thought about why there is such a thing as speed.)
  • Let me explain clearly why we go through the process of multiplying vectors, multiplying times, and adding when moving.

Section 5. Object Management and Conflicts

  • Explains why applying colliders and rigid bodies is tricky.
  • Explains how to manage the objects you own.
  • Let's learn about the internal structure of Unity by comparing what is applied in Unity to how it works in actual code.

Section 6. Creating a Shooting Game Prototype (This was not originally scheduled, but was added to adjust the difficulty level)

  • Create a prototype and prepare to create an actual game.
  • Learn how to fix the resolution to one and define the pixel units and camera size.
  • Develop a simple prototype of a game with moving characters, enemies, and backgrounds.

Section 7. Creating a Shooting Game

  • We create games that have a "one cycle" where you fight, collect, and upgrade to implement simple growth and enemy emergence.
  • Applies character upgrades.
  • Added content where enemy characters become stronger depending on the stage.
  • Apply boss character.

Section 8. The Game's UI

  • Playing a game isn't the only thing you do. UI is another axis of programming.
  • Know the coordinate system of the canvas and add each UI.
  • Configure the game's screen.

Section 9. Store Uploads

  • Find out what features are needed outside of the game and implement them.
  • Integrate advertising features into your game.
  • Learn about preparations and precautions before uploading to the store.

Tools covered here 🧰

In this lecture, it is highly recommended that you study and practice. Especially, non-majors will never be able to learn programming just by watching since they do not normally work with programming.
After you understand it, you must practice it.

Expected Questions Q&A 🙋🏻‍♂️

Q. Can non-majors also take the course?
A. Yes, this is a lecture for both non-majors and majors. However, non-majors and beginners must take the prerequisite course "C# Programming Course Part 2" on Inflearn to take this course. The C# review in Chapter 0 of this lecture is for majors.

Q. What are the benefits of learning “Shooting Game Development Course”?
A. You need to know the principles to apply them. You need to know the principles to apply them, not only when programming, but also when catching errors. When you make an error while programming, someone else won't solve the problem for you. If you actually make a game and run it through a cycle, you can do more things.

Q. What can I do after taking the “Shooting Game Development Course”?
A. You can stand at the starting point of making a game with Unity. It will also be a great help when making other programs with Unity. Since you can understand the principles, you can apply them. In other words, although it is a simple game, you can gain the ability to make a game. Also, it includes practical content such as making a game that can be uploaded and uploading it, so you can get practical tips necessary for smartphone game development.

Q. Are there any special advantages to this course?
A. It may be difficult at first. However, once you get past that stage and get to the middle or higher, you will have a concept of the principles. If you know the internal structure, you can predict how the computer works. Then, not only your programming skills but also your debugging skills will improve. Why are experienced people experienced? They are experienced because they are good at debugging. I will tell you the perspective of an experienced person who is good at debugging. Even if you complete 99%, if there is an error, the game is difficult to succeed. And if you can't solve the error, there is nothing more difficult than that. To prevent this situation, you need to study the principles and memory.

View previous lectures 📼

Game development starting with Unity:
Part 1. Introduction to Computer Architecture

Even non-majors can easily understand the basic principles of how computers work.
Game development starting with Unity:
Part 2. Introduction to C# Programming

First C# programming that builds the framework for Unity game development!

Recommended for
these people!

Who is this course right for?

  • Someone who has just started learning basic C#

  • If you are curious about how Unity objects work in memory

Need to know before starting?

  • C# Programming Language Related to Object-Oriented

  • C# Programming Part1

Hello
This is

5,268

Students

175

Reviews

151

Answers

4.9

Rating

4

Courses

안녕하세요. UDevApp 의 최형선이라고 합니다. 

무엇인가를 만들어낸다는 것은 정말로 행복한 일입니다. 

세상에 나의 제품이 나올 때의 느낌은 스티브잡스가 느낀 그것이나 

여러분들이나 저와 다르지 않다고 생각합니다. 

여러분들에게 그러한 감정을 드리는 사람이 되고 싶습니다. 

네이버카페와 블로그와 유튜브에도 많이 찾아와 주시길 바랍니다.

.

https://cafe.naver.com/ultimategunz(카페바로가기)

http://blog.naver.com/siwoo2406(블로그 바로가기)

https://www.youtube.com/user/ChoiHyungSun/(유튜브 바로가기)

감사합니다. 

Curriculum

All

230 lectures ∙ (30hr 21min)

Course Materials:

Lecture resources
Published: 
Last updated: 

Reviews

Not enough reviews.
Become the author of a review that helps everyone!