プロジェクト一覧へ戻る

個人開発  |  2026.02 — 現在

TFramework

TFramework

概要

自分自身の過去の開発経験・知見を集約して構築した個人プロジェクトとしてのゲーム開発用ベースフレームワークです。

担当内容

構想、アーキテクチャ設計から実装まで一人で行いました。 - クリーンアーキテクチャやMVPパターンの導入 - DIコンテナ(VContainer)を利用した依存性の注入 - R3 や UniTask を用いたリアクティブ・イベント駆動アーキテクチャ

課題

新規プロジェクトを立ち上げる際、UI管理、音響管理、ステート遷移などのいわゆる「基盤部分」は毎回同じようなコードを書き直す必要が生じがちで、保守性や開発スピードに課題がありました。さらに、プロジェクトがスケールするにつれて、シングルトンパターンの乱用による密結合が発生し、テスト容易性が低下する問題がありました。

対応内容

この課題を解決するため、特定のゲームジャンルに依存せず汎用的に利用できるコンポーネント群をTFrameworkとしてパッケージ化しました。

  • シングルトンを極力排除し、VContainerによるDI(Dependency Injection)を全面的に採用してクラス間の結合度を下げました。
  • イベント通知や状態管理には R3 (Reactive Extensions) を採用し、通知時のメモリアロケーションを抑制しつつ宣言的なUIバインディングを実現。
  • Addressablesによるアセットロードをネイティブにサポートする非同期UIマネージャーを実装。

成果

現在は個人開発タイトル「Vox Dungeon」の開発基盤として実戦投入しており、FSMによるバトル進行、シーン遷移、UIのPageスタック管理、Addressablesによるアセットロードを本フレームワーク上で運用。実際のゲーム開発を通じて発見された課題(DIスコープ設計の最適化、EventSystemの所有権管理、AudioListenerの配置方針など)を随時フレームワーク側にフィードバックし、継続的に改善を重ねている。

また、この開発を通じて得たモダンなアーキテクチャ設計(DI, Rx等)の知見は、実務においても設計提案やコードレビューに活かせると考えている。

次のプロジェクト

Vox Dungeon →