Inflearn brand logo image
Inflearn brand logo image
Inflearn brand logo image
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) 21 reviews

560 learners

  • udev
C#
Unity

Reviews from Early 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,376

Learners

181

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

All

21 reviews

5.0

21 reviews

  • ehdrjs0601님의 프로필 이미지
    ehdrjs0601

    Reviews 3

    Average Rating 5.0

    5

    77% enrolled

    학교 선배님한테 추천받아서 들어봤는데 교육과정보면 섹션 정리가 너무 잘 돼서 찾고 싶은 거 바로바로 들을 수 있었던 게 너무 좋았고 내가 소리에 좀 예민해서 목소리 엄청 신경 쓰는데 들으면서 거슬리는 게 없었던 거 같음 교과서로 공부했던 것보다 훨씬 좋은 게 예시를 잘 들어서 이해하기 쉬웠음 C#좀 배웠으면 충분히 할만 할 거 같고 독학하는 사람한테는 투자할만함

    • UDevApp
      Instructor

      좋은 수강평 정말 감사합니다. 비전공자가 접근하기 쉽게 만든 강의입니다. 열심히 하셔서 좋은 결과 있으셨으면 좋겠습니다. ^^

  • dsic777님의 프로필 이미지
    dsic777

    Reviews 3

    Average Rating 5.0

    5

    94% enrolled

    자세하고 꼼꼼하고 충실한 강의입니다...

    • UDevApp
      Instructor

      좋은 수강평 너무 감사드립니다. 강의 빨리 다 완료하고 다음 강의도 만들도록 하겠습니다. ^^

  • ouni00님의 프로필 이미지
    ouni00

    Reviews 1

    Average Rating 5.0

    5

    19% enrolled

    안녕하세용 강사님 처음엔 내용이 쉬어서 인터넷에 있는 딴 강의랑 별 차이가 없나 싶었는데 조금 지나고 스크롤 메뉴들어가고 데이터 로딩하고 하는것 보니까 거의 중급자용 강의가 되버렸네요 ㅋㅋㅋ 저는 강사님이 올린 강의들로 유니티를 처음 접했는데 조금 어렵긴한데 계속 따라갈수는 있을것같아요!! 이거 완료되면 저도 게임 업로드 하고 싶습니다!!

    • UDevApp
      Instructor

      좋은 수강평 너무 감사드립니다. 빨리 다음 강의 만들어서 뵙도록 하겠습니다. ^^

  • 크레데레님의 프로필 이미지
    크레데레

    Reviews 4

    Average Rating 5.0

    5

    17% enrolled

    강의 업로드 전부 완료되면 글을 남기려고 했는데 이제 조금 남은거 같아서 리뷰 남깁니다. 저는 프로그래밍을 이걸로 처음 접근했고요. 강의에서 말하신대로 하루에 한시간씩 혹은 30분씩을 계속 보고 연습했습니다. 이렇게 계속 공부해서 보니 진짜 좋네요 다른 유니티 강좌와는 다른 차별화된 점이 있습니다. 그냥 C#이 아니라 C#과 관련된 유니티에서 사용되는 C#의 원리를 배우게 되는데요. 이게 정말 도움이 많이 됩니다. 다른 강의들은 그대로 따라하는 식으로 진행되지만 이건 원리 그 자체를 알려주기 때문에 정말 좋습니다. 왜 이 코드를 지금 써야 하는지를 알게 되니 직접 만들때도 큰 도움이 되는 것 같습니다. 그리고 캐릭터 업그레이드 되고 선택하고 해금하는 기능이 되어 있어서요. 다른 게임을 만들때 큰 도움이 될 것 같습니다. 빨리 전부 완료되어서 저도 업로드를 해봤으면 좋겠습니다. 다음에도 좋은 강의 부탁드립니다.

    • UDevApp
      Instructor

      좋은 수강평 감사드립니다. 매일 연습하셨군요. 생업이 있으신 입장에서 비전공자분들이 접근하려면 이 방법밖에 없다고 생각합니다. 좋은 결과 있으시길 바라며 다음 강의도 빨리 만들어서 오픈하겠습니다. 감사합니다. ^^

  • climber515님의 프로필 이미지
    climber515

    Reviews 4

    Average Rating 4.0

    5

    94% enrolled

    좋은 강의 감사합니다

    $59.40

    udev's other courses

    Check out other courses by the instructor!

    Similar courses

    Explore other courses in the same field!