MMORPG 개발에 필요한 모든 기술, C# + Unity로 Step By Step! 🕹️
기초부터 끝판왕까지, MMORPG 개발하기 🎮
아무런 지식도 없다는 가정하에 누구나 부담없이 차근차근 수강할 수 있도록 구성된 게임 개발 강의입니다. 최종적으로는 500~1000명의 유저를 수용할 수 있는 MMORPG 인디게임을 출시하는 것을 목표로 합니다.
이번 시리즈에서는 C#과 유니티(Unity)를 이용하여 유니티에서 제공하는 무료 에셋을 토대로 2D 로그라이크 게임을 만들어 볼 수 있도록 단계별로 필요한 기술을 학습합니다. 함께 도전해볼까요?
이런 걸 만들 수 있어요 ✨
▲ 간단한 에셋을 가지고 RPG 게임의 필수적인 기능을 구현해보세요. (샘플 포트폴리오 클립: 2015년 N사 신입 채용 서류전형에 통과했던 실제 포트폴리오입니다.)
▲ 온라인 멀티플레이 게임을 만드는 핵심 서버 연동 기술까지 배우게 됩니다.
학습 내용 📚
Part1 : C# 프로그래밍 입문
Part2 : 자료구조와 알고리즘
Part3 : 유니티 엔진 현재 강의
Part4 : 게임 서버 (네트워크, 멀티쓰레드, OS)
Part5 : 데이터베이스(SQL Server)
Part6 : 웹서버 (ASP.NET Core Blazor, WebApi)
Part7 : MMORPG 컨텐츠 구현 (Unity + C# 서버 연동)
Part8 : Entity Framework Core (.NET ORM)
Part9 : MMORPG 컨텐츠 구현 (DB 연동 + 대형 구조 관리 + 라이브 준비)
번외편 : AWS로 시작하는 서버 운영
번외편 : ASP.NET Core 심화편
각양각색 게임 개발의 시작, 유니티 Part3에서는 유니티 엔진(Unity Engine)을 파헤쳐 봅니다. 기본적인 C# 문법은 알고 있지만 무작정 유니티 엔진을 따라하기에는 어려움을 느끼는 분들을 대상으로 간단한 수준의 RPG 게임을 만들어보며 유니티 게임의 전반적인 기능에 대해 학습합니다.
유일무이한 실무형 유니티 강의 입문 수준의 유니티 서적이나 강의는 많지만, 정작 클리커 게임을 만드는 방식으로 RPG 게임을 만들 수는 없습니다. 프로그래머가 반드시 숙지해야 하는 유니티 핵심 기능들에 대해 알아보고, 그 기능들을 효율적으로 관리할 수 있도록 본인만의 프레임워크를 쌓아 올리게 됩니다. 궁극적으로 특정 장르의 게임이 아닌, "그 어떤 게임"도 만들 수 있는 탄탄한 기본기를 추구합니다.
다음 순서로 학습해보세요!
유니티 기초 👉 Transform 👉 프리팹 👉충돌 👉 카메라 👉 애니메이션 👉 UI 👉 씬 관리 👉 사운드 관리 👉 오프젝트 풀링 👉 코루틴 👉 데이터 관리 👉 미니 프로젝트
파트3, 이런 분들께 추천합니다!
기본적인 C# 문법 알고 계신 분
유니티 엔진을 처음 다루는 분
게임 프레임워크 구축하고픈 분
Q&A 🙋♀️
Q. 강의 환경이 무엇인가요? A. 모든 시리즈는 Windows 환경이라 가정하고 제작이 되었으며, macOS에 대한 부가적인 설명은 없습니다.
Q. 비전공자도 들을 수 있나요? A. 선수 지식이 아예 없다고 가정을 하고 진행하기에 아무런 문제 없습니다.
Q. 이 강의를 시작하게 된 계기를 소개해주세요. A. 개인적으로 서버 공부를 시작하면서 참고할 자료가 없어서 어려웠던 기억이 있습니다. 취업 후 실제 돌아가는 라이브 MMORPG 코드를 비교하며 보면서, 헤딩을 통해 만든 제 코드의 잘못된 점을 많이 깨닫게 되었습니다. MMORPG 개발에 관한 전반적인 내용을 기초부터 끝까지 간략하게 다루는 수업이 있었으면 시간도 절약하고 덜 고생했을 것 같다는 생각을 했습니다. 이 수업이 여러분들에게 MMORPG 게임 입문의 길잡이 역할을 해줄 것으로 기대합니다.
Q. C++이나 언리얼 엔진은 사용하지 않나요? A. [인디 게임을 위한 C#/Unity를 이용한 버전(해당 시리즈)]과 [취업을 위한 C++/UE4 버전]으로 구분해서 제작할 예정입니다. MMORPG는 네트워크, OS, 멀티쓰레드, 웹, 클라이언트 엔진, 등등 다뤄야 할 내용이 굉장히 많은데, C++ 기반으로 진행할 경우 난이도가 높아서 입문자에겐 적합하지 않습니다. 특히 게임 개발에 대한 지식이 없다면 C# 버전으로 먼저 전체적인 숲을 훑어 보시기 바랍니다.
Q. 유니티 서버가 포톤 서버를 이용하나요, 직접 구현을 목표로 하나요? A. 직접 구현을 목표로 합니다.
Q. 하나의 Part를 구매하면 다른 Part는 무료인가요? A. 각 파트는 독립적으로 제작되어 별도로 판매됩니다.
이런 분들께 추천드려요
학습 대상은 누구일까요?
유니티 엔진을 처음 다루는 사람
MMORPG 기술에 관심이 많은 사람
선수 지식, 필요할까요?
기본적인 C# 이해도
안녕하세요 입니다.
76,985
명
수강생
3,424
개
수강평
5,382
개
답변
4.9
점
강의 평점
42
개
강의
학력
- Condorcet Prépa MPSI 수료 (프랑스) - 칭화대학교 소프트웨어공학 학사 (중국) - 고려대학교 정보보호대학원 석사 (한국)
- 리버싱 및 취약점 분석 - MMORPG 게임 개발 (C++, C#) - 외국어 (영어, 프랑스어, 중국어, 일본어)
소개
해킹 공부를 위해 순전히 호기심으로 시작한 게임 개발인데... 시간이 흘러 어느덧 10년차 게임 개발자가 되었습니다. "이래서 언제 게임을 만들지~?" 한숨 나오는 기초 문법부터 시작해서, 차츰 만들어가는 나만의 게임 세상. 그리고 그 세상에 접속한 다수의 플레이어를 볼 때의 뿌듯함. 공부를 할 수록, MMORPG의 매력에는 헤어나올 수가 없습니다. 제가 느낀 감동을 여러분도 느낄 수 있으면 좋겠네요.
Personally, it was not an easy lecture. The editor part is intuitively understandable without much understanding, but the problem is that when a design pattern appears, it is the part where the manager is built, and it is hard to follow the flow of what it really means. However, after watching the lecture once and watching it again, I gradually see the intention behind building this framework, and I start to understand it. That's when I realized the true meaning of this lecture.. I really recommend this lecture. People like me who don't have much coding experience will probably have a hard time at first, but if you watch it several times and try your best, I think you will get good results! Oh, and the instructor often refactors to make the code as efficient as possible while giving the lecture, so you may get dizzy here, but since it contains a lot of know-how, I think it will be more helpful if you stop slowly, follow along, and understand it.
I think it's a really good lecture. However, since the game system is created with the game's scale in mind, it felt difficult for me who was new to it.
It seems to be a very high-quality lecture among the lectures I took while studying development.
However, if you are completely new to Unity or are not majoring in this field, it may be difficult.
Personally, I think it would be much more helpful to take this lecture after getting used to Unity by listening to simple game development books or lectures, and then learning the overall development flow and code patterns.
It was good to be able to learn about parts that I used to use without knowing the principles because I was in a hurry to produce while working in the field. And rather than uploading a framework like this lecture, I often thought about how to increase reusability and manage the system more efficiently by structuring it, as I was using code that worked at that time. This lecture was really helpful. And it was a great help in thinking a lot about the direction of coding to some extent.