Thumbnail
BEST
게임 개발 게임 프로그래밍

[유니티 레벨 업!] 모듈식으로 개발하는 퀘스트&업적 시스템 대시보드

(4.8)
41개의 수강평 ∙  588명의 수강생

36,300원

지식공유자: Developer G
총 19개 수업 (5시간 48분)
수강기한: 
무제한
수료증: 발급
난이도: 
입문
-
초급
-
중급이상
지식공유자 답변이 제공되는 강의입니다
폴더에 추가 공유

초급자를 위해 준비한
[게임 프로그래밍] 강의입니다.

다양한 게임에 적용할 수 있는 [퀘스트 시스템]과 개발의 생산성을 높이기 위한 [모듈식 프로그래밍]을 배우는 강의입니다.

✍️
이런 걸
배워요!
조립하여 원하는 퀘스트를 만들고 관리하는 [퀘스트 시스템]
기능을 쪼개고 조립하여 객체를 구성하는 [모듈식 프로그래밍]
Update 함수에 의존하지 않는 이벤트 기반의 [이벤트 주도 프로그래밍]

모듈식 프로그래밍👨‍💻으로 
게임 개발 레벨, 한 단계 업그레이드! 

게임, 제대로 만들고픈 
당신을 위해! 🕹️

안녕하세요, 여러분. Developer G입니다.

퀘스트 시스템은 없는 게임이 없을 정도로 게임에 필수적으로 들어가는 시스템입니다. 그렇다보니 유니티의 에셋스토어, 언리얼 엔진의 마켓플레이스에서 잘 팔리는 에셋 중 하나이죠.

퀘스트 시스템은 다양한 게임에 적용할 수 있도록 체계적이고 범용적으로 만들 필요가 있는데, 이를 위해선 모듈식 개발이 필수적입니다. 하지만 인터넷에서 쉽게 찾아볼 수 있는 유튜브 강의를 봐도 모듈식으로 개발하는 경우는 흔치 않고, if문과 switch문을 이용해 때려박는 식으로 구현하는 경우가 많습니다.

단언컨대, 그런 식으로는 무엇 하나 잘 만들 수 없습니다.

모듈식 프로그래밍이 중요한 이유

✅ 개별 클래스가 가벼워집니다.
✅ 수정과 디버깅이 용이해집니다.

결과적으로, 개발 생산성을 높일 수 있습니다!
(확장성, 재사용성 ▲)

이 강의에서는 📖

퀘스트 
시스템 

모듈식 
프로그래밍 

이벤트 주도
프로그래밍 

여러분들이 '무언가'를 잘 만들 수 있도록 체계적이고 범용적인 퀘스트 시스템을 모듈식 프로그래밍을 통해 개발하는 방법을 알려드릴 것입니다.

이 강의를 통해 초보 프로그래머에서 체계적인 나만의 시스템을 개발할 수 있는 프로그래머로 한 단계 더 나아가시길 바랍니다.


이런 걸 할 수 있어요! ✨

Step 1

다양한 목표와 보상을 가진 모듈식 퀘스트
퀘스트를 제어하는 퀘스트 시스템을 만들어봅니다.

Step 2

만든 시스템을 예제에 적용하고 확장해봅니다.

보너스, 전체 영상 자막 제공! 📚

강의에서 구현하는 기능을 
쉽고 정확하게 이해할 수 있도록 
수업 영상마다 자막을 함께 제공합니다. 


궁금한 내용을 
지금 확인해보세요 💬

Q. C#에 대한 지식이 어느 정도 있어야 하나요?

C#의 기본적인 문법을 공부한 상태여야 합니다. Linq, Event, Collection 등 C#의 전반적인 기본 문법을 다 사용하지만 따로 문법에 대한 설명은 하지 않을 것이기 때문에 C#을 잘 모르거나 부분적인 지식만 있을 경우 원활히 따라오기 힘들 수 있습니다. 

다만 게임 개발을 하려면 문법은 당연히 알아야 하는 부분이고, 남들이 안쓰는 특별한 문법을 사용하는게 아니기 때문에 C#에 대한 부분적인 지식만 있으셔도 따로 문법을 찾아보며 공부하실 수 있으신 분들은 충분히 따라오실 수 있습니다.

Q. 유니티에 대한 지식이 어느 정도 있어야 하나요?

