サッカーゲームの作り方教えろat GAMEDEV
サッカーゲームの作り方教えろ - 暇つぶし2ch150:名前は開発中のものです。
14/04/09 09:40:23.27 9NiONvxk.net
ワールドカップに向けてサッカーゲームでも作ってみっかな
まずはルールを覚えないと

151:名前は開発中のものです。
14/04/09 09:57:01.22 9NiONvxk.net
挫折しました

152:名前は開発中のものです。
14/04/09 14:21:07.57 L1H+Dbac.net
>>151
17分て・・・早っ

153:名前は開発中のものです。
14/04/10 04:48:38.48 2ZrXXk32.net
ジーコサッカー

154:名前は開発中のものです。
14/04/11 04:28:56.58 ZP+Idukl.net
カードゲーム化で。
TCGのように選手カードがどうたらというものではなく、場面ごとに手札切っていってゴールへつなげていくゲーム。
…カプコンのドカベンのサッカー版……乱数要素が半視覚化されたキャプ翼

155:名前は開発中のものです。
14/04/28 12:57:16.30 6mFyNfRu.net
[step-1]グラウンドの芝生の描画テスト結果
URLリンク(www13.plala.or.jp)
基本的に緑色の地面を準備しただけですが、縞模様になるように描画しています。

次は、[step-2]グラウンドに白線を引いてみます。

156:名前は開発中のものです。
14/04/28 16:24:53.81 6mFyNfRu.net
[step-2]グラウンドに白線を引きました。
URLリンク(www13.plala.or.jp)
視点は3Dになっていますが、実質的には2次元(XY平面)での描画プログラムです。

次は、[step-3]ゴールの枠など立体構造物を準備しようと思います。

157:名前は開発中のものです。
14/04/28 20:11:25.15 6mFyNfRu.net
[step-3]立体物を追加しました。
URLリンク(www13.plala.or.jp)

データ構造の関係上、2Dの白線と3Dのゴールポストを別オブジェクトにしましたが、
プログラミング的には同じような作業になります。

次はいよいよ、[step-4]サッカーボールを登場させようと思います。

158:名前は開発中のものです。
14/04/28 21:49:02.77 6mFyNfRu.net
[step-4]サッカーボールの作成
URLリンク(www13.plala.or.jp)

正20面体をもとにしてボール形状を得ています。
サンプル画像はボールの柄を見やすくするため、フィールドサイズに対してかなり大きくなっています。
実寸に調整することも勿論簡単にできますが、見易さに配慮してこのままのサイズでゲームにするのも
悪くないような気もしています。

本日はここまでで終了です。

159:名前は開発中のものです。
14/04/30 21:01:23.25 5brmSDUW.net
[step-5]サッカーボールの運動
URLリンク(www13.plala.or.jp)

空中では放物線運動、地面では転がり運動するようにプログラミングします。
物理シミュレーションの基本的課題ですが、これがうまく動くようになると、
プログラミングが面白くなってくると思います。

160:名前は開発中のものです。
14/04/30 21:46:54.75 5brmSDUW.net
[step-6]ゴールとボールの接触判定
URLリンク(www13.plala.or.jp)

ボールがゴールの立体構造物にぶつかったら反射するような判定処理を作ります。

ボールを自在にコントロールできるうちは容易にテストできるので、この段階で
しつこく蹴りつけて納得いくまでデバッグしておくと良いと思います。

161:名前は開発中のものです。
14/04/30 22:15:21.22 5brmSDUW.net
[step-7]ゴールとラインの通過判定
URLリンク(www13.plala.or.jp)

ボールがゴール内に入ったり、ラインを割ったかどうかを判定するようにしました。
判定後は一定時間操作を禁止し、所定の位置にボールをリセットします。

本日はここまでで終了です。

162:名前は開発中のものです。
14/04/30 22:40:24.68 5brmSDUW.net
誰も見ていないかもしれませんが、とりあえず、>>155-162のまとめです。
URLリンク(www13.plala.or.jp)

