10/05/10 13:06:11 CHwKLoKd
お暇な方、感想を聞かせて下さい。
URLリンク(www.free.netgamers.jp)
58:名前は開発中のものです。
10/06/06 01:29:20 cN/gk1I8
時間かかりそう
他の製作してる方いましたらスレ進行よろしく
59:名前は開発中のものです。
10/07/02 08:29:34 2KQItmTa
設計でつまづく悪寒
60:名前は開発中のものです。
10/07/17 12:23:09 QAlpEi+h
駅から出発した列車が最高速度まで加速するのはなんとなく理解できるんだが
車両数もホームの長さも違うのに、走行中の列車が駅を検知して定位置に停まる仕組みがわからん。
あれどうやって計算しているんだろ?
走行中に次の駅までの距離を計算してるとすれば
駅の直前にポイントとかの分岐があったらややこしくなるだけだし。
61:名前は開発中のものです。
10/07/17 23:49:07 gtur566I
60はなんの話してるんだ???
A7以降の話だと分からんが。
マス単位でしか動かないA4ベースの話なら結構単純なもので、
FreeTrainのソース見ればどうやって止まってるかは分かる。
62:名前は開発中のものです。
10/07/18 00:33:53 j2Z0agWD
>>60
おお!久しぶりに人がw
3Dでの話です。
マス単位でならパターンがあるから計算しやすいんですが、
3Dだと極論を言えば駅からすぐカーブのあるレールでも、
加速度の列車の最高速度と直前のレール軌道が決まっているので
出発直後の描写はある程度イメージがつきやすいんですが・・・
電車が駅を検出して定位置に停まるのに、駅に近づいている列車が50km/hだったり80km/hだったり
ホームの長さが100mだったり120mだったりすると
ブレーキをかけるタイミングが編成数やホームの長さ、列車の速度によってものすごく左右する。
なのでどうやって変化するのかなと。
ちなみにレールのカーブはカクカクじゃなくて、綺麗な円弧を描くほうです。
63:名前は開発中のものです。
10/07/19 16:50:00 MRjEkCQp
(誤)どうやって変化するのかと
(正)走行中にどうやって駅までの距離を検出するのかと。
すいません、文章がおかしかったですね。
電車でGo!でも人間が操作するので、ブレーキをかけるタイミングが悪いと定位置にうまく停まれません。
ただし加速度と最高速度は決まっているので、出発から最高速度までにかかる時間とそれまでにかかる距離は計算できます。
となれば今走っている位置から次停止する予定の駅の定位置までの距離にきたことを検出したら一定の減速度でブレーキをかければいいのですが、
レール上にブレーキ点を付加して走行中に次停まる予定の駅のブレーキをかける位置座標にきたらブレーキをかけるよう動作するのか
各列車が走行中に常に次の駅までの距離を計算し続けて、次停まる予定の駅が来たとき一定の減速度のブレーキをかけて定位置で停まるまでの距離の地点にきたことを検出してブレーキをかけるのか
そこのところがよくわからんです。。。
64:名前は開発中のものです。
10/07/19 18:09:32 U8+Emf1s
次の駅までの距離を持っているのが普通だろう
実際にシコシココード書いてる途中ならこんな疑問は出ないと思うが
仕様決めてる途中で出た疑問ならとりあえず応援だけはしておく
65:名前は開発中のものです。
10/07/19 19:56:45 MRjEkCQp
>>65
どうも意見ありがとうございました。まだ仕様というか動作の原理を確認中です。
一人で細々とやっている以上、いつ何時中断や頓挫があるかもしれないので
たぶんいつか大きな壁にぶつかる可能性大だと思う。
0.0001%の可能性の淡~い期待で見守ってくださると非常にありがたいです。
このスレでやってるのは、これをやろうとしたときこのスレが放置されてたので
このスレを流用しただけです。
66:名前は開発中のものです。
10/07/21 10:36:38 cG6vOynu
カーブのあるレールに列車を走らせるのって難しいよね
前と後の車輪をレールに乗せる計算ってどうすんだろう?
67:名前は開発中のものです。
10/07/21 11:11:23 O18++P2x
>>66
添わせるのは片方だけで考えればいいんじゃないの?例えば左側だけとか。
その際右側は重力に任せておけば自動的にレールの上に乗るはず。
ていうか、のらなかったらレールのデザインが間違っていると思われ。
前後の話なら、俺は前輪の軌跡を後輪が辿るようにしている。
厳密に言えば、レールに沿って走らせるのは前輪のみ。
後輪は辿っているように見えるだけ。前輪が通過した後、後輪が通過するまでに
レールが移動するとはまるが、そんなことは起こらないと想定している。
68:名前は開発中のものです。
10/07/21 12:49:53 L2lnwAyn
>>66>>67
一応それは考えている。
基本車輪は外側に直径80cmの鋼鉄製の円盤と、その内側に直径88cmの薄い円盤があって
レールに乗っかっているのは外側の円盤で、内側の半径が大きいのはレースから外れないように、刀のつばのような形で互いに脱輪を防止している。
あとはレール幅が1067mmか1435mmかの違い。車輪は前輪左右4つ、後輪も同じく4つあるのが一般的。
ただそこまで厳密に再現すると格子点の数が激増するはずだから内側の車輪の描写はしないほうがいいかも。
カーブの対応は、例えば60km/hで走行している列車の前方に右カーブのレールがあった場合、
60kmの速度は列車の進行方向に対して左側(外側)の車輪が対応する。
右側(内側)の車輪はカーブを時間単位で回転移動した量に対しカーブ半径から単位時間当たりの角速度を割り出し、
外側の車輪の速度(60km/h):内側の車輪の速度=(カーブ半径+レール幅):レール幅の比を利用して回転移動させる予定。
カーブ進入時の車輪の対応はそうしておいて、車体の動かし方なんだが、これは8つの車輪の位置座標の平均(中央部)を求めておいて、
車体の四隅の座標も中央部の相対位置座標と角速度にあわせて回転移動。
分岐ポイントについてもカーブの考え方と同じでいいと思う。ただしこれに分岐方向判断のフラグが付加される。
※ここまで書いてて前輪がカーブに入った時、後輪がまだ直線レール上にあったら綺麗な回転運動にならないことに気がついたorz
69:名前は開発中のものです。
10/07/21 13:30:13 KryI3BiF
>>68
なんでそんなまじめにやんのw
車と違って列車の車輪はレールの上しか通らないんだから、例えば先頭の右側の
車輪の車軸の位置の運動を記録して、右側の車輪はすべてその軌跡を適用するだけなのでは。
速度が急激に変化した場合補間が必要になるけれど。
従って1車両の運動そのものは先頭の車輪の左右どちらか(または両方)の車軸の位置を
質点と考えて、運動させればいいんじゃないか?
脱線とかすればまた別の問題になるけれど、線路の上を走っている限りは。
70:名前は開発中のものです。
10/07/21 21:08:18 mwybKm6u
物理シミュレータじゃないんだから、車輪がレール上に乗る必要は無い
カーブとか昇降なんか、軌道上を動くだけで十分
3Dでレンダリングするならそれだけで、脱線する事もめり込む事もない、か十分実用になる
見えないところで無駄処理してリソース食いつぶしてたら本末転倒
71:名前は開発中のものです。
10/07/21 23:33:26 L2lnwAyn
>>69
後輪や2両目以降の車両は前輪の後を追跡する形にするとアルゴリズムも簡単ですね。
自分頭がちがちに固いんだろうな・・・
>>70
そうですね。車輪を気にする人あまりいないのかもしれませんね。
できるだけ格子点を少なく、車体はある程度ビジュアル重視したいと思います。
プレーヤーによるダイヤ調整の結果、3D上で列車の衝突はあるかもしれませんが、
脱線や衝突のリアルな描写はしない方針でいきたいと思ってます。
72:名前は開発中のものです。
10/08/04 15:35:50 kp+gxEvS
FreeTrainとかどうなの?
73:名前は開発中のものです。
10/08/07 10:51:29 A+mgdyc7
>>72
FreeTrainとはたぶん趣旨が異なるよ
74:名前は開発中のものです。
10/08/18 16:05:18 NRXVvAV6
Railsimがオープンソース化になったよ
75:名前は開発中のものです。
11/11/15 04:14:35.98 1o0d9lRA
FTのスレがなくなってるけど、最後どうなったの?
76:名前は開発中のものです。
11/11/17 13:48:58.67 TK1PnYN1
FTは分裂しててスレ2つあったからもう片方は残ってるぞ。
77:名前は開発中のものです。
11/11/22 20:31:56.50 5iqlaSQN
ジャイアント・バーナード