Unityチーム開発の基本手順:1週間で完成させる「探す」プロジェクト
残り2か月を切った段階で、総まとめとなるチーム開発課題を実施します。今回のテーマは「探す」。各チームが独自のアイデアを形にし、1週間で企画から発表までをやり切る短期開発を体験します。本記事では、そのための開発手順とGitHub連携の基本フローを紹介します。Unity初心者でもチーム開発をスムーズに進められるよう、GitHub Desktopを中心に構成しました。
1. チーム開発の目的
この課題では、以下の3点をゴールとしています。
- Unityで学んだ要素を総合的に使えるようにする
- チームでの開発フロー(GitHub運用)を体験する
- 企画・設計・実装・発表の流れを一気に経験する
短期間でも、チームで「決めて、作って、見せる」流れを実践することで、現場で必要とされる協調性やタスク管理力を養う狙いがあります。
2. 開発テーマ:「探す」
共通テーマは「探す」。
内容は各チームが自由に考えます。
- 宝探しアクション
- 落とし物を探すアドベンチャー
- 手がかりを集める推理ゲーム
- 光や音を頼りに探す探索ゲーム
など、ジャンルや方向性は問いません。
「探す」という体験をどのように表現するかが、企画のポイントになります。
3. チーム構成と役割
1チーム3〜4名で構成し、以下のような分担を基本とします。
役割 | 主な担当 | 使用スキル |
---|---|---|
プログラマー | プレイヤー操作、探索ロジック | C#, Collider, Event制御 |
デザイナー / UI担当 | 背景、UI、エフェクト | Canvas, Animator, Image |
ディレクター | コンセプト、進行管理、発表準備 | 企画・構成 |
サウンド担当 | 効果音・BGMの選定と実装 | AudioSource, Mixer |
4. 開発スケジュール(1週間)
日 | 目標 | 成果物 |
---|---|---|
1日目 | チーム結成・企画書作成・Git初期化 | README.mdに企画書完成 |
2日目 | プロトタイプ作成(操作・探索の基礎) | プレイヤー操作と探索判定 |
3日目 | UI・探索対象の追加 | 画面構成確定 |
4日目 | ステージ・演出・サウンド統合 | 初期プレイテスト |
5日目 | 中間発表・改善 | 改良版動作確認 |
6日目 | デバッグ・最終調整 | 完成版 |
7日目 | 発表会 | プレゼン+作品公開 |
5. GitHubを使ったチーム開発手順
短期間でも安全に協働できるよう、GitHub Desktopを使用します。コマンド操作不要で、視覚的に管理できるのが特徴です。
(1)リーダーの作業
- Unityで新規プロジェクトを作成
- プロジェクト名:例)SearchTeamA
- テンプレート:3D(URP)
- GitHub Desktopにプロジェクトをドラッグ&ドロップ
- 自動でリポジトリが初期化されます。
- GitHubにPush(公開)
- 「Publish repository」をクリック。
- Collaborators(共同編集者)を追加
- GitHub → Settings → Collaborators
- チームメンバー全員を追加。
- README.mdを作成
- 下記テンプレートを貼り付けて、企画書を記入。
(2)メンバーの作業
- GitHub Desktopで「Clone Repository」
- リーダーのリポジトリを選択してクローン。
- または、GitHubで、クローン
- Unityで開く
- Assets/Scenes を確認して開発開始。
- 作業が終わったらコミット&プッシュ
- 例:Add player movement script
- 作業前に必ずPull(最新版を取得)
- 「Fetch origin → Pull」をクリック。
(3)運用ルール
- 1日1回は必ずコミット&プッシュ
- 同じシーンを同時に編集しない
- 作業ブランチを分けるときは名前を明示(例:feature/ui)
- README.mdを進捗記録として毎日更新
■ Gitでコミットは、なぜ「1日1回更新」はリスクになるのか
リスク | 説明 |
---|---|
① 作業差分が大きくなりすぎる | 丸1日分を1コミットにすると、変更量が膨大になり、誰が何を変えたか追えない。 |
② コンフリクト発生時の原因追跡が困難 | 1日分の修正が重なった状態で他メンバーとマージすると、解決が複雑化。 |
③ リーダーが異常を検知しづらい | 途中で破損やミスがあっても、翌日まで気づけない。 |
④ プッシュ忘れ=1日分の消失 | PCトラブルやクラッシュ時に、作業のバックアップが失われる。 |
■ おすすめの更新頻度
操作 | タイミング | 理由 |
---|---|---|
コミット(Commit) | 作業単位が終わるごと(1〜2時間に1回) | 小さく履歴を残すことで、いつでも安全に戻せる。 |
プッシュ(Push) | 1〜2コミットごと、または作業終了時 | 他メンバーがすぐに最新版を取得できる。 |
プル(Pull) | 作業開始前・昼休憩後・作業再開時 | 他メンバーの変更を反映してから着手する。 |
■ 具体的な運用ルール案(職業訓練校向け)
1. 毎朝・作業前
- 「Pull」してから作業開始
- GitHub Desktop → Fetch origin → Pull
- 最新の状態を確認してからUnityを起動。
2. 作業中(1〜2時間に1回)
- 小さな単位でコミット
- 例)Add player movement, Fix camera follow, Update UI layout
- Unityを閉じる前に「Commit and Push」まで完了。
3. 昼休み・終業前
- Pushして全員の変更を同期
- これにより、夜間・翌日の作業が安全に始められる。
4. シーンファイルの扱い
- シーンを複数人で編集しない。
- どうしても同じシーンを触る場合はサブシーン分割かブランチ分けを徹底。
- 例)feature/ui-scene、feature/main-scene
■ 教育的メリット
学習効果 | 内容 |
---|---|
現場で通用するGit運用を体験できる | 「小さいコミット」「頻繁なプッシュ」が自然に身につく。 |
チーム全体で安全な進行が可能 | コンフリクトが減り、デバッグに集中できる。 |
履歴から問題を追える | トラブル発生時の原因分析が容易になる。 |
■ まとめ
- 「1日1回更新」は最低限の安全策にすぎません。
- 実際の開発では、「1〜2時間に1回コミット、1日2〜3回プッシュ」が標準です。
- この粒度で履歴を残すことで、トラブル対応力と実務感覚が大きく向上します。
6. チームREADMEテンプレート
各チームはリポジトリのルートに README.md を作成し、以下のテンプレートをベースに企画・進捗を記入します。
Unity チーム開発:チーム企画書テンプレート(完全版)
以下のテンプレートは、1週間で進めるUnityチーム開発(テーマ:「探す」)用です。各チームは、この内容を README.md に貼り付けて使用します。
※毎日更新し、進捗・担当・成果を明確に記録します。
# Unity チーム開発課題「探す」
**7日間開発プロジェクト — チーム用 README テンプレート**
指導講師:小西秀明(職業訓練校 Unity講座)
---
## 目次
- [チーム情報](#team-info)
- [メンバーと役割](#members-and-roles)
- [プロジェクト概要](#project-overview)
- [使用予定のUnity機能](#unity-features)
- [進行スケジュール(目安)](#schedule)
- [進捗メモ](#progress-notes)
- [開発ルール](#development-rules)
- [発表内容(予定)](#presentation-plan)
---
## チーム情報 <a id="team-info"></a>
| 項目 | 内容 |
|------|------|
| **チーム名** | 例:Team C - 光を探せ! |
| **チームリーダー** | 例:野上 |
| **メンバー** | 例:野上・小上・佐々上・稲上 |
| **リポジトリ名** | 例:`team-c-search` |
| **作成日** | YYYY/MM/DD |
---
## メンバーと役割 <a id="members-and-roles"></a>
| 役割 | 担当 | 主な内容 |
|------|------|----------|
| リーダー・プログラマー | 〇〇 | 探索ロジック実装、Git運用、進行管理 |
| ディレクター / UI・演出 | 〇〇 | 企画構成、UI設計、演出調整 |
| デザイナー | 〇〇 | ステージ構成、背景デザイン、照明設定 |
| QA / サポート | 〇〇 | 動作テスト、README更新、プレハブ管理 |
> ※メンバーが3人の場合は、兼任を明記してください。
> (例:プログラマー兼UI担当 など)
---
## プロジェクト概要 <a id="project-overview"></a>
| 項目 | 内容 |
|------|------|
| **ゲームタイトル** | 例:光の手がかり |
| **一言で説明すると** | 例:音と光を頼りにアイテムを探す3D探索ゲーム |
| **ゲームの目的** | 例:時間内に隠された宝石を見つけ出す。 |
| **プレイヤー操作** | 例:WASDで移動、スペースで調べる |
| **勝利条件** | 例:制限時間内に全アイテム発見 |
| **失敗条件** | 例:時間切れ・誤探索でポイント減少 |
| **特徴・工夫点** | 例:光・音・ヒント表示を組み合わせた誘導演出 |
---
## 使用予定のUnity機能 <a id="unity-features"></a>
☑ = 使用予定(下記チェックボックスに `[x]` を入れる)
> 使用予定の機能は `[ ]` を `[x]` に変更してください。
> 例:
> `- [x] PlayerController(移動・入力)` → 使用する機能
> `- [ ] NavMesh / AI` → 今回は使用しない機能
- [ ] PlayerController(移動・入力)
- [ ] Trigger / Collider
- [ ] UI(Canvas, Button, TextMeshPro)
- [ ] ScriptableObject / JSONデータ
- [ ] アニメーション / DOTween
- [ ] サウンド(BGM・SE)
- [ ] NavMesh / AI
- [ ] Timeline / Cinemachine
- [ ] その他( )
---
## 進行スケジュール(目安) <a id="schedule"></a>
| 日 | 内容 | 主な成果物 |
|----|------|------------|
| 1日目 | チーム結成・企画書作成・Git初期化 | README.md完成 |
| 2日目 | プロトタイプ実装開始 | プレイヤー移動・探索判定 |
| 3日目 | UI・探索対象の追加 | 画面構成確定 |
| 4日目 | ステージ・演出・サウンド統合 | 初期プレイテスト |
| 5日目 | 中間発表・改善 | 改良版動作確認 |
| 6日目 | デバッグ・最終調整 | 完成版 |
| 7日目 | 発表会 | プレゼン+作品公開 |
---
## 進捗メモ <a id="progress-notes"></a>
| 日付 | 作業内容 | 担当 | 備考 |
|------|-----------|------|------|
| 10/○ | プロトタイプ作成開始 | 野上 | プレイヤー操作OK |
| 10/○ | 探索ロジック追加 | 小上 | 当たり判定テスト中 |
| 10/○ | UI仮組み | 佐々上 | Canvas設計 |
| ... | ... | ... | ... |
> ※ 毎日、各メンバーが更新してください。
> GitHubのコミット履歴に残る形で進捗を記録します。
---
## 開発ルール <a id="development-rules"></a>
- **Git運用**
- 1〜2時間ごとにCommit
- 1日2〜3回Push
- 作業前に必ず「Pull」して最新を取得
- コンフリクトが起きた場合はリーダーが調整
- **Unityプロジェクト設定**
- Unity 6(URP)を使用
- 各自、同バージョンを統一
- 不要アセットは追加しない(軽量管理)
- **フォルダ構成推奨**
```
Assets/
├─ Scripts/
├─ Prefabs/
├─ Scenes/
├─ UI/
└─ Audio/
```
---
## 発表内容(予定) <a id="presentation-plan"></a>
| 項目 | 内容 |
|------|------|
| **タイトル** | (例)光の手がかり |
| **ゲーム紹介** | (例)音・光・時間を頼りに宝を探す探索アクション |
| **アピールポイント** | (例)演出と探索を融合した独自のUI設計 |
| **担当箇所で頑張った点** | (例)DOTweenを活用した演出とUIの統一感 |
| **発表担当** | (例)リーダーが操作、全員でコメント補足 |
---
> **目的**
> このREADMEは「開発ドキュメント」としてチーム全員が更新することを目的としています。
> 完成よりも「考え方・工夫・チーム連携の過程」を重視してください。
---
© 2025 職業訓練校 Unity講座(講師:小西秀明)
使用方法のポイント
- GitHubリポジトリのルートに README.md を作成し、上記内容をコピーして保存。
- 1日ごとに更新して、進捗・発見・変更点を明記。
- 発表時にはこのREADMEがプレゼン資料にもなります。
- .gitignore はUnity公式テンプレートを使用してください。
7. 成果発表と振り返り
最終日には、各チームが実機デモまたは動画で発表を行います。
内容は以下の4点を軸にまとめます。
- 作品タイトルとコンセプト
- 「探す」テーマの工夫
- 各自の担当と苦労した点
- 今後の改善・発展アイデア
発表後は個人で「理解が深まった技術」「次に活かしたいこと」を整理し、自己評価として提出します。
8. 教育的意図とねらい
このテンプレートは、「チーム全員が同じフォーマットで進捗を共有できる」ことを目的としています。
特に、職業訓練校や短期集中講座では、以下のような効果があります。
目的 | 効果 |
---|---|
ドキュメント化の習慣付け | 自分の作業を文章で説明する力が身につく。 |
GitHub管理の練習 | 現場で使うバージョン管理フローを体験できる。 |
チーム全体の見える化 | 講師・メンバーが進捗を確認しやすくなる。 |
発表資料への転用 | そのままプレゼンやポートフォリオに利用できる。 |
といった実務スキルを、短期間で体感できる構成になっています。
9. まとめ
1週間という短い期間でも、目的が明確であれば作品は完成します。「探す」というテーマは、技術力よりも発想と構成力が問われる内容です。完成度よりも、チームとしてどこまで形にできたか・学びを得たかを重視しましょう。
関連資料
- GitHub .gitignore テンプレート(参考)
- GitHub Desktop を使ったチーム開発(Soft-Rime記事)
- Unityでのコンフリクト事例
- Unity6におけるシーンファイルとGit管理ガイド
【補足】
この記事の内容は、実際の講義で使用したGitHubチーム運用ガイド+READMEテンプレートを基に構成しています。
学生・初学者でも再現可能な手順としてご活用ください。
ディスカッション
コメント一覧
まだ、コメントがありません