Skip to content

C++/DXライブラリでタワーディフェンスを作る ​

共通行動のユニットが進軍と戦闘を行う完成見本共通行動のユニットが進軍と戦闘を行う完成見本

横一列の戦場へ味方を出撃させ、自動で進軍・戦闘するゲームを作ります。シューティングとプラットフォーマーに続く第3制作単元です。

まず完成見本を観察します。同じ行動から、高耐久で遅い重装兵と、高火力の攻撃兵を作れます。終盤はC++ソースを変更せずにユニットを追加し、敵の出現を調整します。

授業の進め方 ​

到達版で見本を観察し、開始版の関数を実装します。値を一つ変えて結果を予想し、動作を確認して理由を説明してください。第25〜36回は仮の割り当てで、授業時間に合わせて段階を分けます。

回内容
第25回個体の生成と共通の前進
第26回前方の索敵と射程
第27回攻撃間隔とHP
第28回拠点の勝敗とリトライ
第29回性能定義と個体の分離
第30回外部データによるユニット追加
第31回出撃コストと再出撃待ち時間
第32回定義に基づくウェーブ
第33回見た目とアニメーションの接続
第34回データの診断と上限
第35回独力でのユニット追加と調整
第36回作品と調整記録の提出

操作 ​

数字キー1〜6で候補のユニットを出撃させます。Pで一時停止、結果画面ではRでリトライ、Escapeで終了します。敵拠点を破壊すると勝利、味方拠点を破壊されると敗北です。

素材と配布 ​

KenneyのTiny BattleのCC0画像を使用します。配布画像を再利用して課題を完了できます。画像の自作や専用モーションの作画は必須にしません。

配布ファイルと作業の説明を確認してください。現在は教材の制作元と到達版を用意しており、公開ZIPは準備中です。

項目の意味、使える見た目ID、上限は定義データの項目で確認できます。

ゲームプログラミング実践