[Course]ゲームクリエイター,坂すたじお_사카스튜디오 Details

C#によるゲームデータの設計
Unityに依存しないpure C#でのゲームデータ設計を学びます。データとビューの分離やインターフェースの活用、DIによる初期化など、規模が大きくなっても整理された状態を保つための基礎を身につけます。

ゲームロジック単体で設計、開発していく手順
工場ゲームの基礎となるアイテム、ブロック、ベルトコンベアを順に実装します。データ定義から搬送ロジックまで、設計の考え方を反映しながらコードに落とし込む流れを体験できます。

プレイヤー操作とUIの構築
プレイヤーキャラクターの作成、ブロックの設置・削除操作、インベントリUIの実装を行います。ゲームロジックとUI表示をどう連携させるか、データとビューの接続方法を実践的に学びます。

機械・電力・採掘の生産システム
入力→加工→出力の処理を持つ機械、レシピシステム、発電機・電柱による電力ネットワーク、採掘機とワールド資源を実装します。複数のシステムが連動して動く仕組みの作り方を習得します。

セーブ・ロードとゲームの仕上げ
ゲーム状態をファイルに保存・復元する仕組みを構築した後、全システムを統合して実際に遊びながらバランスを調整します。「動くコード」を「遊べるゲーム」に仕上げるまでの工程を理解します。

AIコーディングエージェントを活用した開発効率化
AIコーディング支援ツールの種類・選び方から、実際の設定方法やコンテキスト管理の仕方、MCPツールによるUnityとの連携まで扱います。AIを開発のパートナーとして使いこなし、開発効率を高める方法を解説します。
※上記の画像は講座に対する理解を深めるためのイメージです。
※講座動画の公開時期や、カリキュラムのイメージ・内容などは予告なく変更になる場合がございます。予めご了承ください。
- Section 01
設計思想とアーキテクチャ(座学)
01.イントロダクション- 講師プロフィール紹介 - 本講座の目標、ゴール
02.データ駆動設計とpure C#の活用- ゲームデータをUnityに依存しないpure C#で設計する考え方 - MonoBehaviourに依存しないメリット(テスト容易性・再利用性) - データとビューの分離
03.抽象化とコンポーネント指向- 抽象化の概念(インターフェース・抽象クラス) - コンポーネント指向設計の考え方 - ファクトリーパターンによるオブジェクト生成
04.イベント駆動開発- イベント駆動のアーキテクチャ - イベントを活用した疎結合な設計
05.テストコードとリフレクション- テストコードの書き方と必要性 - リフレクションの仕組み - リフレクションを使ったprivateメソッド・privateプロパティのテスト手法
06.独自ゲームアップデートの考え方- Unity標準のUpdateに頼らない独自ゲームアップデートの設計思想 - 独自アップデートシステムの実装
07.DIと初期化パイプライン- DI(Dependency Injection)の概念 - コンストラクタインジェクション - DIコンテナの導入 - 初期化パイプラインの設計
08.個人的なコード設計の考え方- 実際の開発で培った設計の好み・判断基準 - 講座全体を通じた設計方針の総括
- Section 02
基本を作る(コーディング)
09.アイテムを作る- アイテムのデータ定義 - アイテムIDとマスターデータ設計 - アイテムの加算、減算処理 - テストの実装
10.ブロックを定義する- ブロックの基本概念とデータ構造 - ブロックの配置ロジック - テストの実装
11.チェストを作る- チェストの定義 - アイテム格納・取り出しの仕組み - テストの実装
12.ベルトコンベアを作る- ベルトコンベアの定義 - アイテム搬送ロジックの実装 - テストの実装
13.世界を作る- ワールドのデータ構造 - ブロックの配置管理
- Section 03
操作キャラを作る
14.インベントリを定義する- プレイヤーインベントリのデータ設計 - テストの実装
15.プレイヤーを作る- プレイヤーキャラクターの作成 - 操作入力とワールドとのインタラクション
16.ブロックの設置・削除操作- ブロックの設置操作の実装 - ブロックの削除操作の実装 - ワールドとの連携
17.インベントリUIとブロックUIを作る- インベントリ画面の実装 - ブロック操作UIの実装 - データとUIの連携
18.デバッグモードを作る- 開発を効率化するデバッグ機能の実装 - テストプレイ環境の整備
19.実際につなげて動かしてみる- これまで作った要素(8~17講)を統合する - アイテム・ブロック・ベルトコンベア・チェストの連携確認 - 通しプレイでの動作確認と調整
- Section 04
機械を作る
20.機械のインベントリと処理システムを定義する- 機械専用インベントリの設計 - 入力→加工→出力の処理フロー - テストの実装
21.機械レシピを定義する- レシピデータの設計 - レシピに基づく加工処理の実装 - テストの実装
22.機械のUIを作る・実際に機械を使ってみる- 機械操作画面の実装 - レシピ選択・進捗表示 - 実際に機械を配置して生産ラインを動かす
- Section 05
電気の概念を作る
23.発電機を定義する- 発電機のデータ定義 - 発電機のアイテム消費システム(燃料消費→発電) - テストの実装
24.電柱と電力ネットワークを定義する- 電柱の配置ロジック - 電力ネットワークのグラフ構造設計 - テストの実装
25.電力の送受信を実装する・実際に電気ネットワークを使ってみる- 電力を送る処理 - 機械が電力を消費する処理 - 電力不足時の挙動 - テストの実装 - 発電機→電柱→機械の電力供給を実際に動かして確認
- Section 06
採掘機を作る
26.採掘機を定義する- 採掘機のデータ定義と動作ロジック - 資源の自動採掘処理 - テストの実装
27.ワールドの資源を定義する- ワールドへの資源配置 - 採掘機とワールドの連携
28.今まで作ったもので遊んで見る、バランス調整する- これまで実装した要素を通して遊んでみる - ゲームバランスの確認と調整 - パラメータチューニングの実践
- Section 07
保存システム
29.ゲームデータを収集する- ブロック・ワールド・プレイヤーのデータ収集 - シリアライズ可能なデータ構造への変換
30.データをファイルに書き出す- 保存フォーマットの設計 - ファイルへの書き出し処理
31.データをロードする仕組みを作る- ファイルからの読み込み - ゲーム状態の復元処理
- Section 08
AIコーディングエージェントを活用した効率的な開発
32.AIコーディングエージェントの種類と選び方- AIコーディング支援ツールの種類、傾向、料金体系 - 数あるAIコーディング支援ツールの中から何を選ぶべきか - AIコーディング支援ツールとの向き合い方 - AIとセキュリティ
33.AI活用による開発効率化- AIツールの設定方法 - 各種コンテキスト管理の仕方 - MCPツールによるUnityとの連携
当講座は、以下のツールを使用します。
[メインツール]
- Unity 6000.3.8f1
- C#開発環境:Rider
(Visual Sutdio、VS Codeでも代用可能です)
※プログラムの注意事項必要に応じて作成








