メインコンテンツまでスキップ

ディレクトリ構造

リポジトリ全体​

haru-game/
├── game/ # ゲームプロジェクト
│ ├── src/ # ゲーム本体
│ │ ├── ai/
│ │ ├── data/
│ │ ├── entities/
│ │ ├── scenes/
│ │ ├── ui/
│ │ └── main.ts
│ ├── assets/ # ゲーム用アセットのコピー
│ ├── public/
│ ├── index.html
│ ├── package.json
│ ├── vite.config.ts
│ └── dist/ # ゲームのビルド出力
├── assets/ # 正本となる制作元データ
│ └── blender/
├── docs/ # 仕様・設計・制作資料
│ ├── game-content/
│ ├── architecture/
│ ├── project-management/
│ └── assets/ # ドキュメント用アセットのコピー
├── docusaurus/ # ドキュメントサイト
│ ├── docusaurus.config.ts
│ ├── sidebars.ts
│ ├── src/css/custom.css
│ └── build/ # Docusaurusのビルド出力
├── tools/ # 開発補助スクリプト
└── README.md

ソースコードの依存方向​

game/src/main.ts
└── game/src/scenes/
├── game/src/entities/
├── game/src/ai/
├── game/src/data/
└── game/src/ui/

ゲームルールはシーンに直接書き散らさず、可能な範囲でgame/src/entities/、game/src/ai/、game/src/data/に分離します。画面表示や入力の調停はgame/src/scenes/が担当します。

アセットの原則​

  • 制作元データはrootのassets/に置く
  • ゲーム用コピーはgame/assets/に置く
  • ドキュメント用コピーはdocs/assets/に置く
  • コピーはtools/assets/sync.ps1で更新する
  • コピー先を直接編集しない