学習記事一覧 · WinFormsRPG

WinFormsでRPG入門 〜Unityへ繋がる設計の考え方〜

C# の クラスイベント駆動 を、ゲームらしい題材(RPG)で固めつつ、あとから Unity に進んだときに「中身は同じ」と感じられるように整理したシリーズです。

補足(前提): WinForms の画面の作り方がまだの場合は、WinForms入門シリーズの「フォームとコントロール」「Button」「Label」を先に押さえるとスムーズです。class のイメージをコンソールで固めたい場合は、クラス気づき学習シリーズとの併読も有効です。継承・abstract・ポリモーフィズムまでコンソールでつなげたい場合は、ターン制バトルで学ぶオブジェクト指向も参照してください。


シリーズ目次(読む順)

  1. 最小構成のRPG(Player・Enemy・攻撃ボタン) … クラス分割・状態・Click イベント
  2. 敵を複数にする(配列 / ListList<Enemy>targetIndex・全滅判定
  3. コマンド選択(if で分岐) … ラジオボタン・DoAttack / DoHealMaxHp
  4. クラス分割(BattleManager など) … 戦闘ロジックの集約・フォームの薄型化
  5. Unity に移植するときの対応関係まとめ … 持ち込む層・UI 置き換え・橋渡し用 MonoBehaviour

各回の読み方(おすすめの型)

毎回、次の3つが揃うように書いています。

見出しのイメージ 内容
今回の最小ゴール その記事だけで「動くもの」
前回からの差分 新しく足した考え方・コードだけ
Unity での当たり所 入力・表示は違うが、ロジックはどこに載せるか

第1回だけは対応表を厚めにしています。第2回以降は「変わったところ」中心にします。


WinForms と Unity の対応(全体像・第1回で詳述)

要素 WinForms(このシリーズ) Unity(イメージ)
プレイヤー Player クラス GameObject + スクリプト(コンポーネント)
Enemy クラス 同上
入力 Button.Click など Input System(キー等) / UI ボタン
更新のきっかけ イベント Update() や UI イベント

設計(データとルール)は近い。違いは主に「描画」と「入力の取り方」 という前提で読み進められます。


関連シリーズ

シリーズ 内容
WinForms入門シリーズ コントロールとイベントの基礎
クラス気づき学習シリーズ コンソールで class / List の感覚を固める
ターン制バトルで学ぶオブジェクト指向 コンソールで継承・abstract・ポリモーフィズム(本シリーズの設計の補強)
WinFormsでゲームを作ろう Timer・座標・キー入力など発展ゲーム要素
Unity入門シリーズ 本シリーズの「先」のエディタとスクリプト

まとめ

WinForms で RPG を小さく作ることは、Unity に進むための土台(クラスで考える・状態を持つ・イベントで進める)の訓練になります。はじめての方は 第1回、複数体の敵は 第2回、コマンド分岐は 第3回、設計の整理は 第4回、Unity との対応の総まとめは 第5回 の順がおすすめです(第1回の Player / Enemy が前提です)。

シリーズ全5回で、WinForms から Unity へ橋渡ししやすい設計の型を一通り扱いました。発展は Unity入門シリーズ へ進んでください。