配布ファイル
各ZIPは授業を始める時点のプロジェクトです。初回以外は前回の標準到達状態を基にしています。第15回はCSV読み込み・入力検査などの補助処理も実装済みです。各回の作業表で、配布済みの処理と自分で追加する処理を確認します。
| 回 | 一括ダウンロード | 開始時の状態 |
|---|---|---|
| 第13回 | 新作プロジェクトとゲームの土台の開始用(ZIP) | DXライブラリ設定と全素材を含む新規プロジェクト |
| 第14回 | 調整できるプレイヤー表示と操作の開始用(ZIP) | 背景、ゲームループ、プレイヤー表示まで実装済み |
| 第15回 | CSVから作るステージの開始用(ZIP) | 左右操作とCSV読み込み・入力検査が実装済み。地形描画と開始位置の接続を追加する |
| 第16回 | ワールド座標とカメラの開始用(ZIP) | CSVステージの読み込みと描画まで実装済み |
| 第17回 | 加速度、摩擦、移動の端数の開始用(ZIP) | ワールド座標とカメラ追従まで実装済み |
| 第18回 | 重力、ジャンプ、着地の開始用(ZIP) | 加速度、摩擦、移動端数まで実装済み |
| 第19回 | 地形との衝突解決の開始用(ZIP) | 重力、ジャンプ、着地まで実装済み |
| 第20回 | アニメーションと音声イベントの開始用(ZIP) | 横・縦方向の地形衝突まで実装済み |
| 第21回 | 敵の配置とジャンプ操作の改善の開始用(ZIP) | プレイヤーアニメーションと音声まで実装済み |
| 第22回 | 敵の物理と巡回状態の開始用(ZIP) | 敵配置とジャンプ操作改善まで実装済み |
| 第23回 | トラップとゲーム進行の開始用(ZIP) | 敵の重力、衝突、巡回まで実装済み |
| 第24回 | 地形の種類追加と作品の完成の開始用(ZIP) | トラップ、敵接触、ゲーム状態まで実装済み |
| 完成版 | Complete.zip | 第24回終了時点の復帰用完成プロジェクト |
前の回の完成物がなくても、学ぶ回のZIPから開始できます。番号と題名を確認して選んでください。
開始手順
- ZIPを新しいフォルダに展開します。前回の作業フォルダは残しておきます。
PlatformerGame2D.slnをVisual Studioで開きます。- Debug・x64構成を選択し、ビルドして開始状態を確認します。
- 各回の「作業の準備」で追加・編集するファイルを確認します。
自分の変更を引き継ぐ
継続中のプロジェクトが正常に動作している場合は、各回の作業表に従って次へ進めます。第15回は新しいZIPに実装済みの補助処理があるため、別フォルダへ展開して使用します。新しいZIPから再開する場合は、まず標準状態で動作することを確認してから、次の順序で自身の変更を反映します。
| 対象 | 引き継ぎ方 |
|---|---|
新しい .h / .cpp | Source/ 内の指定フォルダへ追加し、Visual Studioのプロジェクトに登録する |
| 既存のクラス | 新しい宣言・メンバ変数・関数を追記し、重複する定義を作らない |
Source/Platformer/Tuning/GameTuning.h | 今回必要な定数のみ手動で追加し、自身で調整した既存の値を維持する |
Assets/ の画像・音声 | 新しく必要な素材を追加し、自身で用意した素材は同名ファイルと比較して反映する |
Assets/ のCSV | 自身のステージ配置を残し、今回のセル番号や必須条件に合うか確認する |
ファイルをまとめて上書きする前にバックアップを残しておきます。1項目ずつ反映してビルドと動作を確認すると、不具合の原因を特定しやすくなります。素材はプロジェクト直下の Assets/ フォルダを編集します。x64/Debug/ や x64/Release/ にある素材はビルド時に自動コピーされる一時出力のため、編集元として使わないでください。
新しいソースファイルの登録
Source/ 内の指定フォルダにファイルを作成し、ソリューションエクスプローラーでプロジェクトを右クリックして[追加]→[既存の項目]から登録します。新規作成する場合は[新しい項目]で名前と保存場所を指定します。Visual Studio上の「ソース ファイル」などのフィルターと、ディスク上の実際の保存フォルダは異なります。ファイルのプロパティで実際の保存場所を確認してください。
ヘッダーの宣言と .cpp の定義は、名前空間、戻り値の型、引数、末尾の const などの整合性を保ちます。関数の全文例は名前空間内に配置し、既存の同名関数を置き換えます。関数の一部分と示された例は、指定された関数の内部に追記します。