![[유니티 레벨 업!] 모듈식으로 개발하는 스킬 시스템강의 썸네일](https://cdn.inflearn.com/public/courses/333173/cover/1ebf894e-36b3-4254-b9f7-9c1e0f43e02b/333173.png?w=420)
[유니티 레벨 업!] 모듈식으로 개발하는 스킬 시스템
Developer G
다양한 게임에 적용할 수 있는 [스킬 시스템]과 개발 생산성을 높여주는 [툴 제작], 구조적인 프로그래밍 방식인 [모듈식 프로그래밍]을 배우는 강의입니다.
중급이상
Unity, modules
다양한 게임에 적용할 수 있는 [퀘스트 시스템]과 개발의 생산성을 높이기 위한 [모듈식 프로그래밍]을 배우는 강의입니다.
조립하여 원하는 퀘스트를 만들고 관리하는 [퀘스트 시스템]
기능을 쪼개고 조립하여 객체를 구성하는 [모듈식 프로그래밍]
Update 함수에 의존하지 않는 이벤트 기반의 [이벤트 주도 프로그래밍]
모듈식 프로그래밍👨💻으로
게임 개발 레벨, 한 단계 업그레이드!
퀘스트 시스템은 없는 게임이 없을 정도로 게임에 필수적으로 들어가는 시스템입니다. 그렇다보니 유니티의 에셋스토어, 언리얼 엔진의 마켓플레이스에서 잘 팔리는 에셋 중 하나이죠.
퀘스트 시스템은 다양한 게임에 적용할 수 있도록 체계적이고 범용적으로 만들 필요가 있는데, 이를 위해선 모듈식 개발이 필수적입니다. 하지만 인터넷에서 쉽게 찾아볼 수 있는 유튜브 강의를 봐도 모듈식으로 개발하는 경우는 흔치 않고, if문과 switch문을 이용해 때려박는 식으로 구현하는 경우가 많습니다.
단언컨대, 그런 식으로는 무엇 하나 잘 만들 수 없습니다.
모듈식 프로그래밍이 중요한 이유
✅ 개별 클래스가 가벼워집니다.
✅ 수정과 디버깅이 용이해집니다.
결과적으로, 개발 생산성을 높일 수 있습니다!
(확장성, 재사용성 ▲)
퀘스트
시스템
모듈식
프로그래밍
이벤트 주도
프로그래밍
여러분들이 '무언가'를 잘 만들 수 있도록 체계적이고 범용적인 퀘스트 시스템을 모듈식 프로그래밍을 통해 개발하는 방법을 알려드릴 것입니다.
이 강의를 통해 초보 프로그래머에서 체계적인 나만의 시스템을 개발할 수 있는 프로그래머로 한 단계 더 나아가시길 바랍니다.
Step 1
다양한 목표와 보상을 가진 모듈식 퀘스트와
퀘스트를 제어하는 퀘스트 시스템을 만들어봅니다.
Step 2
만든 시스템을 예제에 적용하고 확장해봅니다.
강의에서 구현하는 기능을
쉽고 정확하게 이해할 수 있도록
수업 영상마다 자막을 함께 제공합니다.
Q. C#에 대한 지식이 어느 정도 있어야 하나요?
C#의 기본적인 문법을 공부한 상태여야 합니다. Linq, Event, Collection 등 C#의 전반적인 기본 문법을 다 사용하지만 따로 문법에 대한 설명은 하지 않을 것이기 때문에 C#을 잘 모르거나 부분적인 지식만 있을 경우 원활히 따라오기 힘들 수 있습니다.
다만 게임 개발을 하려면 문법은 당연히 알아야 하는 부분이고, 남들이 안쓰는 특별한 문법을 사용하는게 아니기 때문에 C#에 대한 부분적인 지식만 있으셔도 따로 문법을 찾아보며 공부하실 수 있으신 분들은 충분히 따라오실 수 있습니다.
Q. 유니티에 대한 지식이 어느 정도 있어야 하나요?
코드 작성을 통한 시스템 개발이 주 내용이기 때문에 초급 수준의 유니티 지식과 ScriptableObject에 대한 지식만 있으면 됩니다.
Q. 수업 내용을 어느 수준까지 다루나요?
존재하는 모든 게임에 대응하는 퀘스트 시스템을 만드려면 많은 것들을 고려하며 시스템을 개발해야 하기 때문에 시간과 난이도 관계상 퀘스트 시스템의 보편적 필수 기능만 구현할 것입니다. 하지만 예제 게임에 저희가 만든 시스템을 적용 및 확장해볼 것이기에 수강생 여러분들은 자신의 게임에 시스템을 적용하고 필요에 따라 기능을 추가, 확장하는 법을 배우게 될 것입니다.
Q. 모듈식 프로그래밍을 하면 뭐가 좋은가요?
통계에 따르면 클래스의 코드가 300줄이 넘어갈 경우 버그가 발생할 확률이 급격히 올라간다고 합니다. 게임은 프로그램의 규모가 상당히 크고 수정과 확장이 매우 빈번하게 이루어져 필연적으로 코드가 복잡해질 수 밖에 없는데, 코드를 적절히 분할하지 못한다면 개발을 제대로 완료하기도 전에 버그에 지쳐 개발을 포기하거나 개발을 완료해도 버그 투성이의 미완성 게임이 만들어질 것입니다.
그렇기에 여러분이 제대로 된 게임을 개발하기 위해서는 코드를 모듈식으로 작성하는 법을 알아야 합니다.
Q. 비전공자도 들을 수 있는 강의인가요?
시스템을 만든다고 하니 어렵게 들릴 수도 있지만, 시스템이란 것은 어떻게 구성할지 고민하는 과정이 어렵지 구현이 어려운 것이 아닙니다. 아직 프로그래머적 사고 방식이 잡히지 않은 비전공자분들은 저와 함께 시스템을 개발하며 기능 구현에 급급하여 의식의 흐름대로 코드를 작성하는 것이 아닌, 기능을 설계하고 체계적으로 코드를 작성하는 방법을 배우게 될 것입니다.
📢 수강 전 확인해주세요!
학습 대상은
누구일까요?
프로그래밍 실력을 한 단계 더 높히고 싶은 [루키 프로그래머]
if문과 switch문에 의존하는 때려박는 식의 코딩이 아닌 체계적인 구조의 [모듈식 프로그래밍]을 공부하고 싶으신 분
재사용 가능한 [체계적 시스템]을 개발하고 싶은데 갈피를 못 잡겠는 분
나만의 [퀘스트 시스템]을 만들어보고 싶으신 분
선수 지식,
필요할까요?
C#
유니티
940
명
수강생
63
개
수강평
156
개
답변
4.8
점
강의 평점
2
개
강의
안녕하세요, 게임을 사랑하고 개발을 사랑하는 게임 프로그래머 Developer G입니다.
저는 어떻게하면 깔끔하고 체계적인 코드를 작성할 수 있을지 항상 고민하는데요,
제 고민의 결과물들을 여러분들에게 아낌없이 가르쳐드리겠습니다!
전체
19개 ∙ (5시간 48분)
해당 강의에서 제공:
1. 강의 소개
04:55
2. 모듈식 프로그래밍
06:18
3. 퀘스트 분석
03:48
4. 개요
14:56
5. Task 구현
41:32
6. Quest 구현
36:58
7. Achievement 구현
03:23
8. Quest Database 구현
08:40
9. Quest System 구현
26:02
11. 예제 3D FPS Kit 소개
03:33
13. 메인 퀘스트 제작
32:43
15. 서브 퀘스트 제작
24:47
전체
49개
4.8
49개의 수강평
수강평 3
∙
평균 평점 5.0
5
진짜 좋은 강의입니다. 유튜브에서 대충 따라하는 식의 강의를 너무 많이 들어와서 유니티 만진지 이제 몇 년됐는데도 실력이 엄청 정체된 느낌이 많이 들었는데요, Scriptable Object를 그냥 데이터 저장용으로만 쓴다고 했을 때는 직렬화 클래스 그냥 쓰면 되는거 아닌가? 하면서 안썼었는데, 이런 식으로 모듈화하는 데 사용할 수 있다는 것에 놀랐고, 이번 연휴간 최대한 많이 들어서 많은 자극을 받으려고 합니다 ㅎㅎㅎㅎ 다음 강의도 찍어주시면 더 많이 도움이 될 것 같습니다!! 감사합니다.
수강해주셔서 감사합니다! ScriptableObject는 시스템이나 툴, 컨테이너 등 정말 다양한 곳, 다양한 방식으로 활용할 수 있는 편리한 기능인데 학습 단계에서 이를 활용할 수 있는 방법을 배우지 못하는 안타까운 기능 중 하나입니다. 지금은 SerializeReference라는 아직 미완성인 다형성 직렬화 기능이 추가되어 쓰임새가 좀 줄어들긴 했으나 아직도 대체 불가한 쓰임새가 많기 때문에 이 강의를 통해 ScriptableObject의 쓰임새에 대해 새로 알게되셨다니 기쁩니다. 더 만족하실 수 있는 좋은 내용의 강의로 다시 찾아뵙겠습니다, 감사합니다!
수강평 4
∙
평균 평점 5.0
5
코딩에 있어서 먼저 분석이 중요하고 Quest와 Task를 따로 나눠서 생각하게 설명하는것이 너무 좋습니다.
수강해주셔서 감사합니다! 개발에 있어서 무엇보다 중요한 것 중 하나는 내가 무엇을 만들어야하는지 확실히 아는 것입니다. 그래서 저도 항상 개발에 앞서 만들어야하는 요소들이 어떤 것이 있는지 문서에 정리하고, 개발을 하면서도 중간 중간 생각해봐야할 것들, 추가적인 요소들을 정리하면서 작업을 합니다.
수강평 2
∙
평균 평점 5.0
5
처음에는 "switch를 사용해서 기능을 추가하는게 그렇게 문제인가?"라고 생각했는데, 모듈식으로 만들어서 switch 하나 없이 코드가 간결한거 보고 "문제구나;;;"라고 확실히 이해되는 강의였습니다. 제가 강사님처럼 switch를 안쓰고 모듈식으로 코드를 작성할 수 있을지 막막하지만, 강사님 말대로 열심히 연습해보겠습니다. 좋은 강의 감사합니다 :D
생각이 그렇게 바뀌셨다니 강의를 만든 보람이 있는 것 같습니다. 저도 처음부터 모듈식으로 기능을 뚝딱뚝딱 만들 수 있었던건 아닙니다. 어떤걸 분리해서 어떻게 합칠지 정말 며칠씩 고민하기도 했고, 지금도 때때로 모듈식 구조를 만들기 위해서 짧게는 몇 시간, 길게는 하루, 이틀 정도 생각할 때가 있답니다. 처음이시니 모듈식 구조를 만드는데 시간이 오래 걸리실 수도 있지만, 투자할 가치가 있는 시간이니 너무 조급해하지말고 천천히 설계를 해보세요. 명심하셔야할 것은 때려박는 식의 구현은 미래를 팔아 현재를 사는 것이니 "생각하기 힘들고 시간 아까운데 그냥 때려박아서 구현할까?"라는 유혹에 빠지시면 안됩니다. '이번만'이 '다음'이 되고 '앞으로'가 되니까요.
수강평 6
∙
평균 평점 5.0
수강평 8
∙
평균 평점 5.0
지식공유자님의 다른 강의를 만나보세요!
같은 분야의 다른 강의를 만나보세요!
₩36,300