코드 작성을 통한 시스템 개발이 주 내용이기 때문에 초급 수준의 유니티 지식과 ScriptableObject에 대한 지식만 있으면 됩니다.

Q. 수업 내용을 어느 수준까지 다루나요?

존재하는 모든 게임에 대응하는 퀘스트 시스템을 만드려면 많은 것들을 고려하며 시스템을 개발해야 하기 때문에 시간과 난이도 관계상 퀘스트 시스템의 보편적 필수 기능만 구현할 것입니다. 하지만 예제 게임에 저희가 만든 시스템을 적용 및 확장해볼 것이기에 수강생 여러분들은 자신의 게임에 시스템을 적용하고 필요에 따라 기능을 추가, 확장하는 법을 배우게 될 것입니다.

Q. 모듈식 프로그래밍을 하면 뭐가 좋은가요?

통계에 따르면 클래스의 코드가 300줄이 넘어갈 경우 버그가 발생할 확률이 급격히 올라간다고 합니다. 게임은 프로그램의 규모가 상당히 크고 수정과 확장이 매우 빈번하게 이루어져 필연적으로 코드가 복잡해질 수 밖에 없는데, 코드를 적절히 분할하지 못한다면 개발을 제대로 완료하기도 전에 버그에 지쳐 개발을 포기하거나 개발을 완료해도 버그 투성이의 미완성 게임이 만들어질 것입니다.

그렇기에 여러분이 제대로 된 게임을 개발하기 위해서는 코드를 모듈식으로 작성하는 법을 알아야 합니다.

Q. 비전공자도 들을 수 있는 강의인가요?

시스템을 만든다고 하니 어렵게 들릴 수도 있지만, 시스템이란 것은 어떻게 구성할지 고민하는 과정이 어렵지 구현이 어려운 것이 아닙니다. 아직 프로그래머적 사고 방식이 잡히지 않은 비전공자분들은 저와 함께 시스템을 개발하며 기능 구현에 급급하여 의식의 흐름대로 코드를 작성하는 것이 아닌, 기능을 설계하고 체계적으로 코드를 작성하는 방법을 배우게 될 것입니다. 

📢 수강 전 확인해주세요!

  • 본 강의에서 사용한 유니티(Unity) 엔진 버전은 2021.2.0f1입니다.

이런 분들께 추천드려요!

🎓
학습 대상은
누구일까요?
프로그래밍 실력을 한 단계 더 높히고 싶은 [루키 프로그래머]
if문과 switch문에 의존하는 때려박는 식의 코딩이 아닌 체계적인 구조의 [모듈식 프로그래밍]을 공부하고 싶으신 분
재사용 가능한 [체계적 시스템]을 개발하고 싶은데 갈피를 못 잡겠는 분
나만의 [퀘스트 시스템]을 만들어보고 싶으신 분
📚
선수 지식,
필요할까요?
C#
유니티

안녕하세요
Developer G 입니다.
Developer G의 썸네일

안녕하세요, 게임을 사랑하고 개발을 사랑하는 게임 프로그래머 Developer G입니다.

저는 어떻게하면 깔끔하고 체계적인 코드를 작성할 수 있을지 항상 고민하는데요,

제 고민의 결과물들을 여러분들에게 아낌없이 가르쳐드리겠습니다!

커리큘럼 총 19 개 ˙ 5시간 48분의 수업
이 강의는 영상, 수업 노트, 첨부 파일이 제공됩니다. 미리보기를 통해 콘텐츠를 확인해보세요.
섹션 1. 퀘스트 시스템
개요 미리보기 14:56
Task 구현 41:32
Quest 구현 36:58
Achievement 구현 03:23
Quest Database 구현 08:40
Quest System 구현 26:02
Save와 Load(with JSON) 구현 24:29
섹션 2. 실전 적용
예제 3D FPS Kit 소개 미리보기 03:33
퀘스트 추적을 위한 Quest Tracker UI 제작 25:07
메인 퀘스트 제작 32:43
Task 목표 표시를 위한 Quest Target Marker 제작 27:42
서브 퀘스트 제작 24:47
Quest가 완료되었음을 알려주는 Quest Completion Notifier UI 제작 10:13
퀘스트 정보를 확인할 Quest View UI 제작 35:03
업적 정보를 확인할 Achievement View UI 제작 16:14
섹션 3. 마무리
완강을 축하드립니다 01:57
강의 게시일 : 2022년 01월 26일 (마지막 업데이트일 : 2024년 04월 16일)
수강평 총 41개
수강생분들이 직접 작성하신 수강평입니다.
4.8
41개의 수강평
5점
4점
3점
2점
1점
VIEW 추천 순 최신 순 높은 평점 순 낮은 평점 순 평점 순 높은 평점 순 낮은 평점 순
UniUni thumbnail
5
강의 너무 좋아요 나중에 기회가 되신다면 인벤토리 강의도 부탁드립니다 !!
2022-07-26
zlffj0489 thumbnail
5
진짜 좋은 강의입니다. 유튜브에서 대충 따라하는 식의 강의를 너무 많이 들어와서 유니티 만진지 이제 몇 년됐는데도 실력이 엄청 정체된 느낌이 많이 들었는데요, Scriptable Object를 그냥 데이터 저장용으로만 쓴다고 했을 때는 직렬화 클래스 그냥 쓰면 되는거 아닌가? 하면서 안썼었는데, 이런 식으로 모듈화하는 데 사용할 수 있다는 것에 놀랐고, 이번 연휴간 최대한 많이 들어서 많은 자극을 받으려고 합니다 ㅎㅎㅎㅎ 다음 강의도 찍어주시면 더 많이 도움이 될 것 같습니다!! 감사합니다.
2022-03-01
지식공유자 Developer G
수강해주셔서 감사합니다! ScriptableObject는 시스템이나 툴, 컨테이너 등 정말 다양한 곳, 다양한 방식으로 활용할 수 있는 편리한 기능인데 학습 단계에서 이를 활용할 수 있는 방법을 배우지 못하는 안타까운 기능 중 하나입니다. 지금은 SerializeReference라는 아직 미완성인 다형성 직렬화 기능이 추가되어 쓰임새가 좀 줄어들긴 했으나 아직도 대체 불가한 쓰임새가 많기 때문에 이 강의를 통해 ScriptableObject의 쓰임새에 대해 새로 알게되셨다니 기쁩니다. 더 만족하실 수 있는 좋은 내용의 강의로 다시 찾아뵙겠습니다, 감사합니다!
2022-03-02
이성현 thumbnail
4
이벤트 이용과 모듈식 개발의 과정을 잘 배웠습니다. 그 외 최신 C#문법도 몇 가지 획득했네요:D 아쉬운 점이 있다면, 초반에는 대부분의 내용을 자세히 설명하였으나 후반부부터는 섬세함이? 부족한 것 같았습니다. 후반에 작성되는 스크립트의 작동 방식이나 완성 후 디버그를 타고 코드 리뷰하는 부분이 있다면 보완이 될 것 같습니다.
2022-02-16
지식공유자 Developer G
수강과 피드백 감사합니다! 섬세함이 부족하다고 느끼신 부분은 죄송합니다. 섹션 2부터는 가이드 하는 느낌으로 만든다고 생각하다보니 안일해진 점이 있는 것 같습니다. 주신 피드백에 대해서는 메모 해두고 다음 강의에서 꼭 반영하도록 하겠습니다.
2022-02-16
정현철 thumbnail
5
코딩에 있어서 먼저 분석이 중요하고 Quest와 Task를 따로 나눠서 생각하게 설명하는것이 너무 좋습니다.
2022-03-06
지식공유자 Developer G
수강해주셔서 감사합니다! 개발에 있어서 무엇보다 중요한 것 중 하나는 내가 무엇을 만들어야하는지 확실히 아는 것입니다. 그래서 저도 항상 개발에 앞서 만들어야하는 요소들이 어떤 것이 있는지 문서에 정리하고, 개발을 하면서도 중간 중간 생각해봐야할 것들, 추가적인 요소들을 정리하면서 작업을 합니다.
2022-03-07
배고파 thumbnail
5
너무 좋은 강의고 도움이 많이 되었습니다. 생각할것도 많은 강의 입니다.단 막 유니티 입문하신 분들 보기에는 좀 난위도가 있습니다.
2022-02-14
지식공유자 Developer G
수강해주셔서 감사합니다! 질문 글에 올려주신 피드백도 감사하고 꼭 반영하도록 노력하겠습니다. 배우신 걸 바로 프로젝트에 적용한다고 하시니 굉장히 뿌듯하고 기분이 좋습니다. 응원해주신 것처럼 다음에 꼭 더 좋은 강의로 찾아뵙겠습니다!
2022-02-14