[過去ログ]
物凄い勢いで誰かが質問に答えるスレ@ゲーム製作技術 (1001レス)
物凄い勢いで誰かが質問に答えるスレ@ゲーム製作技術 http://game.5ch.net/test/read.cgi/gamedev/1005204354/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
411: 名前は開発中のものです。 [sage] 02/04/06 08:11 ID:??? >>410 Rは水平軸との角度で,vは角速度ですかね? 冲=1.0で省略てな感じかな? まっとうなのは以下のようになると思います 振子の中心のモーメント M = m g cosθ × L 振子の中心の慣性モーメント I = m L^2 よって角加速度 ωdot = M / I = g cosθ / L あとは積分 while ( ) { ω += 冲 * G * cosθ / L; θ += dt * omg; x = L * cosθ; y = L * sinθ; t += 冲; } これだと逆三角関数いりませんぜ >無視してるようでゴメンなさい オナニーして公開しただけですの気にしないで下さい http://game.5ch.net/test/read.cgi/gamedev/1005204354/411
412: 411 [sage] 02/04/06 08:16 ID:??? × θ += dt * omg; ○ θ += dt * ω; http://game.5ch.net/test/read.cgi/gamedev/1005204354/412
413: 403 [sage] 02/04/06 08:38 ID:??? >411 えーと、中心点の座標(ax,ay)とおもりの座標(px,py)だけわかっている状態で 振り子運動をさせたいんです なので現在 function R() { var x,y,result;//ローカル変数確保 x = ax-px; y = py-ay; result = atan(x/y); return result; } function L() { var x,y,result;//ローカル変数確保 x = (ax-px)*(ax-px); y = (py-ay)*(py-ay); result = sqrt(x+y); return result; } として、>410のコードで動かしてます それから振り子運動中に外力を加えたりしてるので 時間軸入れるとうまくいくかわからないので省略してます >411の場合は初回だけ振れ角を出してやればいいのかな? http://game.5ch.net/test/read.cgi/gamedev/1005204354/413
414: 403 [sage] 02/04/06 08:40 ID:??? あと>411で ω += 冲 * G * cosθ / L; なのに t += 冲; するのは何故ですか? http://game.5ch.net/test/read.cgi/gamedev/1005204354/414
417: 411 [sage] 02/04/06 11:44 ID:??? 外力をモーメントであらわせば>>411でいけると思います LとGによるけど,そんなに冲細かくしなくてもいいと思います. (ax,ay)と(px,py)からLとθの初期値でるでしょ.角速度も適当に決めればいい 411は(ax,ay)が原点だから,411のx,yに代入する所で(ax,ay)を足してやればイイ http://game.5ch.net/test/read.cgi/gamedev/1005204354/417
418: 411 [sage] 02/04/06 12:23 ID:??? でこんな感じ while ( ) { //モーメント M = mass * G * cosθ * L; //外力Fが重心において回転方向に加わる場合 M += F * L; //(Lを含まないこともあろうとあえてLは約分せず) ω += 冲 * M / ( L^2 * mass ); θ += dt * omg; x = ax + L * cosθ; y = ay + L * sinθ; } と書きながら>>410が今やっと解りました(アフォ でもやっぱ角速度と角度で管理したほうがよくないですか? 冲=1.0にしてθ=π/2 - R とすればほぼ同じ形になります で,一つ違う所は, × v += -(G/L)*sin(R); ○ v += -G*sin(R); じゃないかな・・・ 次元も合うし.冲=1.0で考えると前者のvは角速度ですよ(L=1.0なら別ですが) http://game.5ch.net/test/read.cgi/gamedev/1005204354/418
419: 411 [sage] 02/04/06 12:38 ID:??? だんだん自信無くなってきて結局オナニサンプル作っちゃった WindowsConsole+入力受け付けず 10秒で終了,5.0〜5.2秒間モーメント加えてる http://www.pureweb.jp/~akimasa/up/index.php http://www.pureweb.jp/~akimasa/up/img/dat003.lzh #あきまさ氏のあぷろだ拝借 http://game.5ch.net/test/read.cgi/gamedev/1005204354/419
420: 403 [sage] 02/04/06 19:30 ID:??? >418 なるほど・・・ ただ-(G/L)なのは振り子をこぐのに必要なんです 私もあきまさ氏のあぷろだを借りてUPしてみました http://www.pureweb.jp/~akimasa/up/img/dat004.swf ←キーと→キーが振り子を押す力 ↑キーと↓キーでひもの伸び縮み SPACEキーでおもり切り離し ブランコをこぐ要領で、まず左右に押して ある程度勢いがついたら∞を描くようにヒモを伸び縮みさせると 振り幅がどんどん大きくなります ↑の振り子エンジンは>410です >411とかも試してみたんですが 自分の読解力が無いせいか、何故かうまくいかない あと丸め誤差のせいなのか ヒモ長が微妙にずれていく・・・ http://game.5ch.net/test/read.cgi/gamedev/1005204354/420
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.035s