강의

멘토링

커뮤니티

BEST
Game Dev

/

Game Programming

[ユニティレベルアップ!] モジュール式で開発するクエスト&実績システム

様々なゲームに適用できる「クエストシステム」と開発の生産性を高めるための「モジュール式プログラミング」を学ぶ講義です。

  • Developer G
스킬 업
내공을 쌓아요
Unity

学習した受講者のレビュー

受講後に得られること

  • 組み立てて希望のクエストを作成・管理する【クエストシステム】

  • 機能を分割して組み立ててオブジェクトを構成する[モジュラープログラミング]

  • Update関数に依存しないイベントベースの[イベント主導プログラミング]

モジュラープログラミング👨‍💻
ゲーム開発レベル、ワンステップアップグレード!

ゲーム、正しく作る
あなたのために! 🕹️

こんにちは、皆さん。 Developer Gです。

クエストシステムはないゲームがないほどゲームに必須に入るシステムです。だからユニティのアセットストア、アンリアルエンジンのマーケットプレイスでよく売れるアセットの一つです。

クエストシステムはさまざまなゲームに適用できるように体系的で汎用的にする必要がありますが、このためにはモジュール式開発が不可欠です。しかし、インターネットで簡単に閲覧できるYouTube講義を見てもモジュール式で開発する場合は一般的ではなく、 if文とswitch文を利用して打ち破るように実装することが多いです。

言い換えれば、そのような方法では何かうまく作ることはできません。

モジュラープログラミングが重要な理由

✅個々のクラスが軽くなります。
✅修正とデバッグが容易になります。

その結果、開発の生産性を向上させることができます!
(拡張性、再利用性▲)

この講義では📖

クエスト
システム

モジュラー
プログラミング

イベント主導
プログラミング

あなたが「何か」をうまく作成できるように、体系的で汎用的なクエストシステムをモジュール式プログラミングを通じて開発する方法をお知らせします。

この講義を通じて、初心者のプログラマーで体系的な独自のシステムを開発できるプログラマーにさらに一歩進んでください。


こんなことができますよ! ✨

Step 1

さまざまな目標と報酬を持つモジュラークエスト
クエストを制御するクエストシステムを作成します。

Step 2

作成したシステムを例に適用して拡張します。

ボーナス、フル映像字幕提供! 📚

講義で実装する機能
簡単かつ正確に理解できるように
授業映像ごとに字幕を一緒に提供します。


気になる内容
今確認してください💬

Q. C#に関する知識はどのくらい必要ですか?

C#の基本的な文法を勉強した状態でなければなりません。 Linq、Event、Collectionなど、C#の全体的な基本文法を使い果たしますが、別に文法の説明はしないので、C#をよく知らない、または部分的な知識しかない場合、スムーズに追いつくのは難しいかもしれません。

ただ、ゲーム開発をするには文法は当然知っておくべき部分であり、他人が使わない特別な文法を使うわけではないので、C#についての部分的な知識だけがあっても、別に文法を探して勉強することができる方は十分に従うことができます。

Q. Unityの知識はどのくらい必要ですか?

コード作成によるシステム開発が主な内容なので、初級レベルの Unity 知識と ScriptableObject についての知識だけが必要です。

Q. 授業内容をどのレベルまで扱いますか?

存在するすべてのゲームに対応するクエストシステムを作成するには多くのことを考慮してシステムを開発しなければならないため、時間と難易度関係上クエストシステムの普遍的必須機能だけを実装します。しかし、サンプルゲームに私たちが作成したシステムを適用して拡張してみるので、受講生の皆さんは自分のゲームにシステムを適用し、必要に応じて機能を追加、拡張する方法を学びます。

Q. モジュラープログラミングでは何がいいですか?

統計によると、クラスのコードが300行を超えると、バグが発生する確率が急激に上がるという。ゲームはプログラムの規模がかなり大きく、修正と拡張が非常に頻繁に行われて必然的にコードが複雑になるしかないのですが、コードを適切に分割できない場合は、開発を正しく完了する前にバグに疲れて開発を放棄したり、開発を完了してもバグだらけの未完成ゲームが作られます。

そのため、あなたがきちんとしたゲームを開発するためには、コードをモジュール式で書く方法を知る必要があります。

Q. 非専攻者も聞ける講義ですか?

システムを作るからといって難しく聞こえるかもしれませんが、システムというのはどのように構成するのか悩む過程が難しく、実装が難しいものではありません。まだプログラマ的な考え方が取られていない非専攻者は、私と一緒にシステムを開発し、機能の実装に急速に意識の流れでコードを書くのではなく、機能を設計し、体系的にコードを書く方法を学びます。