実行可能なサンプルプログラムも公開してみます。
ご意見、ご質問などはこのスレでどうぞ。

163:名前は開発中のものです。
14/05/02 23:00:33.49 wLqSX8UR.net
[step-8]時計とスコアボードの実装
URLリンク(www13.plala.or.jp)

スコアクラスには時刻と時間帯(前半、後半など)と、
時間帯別チーム別のスコア配列を保持し、ボールがゴールに入ったとき、インクリメントしています。
また、得点があったときは、ささやかながら、得点が更新されるアニメーション表示を実装しました。

164:名前は開発中のものです。
14/05/03 11:32:48.98 ioL37ML9.net
[step-9]試合の進行管理処理を作る
URLリンク(www13.plala.or.jp)

前半、後半、延長戦の管理を実装しました。
これによって、「サッカーのルールを模擬した箱庭」が、ほぼ完成です。

ここからは、ボール操作の自由度を縛っていく方向でゲーム性を加えていきます。

165:名前は開発中のものです。
14/05/06 13:01:27.03 C3g9GlRL.net
[step-10]脱「箱庭」の方針

ここまでに作ったプログラムで、ボールがゴールに入れば勝敗が決まるという、
サッカーの基本ルールは実装できましたが、そもそも、ボールがマウスで
自由に動かせるのでは、まだまでゲームと呼べるものにはなっていません。

やはり、ボールは選手が蹴ってこそサッカーゲームということになりますが、
いきなりフルスペックで「サッカー選手」の思考やアクションを設計、実装するのは
ハードルが高いと思います。

そこで、最初は「フィールドに選手が立っているだけ」の状態から始め、
徐々にボールに干渉させつつ、最後は効率的に攻守をこなせるように発展させる、
という段取りで作ってみようと思います。

166:名前は開発中のものです。
14/05/06 13:06:39.57 C3g9GlRL.net
[step-11]選手の表示
URLリンク(www13.plala.or.jp)

選手クラスとして、座標と方向のみを持つクラスを作り、適当な初期位置に配置して、
ストックキャラクタを表示するようにしてみました。

まだボールに反応しないどころか、当たり判定もありませんので幽霊みたいなものですが、
取り掛かりはいつもこんな感じです。

167:名前は開発中のものです。
14/05/09 21:27:36.68 vAmRioNV.net
[step-12]選手とボールの衝突判定
URLリンク(www13.plala.or.jp)

ボールが選手の体に当たると跳ね返るようになりました。

まだ選手はうごきませんが、サッカーゴールのときと同様、
ボールが自在に動かせるうちに、しつこく接触判定の実装と
テストを行っておくのが楽だと思います。

168:名前は開発中のものです。
14/05/09 21:37:49.10 vAmRioNV.net
[step-13]ボールをトラップする
URLリンク(www13.plala.or.jp)

衝突判定を拡張し、正面側からボールを受けたときは跳ね返りを抑えて
足元にボールをトラップするようにしました。

169:名前は開発中のものです。
14/05/10 22:13:12.22 bLfshhAR.net
[step-14]選手を試験的に動かす
URLリンク(www13.plala.or.jp)

ボールに向かって選手を動かしてみました。案の定、幼稚園児の球蹴り遊びのように、
すぐに団子状態になってしまいますが、ずいぶんとにぎやかになってきました。

実行ファイルも公開中です。
URLリンク(www13.plala.or.jp)

170:名前は開発中のものです。
14/05/11 17:40:48.00 OdrAzPgCn
基本的に8方向かな

171:名前は開発中のものです。
14/05/17 07:20:57.48 E7s/lqXl.net
[step-15]ドリブルをさせる
URLリンク(www13.plala.or.jp)

step-13で実装した処理を拡張し、適当な条件のとき、トラップする代わりに
正面に向かって蹴り出すようにすると、ドリブルするようになります。

