2025/11/4 Unityで目指していきたいこと
t6o_o6t.icon
事前学習
ゲーム3D数学、Shader に関する基礎的な知識
レベル感:
実例で学ぶゲーム3D数学
ゲームプログラミングC++
HLSLシェーダーの魔導書
Git によるバージョン管理の知識
目的
プロダクションの開発チームでどのような方法が用いられているのか、実践的に理解すること
プロジェクト管理
https://www.docswell.com/s/gamemakers/K4QQV8-GameMakersScramble_ArchivesB5
https://www.jp.square-enix.com/tech/openconference/library/2011/dldata/PM/PM.pdf
実施項目: 開発技法
実装
ObjectPool 機能によるオブジェクトプールの実装
UniTask による非同期処理
PUN2 によるネットワークプログラミング
Input System による入力情報取得
ソースコード管理
Assembly Definitionによる依存関係の明確化
ドメインロジックをピュアな C# コードで表現し、 Unity 固有のコードを分離する
Linter, Formatter の定義
Git Hooks を使ったフォーマッタの自動適用
アーキテクチャ
UI の実装における MVP パターンの適用
UniRx(R3)
リアクティブプログラミングで、保守性を向上する
Pub / Sub モデルで、コンポーネントどうしの依存を減らす
2025/11/15 R3 と Unity の Input System で遊ぶ
Zenject (Extenject)による DI(依存性の注入)
参考
https://blog.covelline.com/entry/2022/01/11/125017
https://learning.unity3d.jp/4021/
https://qiita.com/dTAT/items/d2252b16059b9d300b81
クロスフェードの実装がコードで紹介されている
UniRx でデータチャネルを作り、音量を調整するコルーチンが Publish した音量情報を Subscribe
Zenject で DI を実施
AnimationCurve によるアニメーションカーブの定義
ScriptableObject で楽曲情報を管理
https://qiita.com/toRisouP/items/48b9fa25df64d3c6a392
UniRx に関する記事のまとめ
一通り読んだほうが良さそう
https://neue.cc/2024/02/27_R3.html
UniRx 作者が R3 を開発したモチベーション、経緯など
UniRx や R3 をなぜ使うのかを理解するためにおすすめ
https://neue.cc/2014/08/23_476.html
UniRx を、ダブルクリックの例をもとに作者が詳しく紹介した記事
C# の async/await が強化される前の記事なので、コルーチン周りの事情は変わっているはず
元ネタの Reactive Extension についても調べたほうが良さそう
UIデザイン
UnityFigmaBridge
uPalette
参考
https://zenn.dev/happy_elements/articles/39e5275a1a3a62
アセット管理
Unity.gitignore を使用した不要ファイルの除外
https://github.com/github/gitignore/blob/main/Unity.gitignore
Asset Serialization を Force Text とする
職能・レベルごとに Scene を分割する
レベルデザイン
UIデザイン
Addressables によるアセット管理
サーバーからの追加コンテンツダウンロード
参考
https://qiita.com/4_mio_11/items/0efe6f5f8e350b551bb8
Multi Scene Editing の概要や、複数 Scene でのコミュニケーションなどの注意点がまとめられている
https://madnesslabo.net/utage/?page_id=11109
Multi Scene Editing の概要、メモリリークの対策など
https://unity3d.jp/game/best-practices-version-control-unity-6-jp/
Unity のバージョン管理のベストプラクティス(電子書籍)
https://www.klab.com/jp/blog/tech/2025/cedec-2025-dlcdn.html
ソシャゲにおけるコンテンツのダウンロードについて
レベルデザイン
ProBuilder を用いたオブジェクトの作成
Terrain を用いた地形の作成
参考
https://developer.aiming-inc.com/designing-games/map-create-1/
マップのコンセプト決め
作成作業用のマップ資料
Terrain を用いたマップ作成
マスターデータ管理
Excel によるデータ管理
MasterMemory
Scriptable Object での動的生成
参考
https://create.unity.com/jp-protips-architect-with-scriptable-objects
Scriptable Object の公式 Tips
https://unity.com/ja/resources/create-modular-game-architecture-with-scriptable-objects-ebook
Scriptable Object の ebooks
開発基盤
AWS S3 を使用した Git LFS の構築
S3 以外のオブジェクトストレージでもOK
Unity Test Framework を用いたユニットテストの実装
GitHub Actions を用いた実行ファイルの CI
itch.io への自動デプロイ
参考資料
https://tech.dentsusoken.com/entry/s3-lfs-setup
S3 で Git LFS を構築
演出
Cinemachine によるカメラ管理
Timeline を用いた時間制御
VFX Graph を用いたエフェクト
Shader Graph を用いたシェーダ実装
参考
https://zenn.dev/dsgarage/articles/1e58181bf007ca
ゲームスタート時の演出を Timeline で設定している。
Cinemachine カメラの座標を Timeline で移動させる
Signal Receiver を使ってスクリプトを実行する
Playable Director の .Play() メソッドをスクリプトから呼び出すことで Timeline Instance を再生
講演動画(YouTube)
https://www.karvan1230.com/entry/2021/10/26/201313
Signal Receiver を用いて Timeline 上のイベントに応じてスクリプトを実行する
https://tsubakit1.hateblo.jp/entry/2017/10/23/213606
Free Look Camera の利用