lvncerpedia

Unity ROADMAP

UEとUnityの用語対応

UEUnity
LevelScene
ActorGameObject
ComponentComponent(MonoBehaviourなど)
Blueprint ClassPrefab + C#スクリプト
Content BrowserProject ウィンドウ
World OutlinerHierarchy
Details PanelInspector
Event TickUpdate()
BeginPlayAwake() / Start()
Event Dispatcherevent / Action / UnityEvent
DataAssetScriptableObject
Enhanced InputInput System
NiagaraParticle System / VFX Graph
MaterialMaterial + Shader Graph
Animation BlueprintAnimator Controller
Behavior TreeUnity Behavior(パッケージ)/ 自作FSM
SequencerTimeline
FabAsset Store
World PartitionAddressables + シーン分割

全体像

flowchart LR
    P0[Phase0 準備] --> P1[Phase1 C#基礎] --> P2[Phase2 設計] --> P3[Phase3 物理・UI・音]
    P3 --> W1((作品1))
    W1 --> P4[Phase4 見た目]
    W1 --> P5[Phase5 アニメ]
    P4 --> P6[Phase6 AI]
    P5 --> P6
    P6 --> W2((作品2))
    W2 --> P7[Phase7 上級C#・DOTS] --> P8[Phase8 最適化・製品化] --> W3((作品3))

Phase 0:準備

分野小項目UE対応
辞書Unity基本用語集(UE同義語つき)用語集
概要Unityとは / ゲーム開発の流れ / 調べ方(公式Manual・Scripting API・フォーラム)とAIの使い方概要
環境Unity Hub / エディタのインストール / ◆テンプレート選択(3D (URP) / 2D (URP)) / 再生と停止 / エディタ言語環境
エディタ基礎Scene・GameObject・Component / ウィンドウ名(Hierarchy・Inspector・Project・Scene・Game・Console)/ レイアウト操作エディタ基礎
操作シーンビューのカメラ / Transform(移動・回転・拡大)/ スナップ・Pivot / Local・Global操作
アセットMesh / Sprite / Material / Texture の基本 / ◆.metaファイルの役割アセット
PrefabPrefab / Nested Prefab / Prefab VariantBPクラスの一部
素材入手Asset Storeの使い方・ライセンス / Package ManagerFab
実践簡単な部屋をプリミティブとアセットで作るカフェ部屋
開発環境◆IDE構築(Rider / Visual Studio / VS Code)+ Unity連携―
バージョン管理Git + Git LFS(Library Temp Logs UserSettings obj Builds を除外 / .metaは必ずコミット / Asset Serializationは Force Text)Git
便利技ショートカット一覧 / ◆Undo・Play中の変更が戻る問題ショートカット

Phase 1:C#基礎

分野小項目UE対応
最初の一歩◆C#スクリプトを作ってアタッチ / Debug.Log / MonoBehaviour文字表示
ライフサイクルAwake / Start / Update / FixedUpdate / LateUpdate / OnEnable / OnDisable / OnDestroy / Time.deltaTimeBeginPlay・Tick
変数型(int / float / bool / string / Vector3)/ publicと[SerializeField] / Inspectorで調整 / 命名規則変数
制御構文if / switch / for / foreach / whileBranch・ループ
関数メソッド / 引数・戻り値 / 可視性関数
参照GetComponent / Inspectorでの参照 / Find系(非推奨の理由)/ TryGetComponent参照・Cast
型変換as / is / パターンマッチCastTo
アクタ実践移動・回転・Instantiate(スポーン)/ Destroy移動・回転・スポーン
データ構造配列 / List<T> / Dictionary<K,V> / HashSet<T>Array・Map・Set
型定義struct / enum / classの違い(値型・参照型)構造体・Enum
クラス設計クラス / 継承 / abstract / virtual / override / interfaceクラス継承・BP Interface
イベントevent / Action / UnityEventEvent Dispatcher
時間制御Coroutine(WaitForSeconds)/ InvokeTimeline・Delay
補間Lerp / Mathf / AnimationCurveTimeline
デバッグDebug.Log / Debug.DrawRay / ブレークポイント(IDEアタッチ)/ Console / GizmosPrint String・BP
エラーコンパイルエラーの読み方 / NullReferenceExceptionの直し方コンパイルエラー
実践ライトON/OFF / 往復移動ステージ / シューティング(的の移動→生成→スコア→タイマー)実践群

Phase 2:ゲーム設計

分野小項目UE対応
構成の考え方◆GameObject+Component指向(継承より合成)コンポーネント指向
入力Input System(Action Map / PlayerInput / Rebinding)Enhanced Input
キャラ操作CharacterController と Rigidbody 方式 / 移動・ジャンプ・カメラ追従Pawn・Character
カメラCinemachine(Virtual Camera・Follow・Look At・ブレンド)PlayerCamera
ゲーム進行GameManager的な管理クラス / ステート管理(enum・ステートパターン)/ ◆Singletonの使いどころと注意GameMode
シーンSceneManager / シーン遷移 / Additive Sceneレベル遷移
データ保持DontDestroyOnLoad / static / ScriptableObjectGameInstance
セーブJSON(JsonUtility)/ PlayerPrefsの限界 / Application.persistentDataPath / ハイスコアSaveGame
データ駆動ScriptableObject(設定・アイテムDB)/ CSV・JSON読み込みDataAsset・DataTable
識別Tag / Layer / enumによる識別Gameplay Tags
設計整理◆Object Pooling / ◆依存関係の整理(循環参照を避ける)設計まとめ
参考ScriptableObjectアーキテクチャ(Ryan Hipple氏の講演)―

Phase 3:物理・UI・音

分野小項目UE対応
衝突Collider(Box / Sphere / Capsule / Mesh)/ Rigidbody / isTriggerコリジョン
衝突判定OnCollisionEnter / OnTriggerEnter / OnTriggerExitHit・Overlap
衝突設定Layer Collision Matrix / Physics Materialコリジョンプリセット
物理Raycast / SphereCast / OverlapSphere / ForceとImpulse / JointLine Trace・Chaos
衝突実践アイテム取得 / ダメージ床・炎アイテム・火
UI基礎Canvas / uGUI / TextMeshPro / Button・Image・SliderUMG
UIレイアウトRectTransform・アンカー / Layout Group(Vertical・Horizontal・Grid)/ Canvas ScalerCanvasPanel・Box類
UI連携スクリプトからUI更新 / onClickイベント / イベントでUIを更新バインディング
UIの発展UI Toolkit(UXML / USS)入門CommonUI
UI実践コイン枚数 / HPバー / メニュー画面UI実践
音の基礎AudioClip / AudioSource / AudioListener / 3Dサウンド(減衰)サウンドウェーブ・減衰
音の管理Audio Mixer(BGM・SE・Voiceのグループ化、音量調整)サウンドクラス
音の実践BGM / 音量変更・切替 / 取得SE / 爆発・UI音 / ループ音(火)音の実践

作品1:アクションゲーム(3D)

ステップ内容
準備プロジェクト作成(3D URP)/ アセット導入
ステージ環境作り / 落下ギミック / 上下移動ギミック / 夜環境
ゲーム要素コイン / タイマー(分:秒)/ ライフ
進行リスタート / クリア / シーン遷移 / セーブ
画面開始演出 / タイトル / ステージ選択 / ゲームオーバー
仕上げビルドして容量確認 / 完成とプレイ

Phase 4:見た目

分野小項目UE対応
レンダリング基礎◆URP(Universal Render Pipeline)の仕組み / Built-in・HDRPとの違い―
マテリアルMaterial / PBR / Texture設定 / Shader Graph(ノードで作る)/ Material Property Blockマテリアル
ライティングDirectional / Point / Spot / Baked・Realtime・Mixed / Light Probe / Reflection Probe / Adaptive Probe Volumes / Skyboxライティング
ジオメトリLOD Group / ◆GPU Resident Drawer / Terrain(地形・樹木)/ ProBuilderNanite・Landscape
VFXParticle System(Shuriken)/ VFX Graph / 爆発・炎・魔法の実践Niagara
演出Timeline / Playable Director / CinemachineでカットシーンSequencer
画作りVolume + Post-processing(Bloom・Color Adjustments・Depth of Field・Vignette)ポストプロセス

Phase 5:アニメーション

分野小項目UE対応
基礎Animation Clip / Avatar / Humanoid・Generic / Rig設定Skeletal Mesh
制御Animator Controller / ステートマシン / Parameter / Transition / Blend TreeAnimBP・Blend Space
再生Animator.Play / Layer・Avatar Mask / Animation EventMontage・Notify
流用Humanoidリターゲット(Avatar共通化)リターゲット
IKAnimation Rigging(Two Bone IK・Multi-Aim)/ Foot IKControl Rig
手付けAnimation Window でのクリップ作成 / Timeline連携―

Phase 6:AI

分野小項目UE対応
経路探索AI Navigation(NavMesh Surface・NavMeshAgent・NavMeshObstacle)NavMesh
状態管理ステートマシンを自作(enum / ステートパターン)State Tree
思考Unity Behavior(パッケージ)/ Behavior Treeの考え方Behavior Tree
知覚Physics.OverlapSphere + 視野角判定 + Raycast(視覚)/ 距離(聴覚)AI Perception
判断スコアリング / Utility AIEQS
発展(任意)ML-Agents(強化学習)―

作品2:敵が襲ってくる3Dゲーム

使う要素内容
Phase 4Shader・ライト・VFXで見た目を作る
Phase 5プレイヤー・敵のAnimator
Phase 6敵AI(巡回→発見→追跡→攻撃)
総合UI・セーブ・音まで含めて1本完成

Phase 7:上級C#・DOTS

分野小項目UE対応
言語機能ジェネリクス / delegate / Func / Action / LINQ(GC注意)C++基本
非同期async/await / Awaitable(Unity 6)/ UniTask / Coroutineとの使い分け―
構造化Assembly Definition(asmdef)/ Namespace / 名前空間設計モジュール
メモリGCの仕組み / struct / Span<T> / ボックス化GC・スマートポインタ
設計DI(VContainer / Zenject)/ MVP・MVVMパターン / Service Locator―
エディタ拡張カスタムInspector / PropertyDrawer / EditorWindow / ScriptableWizard―
読み込みAddressables(非同期ロード・メモリ管理)非同期ロード
DOTSECS / Jobs System / Burst Compiler / Entities GraphicsMass
発展◆Ability System(自作)/ Scriptable Object AbilityGAS
読解UnityCsReference(GitHub)を読むUEソース
テストUnity Test Framework(EditMode / PlayMode)―

Phase 8:最適化・製品化

分野小項目UE対応
計測Profiler / Frame Debugger / Memory Profiler / Profile Analyzerstat unit・Insights
CPUGC Alloc削減 / Update削減 / キャッシュ / Job化―
描画SRP Batcher / GPU Instancing / Static Batching / Occlusion Culling / Draw Call削減Nanite制限・LOD
大規模Addressables / シーン分割 / StreamingWorld Partition
ネットワークNetcode for GameObjects / Mirror / Fish-Net(Server・Client・RPC・NetworkVariable)Replication
サービスUnity Gaming Services(Cloud Save・Authentication・Leaderboards)―
出荷ビルド設定 / IL2CPP / Mono / 各プラットフォーム設定 / 容量削減パッケージ化

作品3:自分のゲーム

内容
企画から公開まで1本。ゲームジャム(Ludum Dare / Unityroom Jam など)参加もアリ

2Dゲームを作りたい場合の追加ルート

Unityは2Dが強いから、2D志向ならPhase 4・5をこっちに差し替えてね。

分野小項目
素材Sprite / Sprite Editor / Sprite Atlas / Pixel Perfect Camera
マップTilemap / Rule Tile / Tile Palette
物理Rigidbody2D / Collider2D / Composite Collider / Effector2D
アニメSprite Animation / 2D Animation(ボーン)/ 2D IK
ライト2D Light(URP 2D Renderer)
カメラCinemachine 2D / Confiner