172:名前は開発中のものです。
14/05/20 21:24:24.19 X4klhCbP.net
[step-16]選手の動きを改良する
URLリンク(www13.plala.or.jp)

選手ごとに目的地を保持し、自動的にそちらへ向かって動くようにしました。
この機能をベースにして発展させれば、将来的にはボールに群がらず、
フォーメーションを整えられるようにできそうです。

静止画からはぱっとしませんが、かなり重要な実装ステップのひとつかと思います。

173:名前は開発中のものです。
14/05/20 21:41:23.97 X4klhCbP.net
[step-17]選手同士の接触判定
URLリンク(www13.plala.or.jp)

選手同士の位置が近づきすぎたとき、お互いに離れる方向に加速することで、
重なり合ってしまう不自然な現象を解決してみました。

剛体同士の接触処理に使われるような厳密な判定とちがって簡易な処理なので
押しくらまんじゅう状態になるとめり込んだりすることもあるかもしれませんが、
このようなゲームシステムでは、そんなに神経質にならなくても良いように思います。

174:名前は開発中のものです。
14/05/29 09:12:48.67 GzbyVACp.net
[step-18]選手たちにサッカーの試合をさせるための方針

ここまでのところで、ボールに群がってしまう幼稚なサッカー風環境ソフトができました。
この後、サッカーゲームとして仕上げていくには、選手を統率した動きを与える、
という開発方針をとりますが、プログラミング技術よりも、監督、コーチ的な技術が
重要になってくるかもしれません。

しかしながら、私にはサッカー指導者の経験がありませんので、極めて適当な
草サッカーチームになるかもしれませんが、一応の完成を目指して
これまでどおり段階的に進めてみたいと思います。

175:名前は開発中のものです。
14/05/29 09:18:07.28 GzbyVACp.net
[step-19]ポジションに配置する
URLリンク(www13.plala.or.jp)

ゴールキーパーを含む1チーム11人の選手をフィールド上に立たせてみました。
ここまでに、すでに選手の初期位置を与えるメソッドは作ってありましたので、
フィールドの寸法と配置座標(正規化座標)から、11人分の選手の位置を
リセットする関数を新たに定義しています。

フィールド座標の原点をセンターサークル中央にしているので、
XY座標の符号を逆にすれば逆サイドのチームも同様に配置できます。

176:名前は開発中のものです。
14/06/06 22:05:11.63 +UOYPqqU.net
[step-20]フォーメーションエディタを作る
URLリンク(www13.plala.or.jp)

選手の移動を組織的にコントロールするためには、
選手個人の人工知能的アルゴリズムを工夫するよりも、
フィールド上でのフォーメーションパターンをあらかじめ決めておき、
状況に応じて選択する、という方法が簡単に実装できそうです。

これは、そのフォーメーションパターンを設計するための専用エディタです。

177:名前は開発中のものです。
14/06/06 22:18:48.35 +UOYPqqU.net
[step-21]フォーメーション変更
URLリンク(www13.plala.or.jp)

フォーメーションエディタで編集したポジションに、あるキーを押すと
一斉に選手が移動するようなインタフェースを試験的に追加しました。

ボールを見て動くわけではないのですが、指示通り組織的に動くようになるだけで、
ちょっと本格的なサッカーになったような錯覚を覚えます。

ちなみに、こういう指導方法を子供相手にやる人はコーチ失格だそうです。

178:名前は開発中のものです。
14/06/11 21:51:49.36 H1wDQdSg.net
[step-22]フォーメーション自動切り替え
URLリンク(www13.plala.or.jp)

ボールの参照位置を変えてフォーメーションを数パターン作成し、
現在のボールの位置に最寄の参照フォーメーションに自動で切り替える処理を実装しました。

ボールの動きに呼応して選手が各々動くので、なんとなくサッカーぽく見えます。

