サッカーゲームの作り方教えろ (192レス)
上下前次1-新
抽出解除 レス栞
156: 2014/04/28(月)12:57 ID:6mFyNfRu(2/5) AAS
[step-1]グラウンドの芝生の描画テスト結果
画像リンク[png]:www13.plala.or.jp
基本的に緑色の地面を準備しただけですが、縞模様になるように描画しています。
次は、[step-2]グラウンドに白線を引いてみます。
157: 2014/04/28(月)16:24 ID:6mFyNfRu(3/5) AAS
[step-2]グラウンドに白線を引きました。
画像リンク[png]:www13.plala.or.jp
視点は3Dになっていますが、実質的には2次元(XY平面)での描画プログラムです。
次は、[step-3]ゴールの枠など立体構造物を準備しようと思います。
158: 2014/04/28(月)20:11 ID:6mFyNfRu(4/5) AAS
[step-3]立体物を追加しました。
画像リンク[png]:www13.plala.or.jp
データ構造の関係上、2Dの白線と3Dのゴールポストを別オブジェクトにしましたが、
プログラミング的には同じような作業になります。
次はいよいよ、[step-4]サッカーボールを登場させようと思います。
159: 2014/04/28(月)21:49 ID:6mFyNfRu(5/5) AAS
[step-4]サッカーボールの作成
画像リンク[png]:www13.plala.or.jp
正20面体をもとにしてボール形状を得ています。
サンプル画像はボールの柄を見やすくするため、フィールドサイズに対してかなり大きくなっています。
実寸に調整することも勿論簡単にできますが、見易さに配慮してこのままのサイズでゲームにするのも
悪くないような気もしています。
本日はここまでで終了です。
160: 2014/04/30(水)21:01 ID:5brmSDUW(1/4) AAS
[step-5]サッカーボールの運動
画像リンク[png]:www13.plala.or.jp
空中では放物線運動、地面では転がり運動するようにプログラミングします。
物理シミュレーションの基本的課題ですが、これがうまく動くようになると、
プログラミングが面白くなってくると思います。
161: 2014/04/30(水)21:46 ID:5brmSDUW(2/4) AAS
[step-6]ゴールとボールの接触判定
画像リンク[png]:www13.plala.or.jp
ボールがゴールの立体構造物にぶつかったら反射するような判定処理を作ります。
ボールを自在にコントロールできるうちは容易にテストできるので、この段階で
しつこく蹴りつけて納得いくまでデバッグしておくと良いと思います。
162: 2014/04/30(水)22:15 ID:5brmSDUW(3/4) AAS
[step-7]ゴールとラインの通過判定
画像リンク[png]:www13.plala.or.jp
ボールがゴール内に入ったり、ラインを割ったかどうかを判定するようにしました。
判定後は一定時間操作を禁止し、所定の位置にボールをリセットします。
本日はここまでで終了です。
164: 2014/05/02(金)23:00 ID:wLqSX8UR(1) AAS
[step-8]時計とスコアボードの実装
画像リンク[png]:www13.plala.or.jp
スコアクラスには時刻と時間帯(前半、後半など)と、
時間帯別チーム別のスコア配列を保持し、ボールがゴールに入ったとき、インクリメントしています。
また、得点があったときは、ささやかながら、得点が更新されるアニメーション表示を実装しました。
165: 2014/05/03(土)11:32 ID:ioL37ML9(1) AAS
[step-9]試合の進行管理処理を作る
画像リンク[png]:www13.plala.or.jp
前半、後半、延長戦の管理を実装しました。
これによって、「サッカーのルールを模擬した箱庭」が、ほぼ完成です。
ここからは、ボール操作の自由度を縛っていく方向でゲーム性を加えていきます。
167: 2014/05/06(火)13:06 ID:C3g9GlRL(2/2) AAS
[step-11]選手の表示
画像リンク[png]:www13.plala.or.jp
選手クラスとして、座標と方向のみを持つクラスを作り、適当な初期位置に配置して、
ストックキャラクタを表示するようにしてみました。
まだボールに反応しないどころか、当たり判定もありませんので幽霊みたいなものですが、
取り掛かりはいつもこんな感じです。
168: 2014/05/09(金)21:27 ID:vAmRioNV(1/2) AAS
[step-12]選手とボールの衝突判定
画像リンク[png]:www13.plala.or.jp
ボールが選手の体に当たると跳ね返るようになりました。
まだ選手はうごきませんが、サッカーゴールのときと同様、
ボールが自在に動かせるうちに、しつこく接触判定の実装と
テストを行っておくのが楽だと思います。
169: 2014/05/09(金)21:37 ID:vAmRioNV(2/2) AAS
[step-13]ボールをトラップする
画像リンク[png]:www13.plala.or.jp
衝突判定を拡張し、正面側からボールを受けたときは跳ね返りを抑えて
足元にボールをトラップするようにしました。
170: 2014/05/10(土)22:13 ID:bLfshhAR(1) AAS
[step-14]選手を試験的に動かす
画像リンク[png]:www13.plala.or.jp
ボールに向かって選手を動かしてみました。案の定、幼稚園児の球蹴り遊びのように、
すぐに団子状態になってしまいますが、ずいぶんとにぎやかになってきました。
実行ファイルも公開中です。
外部リンク[html]:www13.plala.or.jp
171: 2014/05/17(土)07:20 ID:E7s/lqXl(1) AAS
[step-15]ドリブルをさせる
画像リンク[png]:www13.plala.or.jp
step-13で実装した処理を拡張し、適当な条件のとき、トラップする代わりに
正面に向かって蹴り出すようにすると、ドリブルするようになります。
172: 2014/05/20(火)21:24 ID:X4klhCbP(1/2) AAS
[step-16]選手の動きを改良する
画像リンク[png]:www13.plala.or.jp
選手ごとに目的地を保持し、自動的にそちらへ向かって動くようにしました。
この機能をベースにして発展させれば、将来的にはボールに群がらず、
フォーメーションを整えられるようにできそうです。
静止画からはぱっとしませんが、かなり重要な実装ステップのひとつかと思います。
173: 2014/05/20(火)21:41 ID:X4klhCbP(2/2) AAS
[step-17]選手同士の接触判定
画像リンク[png]:www13.plala.or.jp
選手同士の位置が近づきすぎたとき、お互いに離れる方向に加速することで、
重なり合ってしまう不自然な現象を解決してみました。
剛体同士の接触処理に使われるような厳密な判定とちがって簡易な処理なので
押しくらまんじゅう状態になるとめり込んだりすることもあるかもしれませんが、
このようなゲームシステムでは、そんなに神経質にならなくても良いように思います。
175: 2014/05/29(木)09:18 ID:GzbyVACp(2/2) AAS
[step-19]ポジションに配置する
画像リンク[png]:www13.plala.or.jp
ゴールキーパーを含む1チーム11人の選手をフィールド上に立たせてみました。
ここまでに、すでに選手の初期位置を与えるメソッドは作ってありましたので、
フィールドの寸法と配置座標(正規化座標)から、11人分の選手の位置を
リセットする関数を新たに定義しています。
フィールド座標の原点をセンターサークル中央にしているので、
XY座標の符号を逆にすれば逆サイドのチームも同様に配置できます。
176: 2014/06/06(金)22:05 ID:+UOYPqqU(1/2) AAS
[step-20]フォーメーションエディタを作る
画像リンク[png]:www13.plala.or.jp
選手の移動を組織的にコントロールするためには、
選手個人の人工知能的アルゴリズムを工夫するよりも、
フィールド上でのフォーメーションパターンをあらかじめ決めておき、
状況に応じて選択する、という方法が簡単に実装できそうです。
これは、そのフォーメーションパターンを設計するための専用エディタです。
177: 2014/06/06(金)22:18 ID:+UOYPqqU(2/2) AAS
[step-21]フォーメーション変更
画像リンク[png]:www13.plala.or.jp
フォーメーションエディタで編集したポジションに、あるキーを押すと
一斉に選手が移動するようなインタフェースを試験的に追加しました。
ボールを見て動くわけではないのですが、指示通り組織的に動くようになるだけで、
ちょっと本格的なサッカーになったような錯覚を覚えます。
ちなみに、こういう指導方法を子供相手にやる人はコーチ失格だそうです。
178: 2014/06/11(水)21:51 ID:H1wDQdSg(1/2) AAS
[step-22]フォーメーション自動切り替え
画像リンク[png]:www13.plala.or.jp
ボールの参照位置を変えてフォーメーションを数パターン作成し、
現在のボールの位置に最寄の参照フォーメーションに自動で切り替える処理を実装しました。
ボールの動きに呼応して選手が各々動くので、なんとなくサッカーぽく見えます。
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.656s*