スクリプト設計の基本:命名規則とフォルダ構成のベストプラクティス
ゲーム開発において、コードの読みやすさや整理整頓はとても重要です。
特に個人開発では、数ヶ月後に自分の書いたコードが「何これ…」と読めなくなることも珍しくありません。
この記事では、ゲーム開発におけるスクリプト設計の基本として、命名規則とフォルダ構成のベストプラクティスを紹介します。
目次
命名規則の基本
スクリプトや変数に名前をつけるとき、一貫したルールがあると可読性と管理性がぐっと向上します。
クラス名(スクリプト名)は PascalCase
クラス名やスクリプトのファイル名は、単語の頭を大文字にする形式が基本です。
例:
PlayerController
EnemySpawner
GameManager
変数・関数名は camelCase
変数や関数には先頭を小文字、以降の単語の頭を大文字にするcamelCaseが一般的です。
例:
playerSpeed
spawnEnemy()
isGameOver
プレフィックス/サフィックスを使って用途を明確にする
btnStart
(ボタン)txtScore
(テキスト)imgIcon
(画像)isDead
(真偽値)
プレフィックスでUI要素や型の意図を明確にすると、後から見たときの理解が早くなります。
命名のNG例と改善例
NG例 | 問題点 | 改善例 |
---|---|---|
a , b , x | 意味が分からない | playerHealth , enemySpeed |
DoSomething() | 処理内容が不明 | ResetGameState() |
data1 , data2 | 役割が不明 | stageData , enemyData |
フォルダ構成のベストプラクティス
プロジェクトが大きくなる前に、フォルダを整理しておくことで混乱を防げます。
一般的な構成例(UnityやGodotなど)
arduinoコピーする編集するAssets/
├── Scripts/
│ ├── Player/
│ ├── Enemy/
│ ├── UI/
│ └── System/
├── Scenes/
├── Prefabs/
├── Materials/
├── Audio/
├── Sprites/
└── Resources/
- Scripts/:コード類(役割ごとに分ける)
- Scenes/:シーンファイル
- Prefabs/:プレハブ(再利用可能なオブジェクト)
- Audio/:BGM・SEなど
- Sprites/:画像リソース
Scriptsフォルダの分類のヒント
サブフォルダ | 役割例 |
---|---|
Player/ | プレイヤーの制御(移動、アニメなど) |
Enemy/ | 敵AIや動作処理 |
UI/ | UIの操作や表示制御 |
System/ | ゲーム全体の制御(シーン管理、データ管理など) |
その他の整理のコツ
名前の先頭に用途別の共通語をつける
例:すべてのUIスクリプトを UI_
で始める
UI_TitleMenu
UI_GameOver
これにより、エディタ内での検索性が上がります。
共通機能はユーティリティとして分離
よく使う処理は Utils.cs
や Helper.cs
などにまとめておくと再利用しやすくなります。
初期段階からフォルダを用意しておく
後から整理するより、最初にテンプレート的に分けておくことで迷わず開発を進められます。
まとめ:整理されたコードがゲーム開発の効率を高める
ポイント | 内容 |
---|---|
命名ルール | PascalCase(クラス)、camelCase(関数・変数)を使い分ける |
意味のある名前 | 処理や目的が伝わる命名にする |
フォルダ分類 | 機能ごとにサブフォルダを作る |
UI命名・共通処理 | まとめることで管理がしやすくなる |
最初に設計 | あとで困らないために初期設計が重要 |
小さなプロジェクトでも、スクリプト設計がしっかりしていれば、保守性・拡張性が大きく変わります。
将来の自分が困らないように、今から整理を意識して開発していきましょう。
コメント