📢受講前に確認してください!

  • このレッスンで使用したUnityエンジンのバージョンは2021.2.0f1です。スクリプトの作成が主な内容である講義なので、エンジンバージョンに拘束されません。 (Unity 6に適用可能)

こんな方に
おすすめです

学習対象は
誰でしょう?

  • プログラミングのスキルを一歩高めたい【ルーキープログラマー】

  • ifステートメントとswitchステートメントに依存する打ち勝つ式のコーディングではなく、体系的な構造の[モジュラープログラミング]を勉強したい人

  • 再利用可能な「体系的システム」を開発したいのですが、

  • 自分だけの「クエストシステム」を作ってみたい方

前提知識、
必要でしょうか?

  • C#

  • Unity

こんにちは
です。

1,080

受講生

71

受講レビュー

164

回答

4.7

講座評価

3

講座

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

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

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

カリキュラム

全体

19件 ∙ (5時間 48分)

講座資料(こうぎしりょう):

授業資料
講座掲載日: 
最終更新日: 

受講レビュー

全体

52件

4.8

52件の受講レビュー

  • mips777님의 프로필 이미지
    mips777

    受講レビュー 6

    平均評価 5.0

    5

    63% 受講後に作成

    In coding, analysis is important first, and it is great to explain Quests and Tasks separately.

    • developerg
      知識共有者

      Thank you for taking the class! One of the most important things in development is to know for sure what I need to make. So I always document what elements I need to make before development, and while developing, I organize things I need to think about and additional elements while working.

  • zlffj04890545님의 프로필 이미지
    zlffj04890545

    受講レビュー 3

    平均評価 5.0

    5

    47% 受講後に作成

    This is a really good lecture. I've been watching too many lectures on YouTube that are roughly followed, so I've been using Unity for a few years now, but I feel like my skills have stagnated a lot. When I heard that Scriptable Objects are just for storing data, I thought I could just use the serialization class, so I didn't use it. I was surprised that I could use it for modularization like this, and I'm going to listen to it as much as I can during this holiday to get a lot of inspiration. ㅎㅎㅎㅎ If you film the next lecture, it would be even more helpful!! Thank you.

    • developerg
      知識共有者

      Thank you for taking the course! ScriptableObject is a convenient feature that can be used in a variety of places and in a variety of ways, such as systems, tools, and containers, but it is one of the unfortunate features that we do not learn how to use during the learning phase. Now, the use has been reduced somewhat due to the addition of the unfinished polymorphic serialization feature called SerializeReference, but there are still many irreplaceable uses, so I am glad that you have learned about the use of ScriptableObject through this course. I will come back with a better course that will satisfy you. Thank you!

  • gimhyohwan9607037님의 프로필 이미지
    gimhyohwan9607037

    受講レビュー 2

    平均評価 5.0

    5

    100% 受講後に作成

    At first, I thought, "Is it really that much of a problem to add functions using switches?", but when I saw that the code was simple without a single switch because it was made modularly, I thought, "That's the problem;;;" This was a lecture that made it clear. I'm not sure if I can write code modularly without using switches like the instructor, but I'll practice hard as the instructor said. Thank you for the great lecture :D

    • developerg
      知識共有者

      I think it was worth making the lecture since your thoughts have changed that much. I wasn't able to make functions in a modular way from the beginning. I spent days thinking about what to separate and how to combine them, and even now, sometimes I think about making a modular structure for a few hours at the shortest and a day or two at the longest. Since it's your first time, it may take a long time to make a modular structure, but it's worth investing time, so don't be too impatient and take your time designing. One thing to keep in mind is that a slapdash implementation is selling the future to buy the present, so don't be tempted to think, "It's hard to think about and it's a waste of time, so should I just slap it and implement it?" Because 'this time' becomes 'next time' and 'in the future'.

  • lshzang06222813님의 프로필 이미지
    lshzang06222813

    受講レビュー 8

    平均評価 5.0

    5

    100% 受講後に作成

    If it's a game, you do content updates or balance patches, and I think easy and stable maintenance is important at that time. I think it was a good lecture that taught me about that structure, and I felt like I met a good teacher because the questions were answered quickly and seriously. I hope you make more modular series, and even if it's not modular, I hope you make a lot of good content!

    • stellarest1356님의 프로필 이미지
      stellarest1356

      受講レビュー 6

      平均評価 5.0

      5

      100% 受講後に作成

      I really like the lecture. If you have the chance in the future, please give me an inventory lecture too!!

      ¥4,574

      Developer Gの他の講座

      知識共有者の他の講座を見てみましょう!

      似ている講座

      同じ分野の他の講座を見てみましょう!