179:名前は開発中のものです。
14/06/11 21:57:32.85 H1wDQdSg.net
[step-23]最寄の選手がボールを追う
URLリンク(www13.plala.or.jp)

各チームごとに、ボールに最寄りの選手一人はフォーメーションに関わらず
ボールを直接追いかけるようにしました。
放っておくと、相手チームの選手と競り合いながらドリブルしていきます。

以前も同様な追っかけ処理を実装していましたが、
そのころの全員集まって来る幼稚園サッカーと違い、
他の選手はボールを遠巻きにフォーメーションを保とうとしますので、
ずいぶん成長したように見えます。

180:名前は開発中のものです。
14/06/30 17:13:41.88 Utu19xNB.net
[step-24]カメラを改良する
URLリンク(www13.plala.or.jp)

これまでのカメラはボールを後ろから追いかけるアルゴリズムでしたが、
フォーメーションや攻撃サイドがわかりにくい問題がありましたので、
テレビのサッカー中継でよく見られるスタンド目線の首振りカメラに変更してみました。

ロングショットの映像は、フィールド全体の様子がわかりやすいのですが、
迫力では劣りますので、大画面テレビ向けのような気がします。

181:名前は開発中のものです。
14/06/30 17:17:02.35 Utu19xNB.net
[step-25]セットプレイ
URLリンク(www13.plala.or.jp)

ボールが外に出たり、ゴールに入ったときの後の再開時のための処理を追加しました。
攻撃、守備を管理するフラグを制御しつつ、守備側はボールが蹴られるまで一定距離
離れるように制約しています。

182:名前は開発中のものです。
14/06/30 17:24:18.44 Utu19xNB.net
……という感じで、ワールドカップの時期に合わせて
自主的にサッカーゲームを作ってみました。

敵味方ともにAIがいまいちで、まともにプレイできるレベルではありませんが、
これ以上作りこむには製作者にサッカーの知識と経験が足りないと感じています。

しかし、プログラミング的に興味のあった要素については大体試せたので、
とりあえずこの段階で今回は製作完了ということにしようと思います。

最終的な試作品は、こちらからダウンロードできます。
URLリンク(www13.plala.or.jp)

183:SGGK ◆6pZCoAtaxk
14/07/06 00:26:27.98 kEJ3/V9n.net
完成おつかれさまです。( ´ω`)
参考にします。

184:名前は開発中のものです。
14/07/06 04:26:16.53 Raj7PBL/.net
>>183
一人で修行スレの人ですね。どうぞよろしく。
分かりにくいところは、出来るだけ解説を補足しますので
お気軽に質問などしてくださいね。

185:SGGK ◆6pZCoAtaxk
14/07/07 00:00:46.58 f9FnhUMD.net
なんとか記憶を取り戻してプログラムが書けるようにがんばりますので
こちらこそよろしくおねがいします (^o^)/

186:名前は開発中のものです。
17/02/05 08:33:29.62 LnsVjv+3.net
そうかそうか

187:名前は開発中のものです。
17/12/31 22:13:59.48 /rN76OKL.net
簡単にお金が稼げる方法興味ある人だけ見てください。
グーグル検索⇒『来島のモノノリウエ』
CIVBANFHAV

188:名前は開発中のものです。
18/04/25 16:26:07.76 cVFSt/oN.net
サッカーで遊ぼう
URLリンク(goo.gl)

189:名前は開発中のものです。
18/04/26 12:07:47.97 kEhPUDkl.net
やってみりゃわかるよ
URLリンク(goo.gl)

190:あ
18/07/03 22:11:01.42 PgC7x65J.net
URLリンク(youtu.be)

191:ここらへん
21/09/06 20:42:57.84 dILLG29i.net
プロフィール。1点入った1、入らない0。樹形図。総当り表。メディカル。パンフレット。グッズ。

192:名前は開発中のものです。
24/04/29 19:56:26.29 XMtpdsp9.net
欲種


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch