レースゲームの自動操縦

このエントリーをはてなブックマークに追加
1デフォルトの名無しさん
は、制御工学とか使うんですか?
2デフォルトの名無しさん:2001/07/26(木) 21:39
2chの夏、厨房の夏。

ゲームプログラミング相談室[2]
http://piza2.2ch.net/test/read.cgi?bbs=tech&key=985540361
3某大手メーカー社員:2001/07/26(木) 21:39
ちがいます。あれはメーカーの人間がネットワークを通じて操っています。
4デフォルトの名無しさん:2001/07/27(金) 09:20
ではどうやって???丹さん、どうなんですか?
5 :2001/07/27(金) 09:33
あらかじめ設定したレコードライン(場合によっては複数用意したりして)
からずれてきたらブレーキとかじゃないのかな?


ラリーゲーで行き止まりのわき道からバックで上手くコース復帰したりすると
おぉ! と思う
6デフォルトの名無しさん:2001/07/27(金) 11:19
コースパターンなんてたくさんある訳じゃないし、
いくつか行動パターン持たせれば、それっぽく行けるのでは?
てゆうか、レースゲーより格ゲーの方が条件多い気がするし…

とかマジレスしてみる。
7デフォルトの名無しさん:2001/07/27(金) 12:57
人間が操作してるのを記録しておきそれを再生するだけだよ。
8デフォルトの名無しさん:2001/07/27(金) 13:16
>>7
ネタですか?
衝突したらどうするんですか?
9デフォルトの名無しさん:2001/07/27(金) 13:31
>>8
補完する。
10某大手メーカー社員:2001/07/27(金) 13:33
>8
厨房が、知ったかぶりするなよ。
11デフォルトの名無しさん:2001/07/27(金) 13:50
>>10
営業がこんなところで遊ぶな
12デフォルトの名無しさん:2001/07/27(金) 14:48
補間って線形でやるの?
ステアリングとかアクセルワークをしっかりやらないと
不自然な動きになりそうな・・・

#と、真面目な方に話を振ってみる(^^;
13デフォルトの名無しさん:2001/07/27(金) 15:05
・コースデータに「どっち向きに進め」ってのを
 網状に大量に埋め込んでおく。
・理想のライン設定しといて、遺伝的アルゴリズムか何かで
 そいつに乗せる。車間距離その他も評価。
・問答無用でプレイヤーのほうに寄ってくる(ジッピーレース)
14デフォルトの名無しさん:2001/07/27(金) 16:25
もっと一般化して「思考ルーチンを語るスレ」とかにしてくりゃよかったのに。
15デフォルトの名無しさん:2001/07/27(金) 17:07
>>8
衝突したら敵車をクラッシュさせてリタイアさせる。

実際そんなゲームあったな。
16デフォルトの名無しさん:2001/08/01(水) 13:06
↓Boid系のプログラムを参考にするのはどうよ?
http://www.red3d.com/cwr/steer/CrowdPath.html
http://www.red3d.com/cwr/steer/Doorway.html
17デフォルトの名無しさん:2001/08/01(水) 13:10
>>14
同意。次スレはそれで逝こうYo!!
18デフォルトの名無しさん:2001/08/01(水) 14:10
>>16
いや、群れさせてもしょうがないと思うが(w

それはともかく、銀の弾丸はないと思うなあ。
んなもんあったら自動車メーカーが真っ先に採用してそうだ。
19デフォルトの名無しさん:2001/08/01(水) 16:03
>>16
2番目みてるとiroiroと妄想が膨らむヽ(´Д゚)ノ
20デフォルトの名無しさん:2001/08/01(水) 16:19
敵が群れで襲ってくるシューティングとか燃えそーだな
弾が来たらよけたりして・・・
ボスの周りを取り囲む数千匹の雑魚を撃ちまくる!やりてー
21デフォルトの名無しさん:2001/08/01(水) 23:41
良いスレだね。

>もっと一般化して「思考ルーチンを語るスレ」とかにしてくりゃよかったのに

レースゲームのアルゴリズムは良くわからないのだけどRPGとかなら
仕事でもよく作ってるので敵のアルゴリズムなんかも話せるスレッドが
ほしいね。

さらにゲームにしぼって「ゲームの思考ルーチンを語るスレ」希望!!
22デフォルトの名無しさん:2001/08/01(水) 23:49
「ゲームスレ乱立反対スレ」希望!
23デフォルトの名無しさん:2001/08/01(水) 23:57
ゲームという分野は様々な分野の知識が色々(大抵は浅く)必要に
なってくるので、出来ればこのままこの板で議論できたほうが、
様々な分野で活躍する有能な方々の意見が聞けて嬉しい気もする
がどうか?
#そーゆー素晴らしい人はたまにしかいないみたいだが。
24デフォルトの名無しさん:2001/08/01(水) 23:57
>いや、群れさせてもしょうがないと思うが(w
めちゃ笑った!
25デフォルトの名無しさん:2001/08/01(水) 23:59
つーか厨房だらけになるからやだってんでしょ>23
26名無しさんWBS:2001/08/02(木) 02:42
だってゲーム制作技術板作られへんもん〜もん〜
少なくともあたしゃかなり自制してますぜ。
まったくスレ立ててないし全部sageカキコだし。
でもまたハゲか夏厨か何かの荒らしが酷いですな。鬱。
27デフォルトの名無しさん:2001/08/02(木) 10:55
>>18
逆に群れさせようぜ〜。
都内の渋滞の中でバトルするとか(藁
28デフォルトの名無しさん:2001/08/02(木) 11:04
>>21
単純に「思考ルーチンを語るスレ」にしちゃうと
AIとかの方に話が行きそうでやだな〜
個人的にはゲームに実装できる敵キャラのアルゴを語るほうが良いかも。
29デフォルトの名無しさん:2001/08/02(木) 14:05
いいじゃん、ここが「マターリ思考ルーチン」スレってことで。
30デフォルトの名無しさん:2001/08/07(火) 10:40
なんとなくage
31デフォルトの名無しさん:2001/08/07(火) 12:10
スレタイトルの変更ができるといいのにな
32デフォルトの名無しさん:2001/08/08(水) 02:05
少なくともプレイヤーの視界の外にいる敵車はインチキ
やってるだろうね。プレイヤーの速度にあわせて単純に
座標だけ移動させるとか。
33デフォルトの名無しさん:2001/08/08(水) 02:06
昔のF-ZEROとかね>32
34デフォルトの名無しさん:2001/08/08(水) 02:30
>>33
GT3とかもきっとそうだよ
35名無しさんWBS:2001/08/08(水) 02:44
GTはやってないんちゃう?
リプレイで自由にカメラ対象のクルマ変えられるし。
36デフォルトの名無しさん:2001/08/08(水) 02:47
なにげに良スレの予感
37デフォルトの名無しさん:2001/08/08(水) 08:15
ちょっと前のゲームはそうだったね(レイヂレーサーとか)
1画面に3台までとかしか適車が出ないようになってる。
それに気がつくと一気に萎える
38デフォルトの名無しさん:2001/08/08(水) 10:29
>>32やはり、見えない敵車は線形補間とかでテキトーに動かしといて
視界に入ったやつだけキッチリ剛体計算とかするんですかね?
39デフォルトの名無しさん:2001/08/08(水) 19:49
>>35
いや、リプレイの時に作っているのじゃないか?
つーか見える部分だけちゃんと動かすことにして、
その分緻密にしたほうがいいんじゃないの
見えない部分の計算に足引っ張られて、見える部分の
グレードまで落とすよりも
40デフォルトの名無しさん:2001/08/08(水) 20:53
つーかGTの場合、6台全部自車の周りに固まるようになってるから
特例処理入れて面倒くさくするこたないと思われ
41デフォルトの名無しさん:2001/08/09(木) 20:23
6台ぐらいの計算で足引っ張られることなんてないと思うし
42デフォルトの名無しさん:2001/08/09(木) 20:32
>>41 3Dゲームつくったことある?
4341じゃないけど:2001/08/09(木) 23:43
PS2はわからんけれど、PCだったら十分可能だな。6台くらい。
実際、思考計算と簡易力学計算のコストは大したこと無い。
描画のほうが重いくらいだと思う。
4441:2001/08/10(金) 13:23
PCでしかつくったことないからかもしらんが、
物理計算なんて描画にくらべたら負荷なんて感じない。
トルクから角加速度もとめて、回転行列計算するとこは多少計算多いけど。

ルンゲクッタ法とか使わなければ。
45デフォルトの名無しさん:2001/08/10(金) 13:46
ちんげくった
46デフォルトの名無しさん:2001/08/10(金) 15:18
>>45
新鮮なバラもこのとおりになるくらい寒いです。
47 :2001/08/10(金) 15:38
制御工学つーより、
工業大学の工業力学概論程度の知識で十分じゃん。
48デフォルトの名無しさん:2001/08/10(金) 18:03
V=dX/dt , a=dV/dt , F=m*a

これを、DDAで解けばいいだけ?
49デフォルトの名無しさん:2001/08/10(金) 19:41
DDAってなに?
50デフォルトの名無しさん:2001/08/10(金) 19:44
>>48
車なら剛体だから回転処理がいるだろ。
トルクと慣性テンソルから角加速度ベクトルもとめて、
角速度もとめて、そっからクォータニオンにするやつ。
51OuterFormula:2001/08/10(金) 19:48
>>48
車体の回転運動と前後のタイヤの摩擦も計算すると良い。
車がスピンするようになって面白いぞ。
PC9801VMで作ったことがある。
52デフォルトの名無しさん:2001/08/10(金) 20:34
面白くなってきた。age

俺はサスペンションの計算から
わからなくなっちゃったんだけど
詳しい人おねがーい

あとさ、車体<->サスペンション間のリンケージって
シミュレートする意味あるのかな。
GTではそれくらいやってんの?
53デフォルトの名無しさん:2001/08/10(金) 21:31
デジタル微分解析だよ  >>49
検索してみ
54デフォルトの名無しさん:2001/08/14(火) 00:28
そもそも、レースゲームの仕組みがわかりません。
コースのほうを動かすのですか?
55_:2001/08/14(火) 12:57
>>54
それでもいいんじゃない
普通は自車を動かしてそれにカメラが追従する
56デフォルトの名無しさん:2001/08/14(火) 13:24
>>55
(コースを動かすのは)あまりよくないよ。他車もあるのだから
はじめから車が移動するようにしたほうがいい
57デフォルトの名無しさん:2001/08/14(火) 13:34
そうだね。
まずは、次の表示フレーム用の車の位置と角度を計算。
全部の車の位置と角度が決まったら、カメラアングルや画角を決定。
あとはレンダリングして画面に出す。
…基本的にはこの繰り返しではないかと
58デフォルトの名無しさん:2001/08/14(火) 13:49
最終目標は、インチキグリップ車じゃなくて、自車と対等な車に乗せて、
アクセルとペダル操作だけコンピュータにやらせることでしょう。
当然さいしょは、遅めに走って探りを入れながら、
ブレーキングポイントとかラインを学習していったりね。
59デフォルトの名無しさん:2001/08/15(水) 00:19
>>58

まず2Dで実験だね
60デフォルトの名無しさん:2001/08/15(水) 00:45
>>55 >>56 >>57
ありがとうございます。
デイトナUSAをずーっとやっているとコースを動かしているような気がするので、
それならば、他車を少しづつ近寄らせたり離したりするだけですむかな?と思ったもので。
61デフォルトの名無しさん:2001/08/15(水) 08:08
まあもろエフゼロもコース動かしてるからな。
擬似3Dなヤツは大抵そうじゃない?
62デフォルトの名無しさん:2001/08/16(木) 15:01
>>61
擬似3Dの奴はOutInOutのセオリーが通用しないから笑えたね。
突っ込みのベストラインはインベタ。
一応遠心力が働くらしいから、その後はアウトにズルズルすべる感じだ。
63デフォルトの名無しさん:2001/08/17(金) 23:13
放課後の帰り道。林君が曲がり角に待ちかまえていた。
手には手紙。
「・・・何?」驚いて聞き返す。
「俺はこのスレが好きだ。つきあってください。」

林君の、突然すぎる告白だ。
さぁ、貴方ならどうする?

1・ラブレターを破る(sage)
2・ラブレターを受け取る(age)
64デフォルトの名無しさん:2001/08/18(土) 01:28
放課後の帰り道。林君が曲がり角に待ちかまえていた。
手には手紙。
「・・・何?」驚いて聞き返す。
「俺はこのスレが好きだ。つきあってください。」

林君の、突然すぎる告白だ。
さぁ、貴方ならどうする?

1・ラブレターをしゃぶる(sage)
2・ラブレターを生け捕る(age)
65デフォルトの名無しさん:2001/08/18(土) 12:32
>>64 イイ(・∀・)!!

でもsage。
66デフォルトの名無しさん:2001/08/19(日) 01:24
FZEROなんかのゲームで道とのコリジョンってどうやってとるのが良い?

道の法線取ってるの?
67デフォルトの名無しさん:2001/08/19(日) 04:01
パネキット自動操縦させてみたい
68デフォルトの名無しさん:2001/08/20(月) 10:38
>>66
法線て路面の法線?
69デフォルトの名無しさん:01/08/27 23:29 ID:rH3n9S2o
>68

そう。道の法線です。これを見て進行方向を決めれば良いの?
70デフォルトの名無しさん:01/08/30 10:22 ID:m03nWbTY
>>52
普通に60FPSとかで積分すると発散しそう.
車体1トン<>タイヤ数キロでしょ?
タイヤの質量無視して解くのかな?
7170:01/08/30 10:27 ID:m03nWbTY
>車体1トン<>タイヤ数キロでしょ?
つーか,バネ定数数万[kg/s^2]とかあるんじゃなくて?
タイヤdjYO
72デフォルトの名無しさん:01/09/05 15:31 ID:UCN2Ft3.
>>13
・コースデータに「どっち向きに進め」ってのを
 網状に大量に埋め込んでおく。
Baio100%のゲームであったね。
73デフォルトの名無しさん:01/09/07 18:00
>>69
面の法線は面に対して垂直の方向だから、路面の法線というと空方向を向いちゃうよ。
道の法線てなんだろう?道の中心線をたどる曲線に対する法線てことこかな?
これもあまり車の向きを決める材料には苦しいな。
多分殆どのゲームは>>72の方法を採用してると思う。
向き情報を辿っていくと結果的にベストラインを走るようになるんだろうな。
74名無しサソ:01/09/11 06:22
>70
 自分も作ったことがあるけど、タイヤの質量は無視、サスペンション
は上下動のみの再現にしてたよ。車体の慣性モーメントとタイヤの
各パラメータをもうちょっといじればそれなりに良い挙動になりそう
なんだけど、ずっと停滞中(苦笑)リプレイモードも導入しているけど、
これをちょっといじれば簡易的な自動操縦は出来そうだね。

 果たして、頭文字Pを知っている人はどれだけ居る物か(苦笑)
とりあえず、sageておく
sageとく
>>74
頭文字Pの人?

なんか自動操縦じゃなくてシミュレーション系の話になってるから、
参考になるリンクでも載せとくか。
ttp://www.miata.net/sport/Physics/
有名どころだけどね。
なんで>>16のがないがしろにされてるんだ?
群体制御だけじゃなく道路と進行方向に対する
最適なステアリング方法が論じられてるじゃん。
これみたら>>73の話とか、一発解決よ。
アブストラクトで「ゲームのための」っていきなり
書いてあるし。

http://www.red3d.com/cwr/steer/
79デフォルトの名無しさん:01/10/18 15:46
>>74
頭P大好きでしたよー
懐かしいのでage
80sage:01/10/24 19:09
>>77>>78
感謝!
googleで「日本語のページを検索」にチェック入れるようだと
だめですね。
80
ミスった…
82デフォルトの名無しさん:01/10/26 00:19
http://www.liquidcode.org/worm.html

このゲームを自動でクリアできるプログラムって作れますか?
83デフォルトの名無しさん:01/10/26 00:53
>>82
 | ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|  フーン フーン
 |_∧ ∧_∧ ∧_∧  | フーン フーン フーン
 |´_ゝ`) ´_ゝ`)( ´_ゝ`) | フーン フーン フーン
 | ∧_∧  /⌒   ヽ∧⊥∧ フーン フーン フーン
 |( ´_ゝ`) /| ∧_∧ ( ´_ゝ`) フーン フーン フーン
 |⌒ ∧_∧( ´_ゝ`) ∧_∧フーン フーン フーン
 |)  ( ´_ゝ`) ∧_∧( ´_ゝ`) フーン フーン フーン
 | /⌒   ヽ ( ´_ゝ`)    ヽフーン フーン フーン
 | /| |   | |/⌒   ヽ   | | フーン フーン フーン
 |ノ \\ /|/| |   | |\./| |フーン フーン フーン
 |   \\ ノ \\./| |\\ | | フーン フーン フーン
 |/⌒\し'/   .\\ | |ヽ し'(ノフーン フーン フーン
 |     >/ /⌒\し'(ノ  > ) フーン フーン
 |   / /    > ) / /
 |  / / つ    / / (_つ
 |  し'     (_つ   |
 | ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ \
 |      ゾロゾロ…     \
 |                  \
84デフォルトの名無しさん:01/10/28 00:48
>>78
それはきっと、英語が読めないからですage。
プログラミングそのものがつらくて鬱・・・
85デフォルトの名無しさん:01/10/28 12:39
>>84
いや、そのページを読み進めて行くと2度と読みたくなくなる現象が起こるのだ。
他の環境でもそうなのかな?
>>78
Boid系っつーからてっきり普通のBoidかと。すまんのう。
8785:01/10/28 15:43
誤解される内容だったので補足すると、
Win2K+IE6のうちの環境で2ページ目のアプレットが読み込まれると
Winごとフリーズしてしまう。3度やって3度ともそうだったのでもう行く気がしない。
>>85
Win2K+{IE5, Netscape6}では見れるよ.いちおう.
やっぱIE6はまだまだダメか。
90デフォルトの名無しさん:01/11/02 01:04
良スレage
基本的にライントレースじゃないのかなぁ。
92名無しサソ:01/11/09 03:07
>79
 あ、知っている人が居てくれた(笑)

 かつての常連さんですか?今度又新しいことやるので、
見ていたらよろしく。私信なのでsage
一番ネックなのが横力(サイドフォース)の計算部分だと思うんだけど、
みんなどうやってんだろ?
タイヤ工学とかに載ってる式つかってます?
シミュレータ系レースゲーム開発経験者の降臨を待つ。
95名無しサソ:01/11/30 15:59
>93
 タイヤ工学だね。Fialaの理論というのを使って、タイヤをモデル化
しているよ。ちゃんとパラメータを揃えれば、横力とセルフアライニング
トルクの両方が出せる。でも、離散化がうまくいってないのが悩み所。
タイヤの微少滑りが小さすぎるからね。ここを上手く工夫しないと。

 あと、サスペンションもちゃんとモデル化したいね。真面目にやれば
再現できそうだけど、個人だとちょっと手間がかかりすぎる。そもそも、
車に関して手に入れられるパラメータが少なすぎてね。
よかった。自分も使ってるんだけど、みんなどうなのかなと思ったので。
ただ、パラメータがおかしいのかわからないんだけど、
すぐにすべり限界がきてしまう。最大1.0*重力の力だとあまり曲がらない。
摩擦係数が2.0ぐらいがちょうどいい感じになっちゃう。
重心位置とか、慣性モーメントとか、いろいろ原因あるんだろうけど、上手く
いかないんです。
離散化のせいでこういう感じになるってことは考えられます?

サスペンションなら車両運動性能とシャシーメカニズムって本がくわしいです。
まぁ、自分も上下運動のみですが。
97名無しサソ:01/12/03 17:59
>96
 ずばり離散化のせいでしょう。GTシリーズもそのせい
でドアンダーの再現が出来ていないような気が。

 F355だと、前後2輪に仮定することでシミュレーション
をより厳密にやっているような。ただ、やっぱり大きく
スリップすると挙動が変に。難しい。
やっぱりそうなんですね!ありがとうございます。
タイヤの微少滑りが小さすぎるから、ってのは
離散化によって、すべり量が大きくなってしまい、限界の判定が実際より
早く行われるのが問題ってことですよね。

なるほど、ここまでわかれば、何とか上手く工夫できるかも。

あと、サスのシミュレーションは垂直抗力にもかかわってくるから、たしかに
重要ですね。