[유니티 레벨 업!] 모듈식으로 개발하는 아이템 시스템
Developer G
다양한 게임에 적용할 수 있는 [아이템 시스템]과 개발 생산성을 높여주는 [툴 제작], 구조적인 프로그래밍 방식인 [모듈식 프로그래밍]을 배우는 강의입니다.
中級以上
Unity, modules, 유니티6
様々なゲームに適用できる「クエストシステム」と開発の生産性を高めるための「モジュール式プログラミング」を学ぶ講義です。
組み立てて希望のクエストを作成・管理する【クエストシステム】
機能を分割して組み立ててオブジェクトを構成する[モジュラープログラミング]
Update関数に依存しないイベントベースの[イベント主導プログラミング]
モジュラープログラミング👨💻
ゲーム開発レベル、ワンステップアップグレード!
クエストシステムはないゲームがないほどゲームに必須に入るシステムです。だからユニティのアセットストア、アンリアルエンジンのマーケットプレイスでよく売れるアセットの一つです。
クエストシステムはさまざまなゲームに適用できるように体系的で汎用的にする必要がありますが、このためにはモジュール式開発が不可欠です。しかし、インターネットで簡単に閲覧できるYouTube講義を見てもモジュール式で開発する場合は一般的ではなく、 if文とswitch文を利用して打ち破るように実装することが多いです。
言い換えれば、そのような方法では何かうまく作ることはできません。
モジュラープログラミングが重要な理由
✅個々のクラスが軽くなります。
✅修正とデバッグが容易になります。
その結果、開発の生産性を向上させることができます!
(拡張性、再利用性▲)
クエスト
システム
モジュラー
プログラミング
イベント主導
プログラミング
あなたが「何か」をうまく作成できるように、体系的で汎用的なクエストシステムをモジュール式プログラミングを通じて開発する方法をお知らせします。
この講義を通じて、初心者のプログラマーで体系的な独自のシステムを開発できるプログラマーにさらに一歩進んでください。
Step 1
さまざまな目標と報酬を持つモジュラークエスト
クエストを制御するクエストシステムを作成します。
Step 2
作成したシステムを例に適用して拡張します。
講義で実装する機能
簡単かつ正確に理解できるように
授業映像ごとに字幕を一緒に提供します。
Q. C#に関する知識はどのくらい必要ですか?
C#の基本的な文法を勉強した状態でなければなりません。 Linq、Event、Collectionなど、C#の全体的な基本文法を使い果たしますが、別に文法の説明はしないので、C#をよく知らない、または部分的な知識しかない場合、スムーズに追いつくのは難しいかもしれません。
ただ、ゲーム開発をするには文法は当然知っておくべき部分であり、他人が使わない特別な文法を使うわけではないので、C#についての部分的な知識だけがあっても、別に文法を探して勉強することができる方は十分に従うことができます。
Q. Unityの知識はどのくらい必要ですか?
コード作成によるシステム開発が主な内容なので、初級レベルの Unity 知識と ScriptableObject についての知識だけが必要です。
Q. 授業内容をどのレベルまで扱いますか?
存在するすべてのゲームに対応するクエストシステムを作成するには多くのことを考慮してシステムを開発しなければならないため、時間と難易度関係上クエストシステムの普遍的必須機能だけを実装します。しかし、サンプルゲームに私たちが作成したシステムを適用して拡張してみるので、受講生の皆さんは自分のゲームにシステムを適用し、必要に応じて機能を追加、拡張する方法を学びます。
Q. モジュラープログラミングでは何がいいですか?
統計によると、クラスのコードが300行を超えると、バグが発生する確率が急激に上がるという。ゲームはプログラムの規模がかなり大きく、修正と拡張が非常に頻繁に行われて必然的にコードが複雑になるしかないのですが、コードを適切に分割できない場合は、開発を正しく完了する前にバグに疲れて開発を放棄したり、開発を完了してもバグだらけの未完成ゲームが作られます。
そのため、あなたがきちんとしたゲームを開発するためには、コードをモジュール式で書く方法を知る必要があります。
Q. 非専攻者も聞ける講義ですか?
システムを作るからといって難しく聞こえるかもしれませんが、システムというのはどのように構成するのか悩む過程が難しく、実装が難しいものではありません。まだプログラマ的な考え方が取られていない非専攻者は、私と一緒にシステムを開発し、機能の実装に急速に意識の流れでコードを書くのではなく、機能を設計し、体系的にコードを書く方法を学びます。
📢受講前に確認してください!
学習対象は
誰でしょう?
プログラミングのスキルを一歩高めたい【ルーキープログラマー】
ifステートメントとswitchステートメントに依存する打ち勝つ式のコーディングではなく、体系的な構造の[モジュラープログラミング]を勉強したい人
再利用可能な「体系的システム」を開発したいのですが、
自分だけの「クエストシステム」を作ってみたい方
前提知識、
必要でしょうか?
C#
Unity
1,013
受講生
65
受講レビュー
159
回答
4.8
講座評価
3
講座
안녕하세요, 게임을 사랑하고 개발을 사랑하는 게임 프로그래머 Developer G입니다.
저는 어떻게하면 깔끔하고 체계적인 코드를 작성할 수 있을지 항상 고민하는데요,
제 고민의 결과물들을 여러분들에게 아낌없이 가르쳐드리겠습니다!
全体
19件 ∙ (5時間 48分)
講座資料(こうぎしりょう):
1. 講義紹介
04:55
2. モジュラープログラミング
06:18
3. クエスト分析
03:48
4. 概要
14:56
5. タスクの実装
41:32
6. Questの実装
36:58
7. Achievementの実装
03:23
8. Quest Databaseの実装
08:40
9. Quest Systemの実装
26:02
全体
51件
4.8
51件の受講レビュー
受講レビュー 4
∙
平均評価 5.0
5
코딩에 있어서 먼저 분석이 중요하고 Quest와 Task를 따로 나눠서 생각하게 설명하는것이 너무 좋습니다.
수강해주셔서 감사합니다! 개발에 있어서 무엇보다 중요한 것 중 하나는 내가 무엇을 만들어야하는지 확실히 아는 것입니다. 그래서 저도 항상 개발에 앞서 만들어야하는 요소들이 어떤 것이 있는지 문서에 정리하고, 개발을 하면서도 중간 중간 생각해봐야할 것들, 추가적인 요소들을 정리하면서 작업을 합니다.
受講レビュー 3
∙
平均評価 5.0
5
진짜 좋은 강의입니다. 유튜브에서 대충 따라하는 식의 강의를 너무 많이 들어와서 유니티 만진지 이제 몇 년됐는데도 실력이 엄청 정체된 느낌이 많이 들었는데요, Scriptable Object를 그냥 데이터 저장용으로만 쓴다고 했을 때는 직렬화 클래스 그냥 쓰면 되는거 아닌가? 하면서 안썼었는데, 이런 식으로 모듈화하는 데 사용할 수 있다는 것에 놀랐고, 이번 연휴간 최대한 많이 들어서 많은 자극을 받으려고 합니다 ㅎㅎㅎㅎ 다음 강의도 찍어주시면 더 많이 도움이 될 것 같습니다!! 감사합니다.
수강해주셔서 감사합니다! ScriptableObject는 시스템이나 툴, 컨테이너 등 정말 다양한 곳, 다양한 방식으로 활용할 수 있는 편리한 기능인데 학습 단계에서 이를 활용할 수 있는 방법을 배우지 못하는 안타까운 기능 중 하나입니다. 지금은 SerializeReference라는 아직 미완성인 다형성 직렬화 기능이 추가되어 쓰임새가 좀 줄어들긴 했으나 아직도 대체 불가한 쓰임새가 많기 때문에 이 강의를 통해 ScriptableObject의 쓰임새에 대해 새로 알게되셨다니 기쁩니다. 더 만족하실 수 있는 좋은 내용의 강의로 다시 찾아뵙겠습니다, 감사합니다!
受講レビュー 2
∙
平均評価 5.0
5
처음에는 "switch를 사용해서 기능을 추가하는게 그렇게 문제인가?"라고 생각했는데, 모듈식으로 만들어서 switch 하나 없이 코드가 간결한거 보고 "문제구나;;;"라고 확실히 이해되는 강의였습니다. 제가 강사님처럼 switch를 안쓰고 모듈식으로 코드를 작성할 수 있을지 막막하지만, 강사님 말대로 열심히 연습해보겠습니다. 좋은 강의 감사합니다 :D
생각이 그렇게 바뀌셨다니 강의를 만든 보람이 있는 것 같습니다. 저도 처음부터 모듈식으로 기능을 뚝딱뚝딱 만들 수 있었던건 아닙니다. 어떤걸 분리해서 어떻게 합칠지 정말 며칠씩 고민하기도 했고, 지금도 때때로 모듈식 구조를 만들기 위해서 짧게는 몇 시간, 길게는 하루, 이틀 정도 생각할 때가 있답니다. 처음이시니 모듈식 구조를 만드는데 시간이 오래 걸리실 수도 있지만, 투자할 가치가 있는 시간이니 너무 조급해하지말고 천천히 설계를 해보세요. 명심하셔야할 것은 때려박는 식의 구현은 미래를 팔아 현재를 사는 것이니 "생각하기 힘들고 시간 아까운데 그냥 때려박아서 구현할까?"라는 유혹에 빠지시면 안됩니다. '이번만'이 '다음'이 되고 '앞으로'가 되니까요.
受講レビュー 8
∙
平均評価 5.0
受講レビュー 6
∙
平均評価 5.0
¥4,366
知識共有者の他の講座を見てみましょう!
同じ分野の他の講座を見てみましょう!