ハーフライフとか、オブリビオンのあれです。
詳しい人教えて
探検
物理演算エンジンってどうやって作るの?
■ このスレッドは過去ログ倉庫に格納されています
2007/05/24(木) 19:10:51ID:NTMqyc86
2011/07/05(火) 01:29:26.88ID:V4itKPNJ
>>55
http://www.dotup.org/uploda/www.dotup.org1759994.zip
物理計算の主要な部分だけ。3、4年前だから何やってるかわからんwww
具体的には何が知りたいんだ?
http://www.dotup.org/uploda/www.dotup.org1759994.zip
物理計算の主要な部分だけ。3、4年前だから何やってるかわからんwww
具体的には何が知りたいんだ?
2011/07/05(火) 20:58:16.48ID:Mr5lFhmq
2011/07/05(火) 21:30:52.64ID:V4itKPNJ
2011/07/05(火) 22:36:42.54ID:Mr5lFhmq
2011/07/14(木) 15:23:42.32ID:UBDMyCUV
61名前は開発中のものです。
2011/07/22(金) 12:09:26.27ID:7j2Z83oX 物理エンジンの作り方って需要あるの?
ガチの本とか書いたら売れるのかな?
ガチの本とか書いたら売れるのかな?
2011/07/22(金) 20:03:08.75ID:KJLHBA7J
しかし英語がよめんかった
2011/07/22(金) 20:33:54.61ID:7j2Z83oX
2011/07/22(金) 20:49:28.81ID:7j2Z83oX
いいの見つけた
http://kmkz.jp/mtm/mag/lab/
http://kmkz.jp/mtm/mag/lab/
2011/07/23(土) 15:33:51.14ID:q6zHW1Rk
既存の物理エンジンだけで飽和状態なので需要はないに等しい。使い方の方が圧倒的に需要あると思う。
2011/07/23(土) 16:01:34.95ID:QTkODIag
そうなのかよ。
原理から知りたいっていう熱心な若者はいないのか?
原理から知りたいっていう熱心な若者はいないのか?
2011/07/24(日) 02:58:39.80ID:8WLTW02y
○○というゲームの○○の動きをプログラムで再現してみよう
みたいなのはうけるんじゃない 本にはできなさそうだけど
みたいなのはうけるんじゃない 本にはできなさそうだけど
2011/07/24(日) 06:58:28.18ID:1B5hZOTx
昔、本買って自作したけど、独立した物体同士の相互作用までは
出来たけど関節(拘束)のやり方が載ってなくて挫折した。
なのでそこんとこ頼むわ>本書く人
出来たけど関節(拘束)のやり方が載ってなくて挫折した。
なのでそこんとこ頼むわ>本書く人
2011/07/24(日) 12:39:43.00ID:P4/beFJ3
関節のほうが計算量少ないから、簡単だぞ
なんで、できなかったんだ?
なんで、できなかったんだ?
2011/07/25(月) 09:17:53.21ID:zl9SHWwo
>関節のほうが計算量少ない
え?え?(^ω^;)
ググってもよー判らんわ。関節。
え?え?(^ω^;)
ググってもよー判らんわ。関節。
2011/07/25(月) 09:21:53.53ID:MgUklQO7
それって、(本に記載されているロジック通りに組んだら)出来た
って事?
って事?
2011/07/25(月) 14:32:49.26ID:tsuW/g3z
関節は、連立一次方程式になるから、計算量最悪は n * n * nで解ける。
普通の接触は、線形相補性問題になるから、計算量は最悪、2^n。
実際は反復法でやるから、ここからだいぶ減らしていくんだけど。
減らしていっても、関節のほうが圧倒的に計算量が少ない
普通の接触は、線形相補性問題になるから、計算量は最悪、2^n。
実際は反復法でやるから、ここからだいぶ減らしていくんだけど。
減らしていっても、関節のほうが圧倒的に計算量が少ない
2011/07/26(火) 01:20:44.78ID:Nkp9uwXJ
俺が買った本、
「ゲーム開発のための物理シミュレーション入門」って奴なんだけど、
まず、
>普通の接触は、線形相補性問題になるから
ここがすっぽ抜けてる希ガス。
なので接触したらいい具合に押し戻すって感じ。ダメだこりゃ。
「ゲーム開発のための物理シミュレーション入門」って奴なんだけど、
まず、
>普通の接触は、線形相補性問題になるから
ここがすっぽ抜けてる希ガス。
なので接触したらいい具合に押し戻すって感じ。ダメだこりゃ。
2011/07/26(火) 07:24:43.62ID:zKjxXwQ5
>>52のpdfを検索したけどLCPとかcomplementary等の単語がみつからなかったけど、
そのへんものってるでしょうか?>読んだ人
そのへんものってるでしょうか?>読んだ人
7552
2011/07/26(火) 07:35:42.55ID:VOyddbGv >>74
俺は実は読んでないwww今読んだら、quadratic programって書いてある。同じことだと思う
ページG53に、そのことが書いてあって。関節も一緒に扱えるみたいなことが書いてある
需要あるのか?
俺は実は読んでないwww今読んだら、quadratic programって書いてある。同じことだと思う
ページG53に、そのことが書いてあって。関節も一緒に扱えるみたいなことが書いてある
需要あるのか?
2011/07/26(火) 07:47:43.81ID:VOyddbGv
剛体シミュレーションの処理時間のほとんどは、線形相補性問題に裂かれるから
その速い解き方を考えれば有名になれるはず
剛体特有の性質を使わないと速くならないから、剛体の接触から得られる行列がどういう性質を持っているか考えるのが重要
その速い解き方を考えれば有名になれるはず
剛体特有の性質を使わないと速くならないから、剛体の接触から得られる行列がどういう性質を持っているか考えるのが重要
2011/07/27(水) 17:02:29.87ID:jpUYGiJj
みんな言語何使ってるの?
勉強用のやつ作ってみようと思ってるけど、C#とかDelphiとか読めるの?
C++は使いたくないお
勉強用のやつ作ってみようと思ってるけど、C#とかDelphiとか読めるの?
C++は使いたくないお
2011/07/27(水) 17:58:59.82ID:jpUYGiJj
http://www.ynl.t.u-tokyo.ac.jp/publications/pdf2007/oral07/20.pdf
これのピボット法じゃなくて、ガウスザイデルに近いやり方でやってた。
収束が保障されてないってかかれてるけど、剛体に関して言えば全体のエネルギーみたいなものに着目すれば
各ステップごとに確実に減少していくから収束はするんじゃないかなって思ってる。
lemke法は知らない。今調べてる
これのピボット法じゃなくて、ガウスザイデルに近いやり方でやってた。
収束が保障されてないってかかれてるけど、剛体に関して言えば全体のエネルギーみたいなものに着目すれば
各ステップごとに確実に減少していくから収束はするんじゃないかなって思ってる。
lemke法は知らない。今調べてる
2011/07/27(水) 18:22:13.85ID:DcAliuH1
JavaかC#ならいいんでない?
ちっと重いかもだが
ちっと重いかもだが
2011/07/27(水) 21:27:20.00ID:jpUYGiJj
わかったC#で作ってみる
2011/07/29(金) 22:36:28.71ID:YKUBReqf
lemke法、本当に収束するのかとか、どのくらいで収束するのかとか理解してないけど。少し理解した
剛体が増えると不利だな。元々の疎行列が活かしづらい
マルチグリッドLCPが出来れば超速くなるはず
剛体が増えると不利だな。元々の疎行列が活かしづらい
マルチグリッドLCPが出来れば超速くなるはず
82名前は開発中のものです。
2012/01/08(日) 13:49:46.00ID:i1iv+V/j BulletXのソース読んでみたけど、あれって拘束ベースなのかな?力積ベースなのかな?
constraint(拘束)Solverっていうディレクトリが在ったから読んでたら、Impulse(力積)を加えてたんで判んなくなった。
拘束ベースの判り易いソースって知ってたら教えて欲しいな。VC++よりはC#の方が読み易いからうれしい。
constraint(拘束)Solverっていうディレクトリが在ったから読んでたら、Impulse(力積)を加えてたんで判んなくなった。
拘束ベースの判り易いソースって知ってたら教えて欲しいな。VC++よりはC#の方が読み易いからうれしい。
83名前は開発中のものです。
2012/02/25(土) 23:00:55.81ID:HsM02eP/ 拘束条件を解く方式のエンジンでも、拘束されてる(物体どうしが一定時間以上
連続して接触している)ときも常に力積を加え続ける方式のものもあるよ。
つまり、力積が吊り合ってたら物体が静止状態になるってことね。
ちなみに、ソース読むよりも代数学の行列とか勉強した方が早いかも。
連立方程式を反復法で適当に解いてくエンジンとか、
すごい高度な数学のテクニックで解いてくエンジンとかいろいろある。
まずそっちの知識が無いと、ソースだけ読んでもわけわからん。
連続して接触している)ときも常に力積を加え続ける方式のものもあるよ。
つまり、力積が吊り合ってたら物体が静止状態になるってことね。
ちなみに、ソース読むよりも代数学の行列とか勉強した方が早いかも。
連立方程式を反復法で適当に解いてくエンジンとか、
すごい高度な数学のテクニックで解いてくエンジンとかいろいろある。
まずそっちの知識が無いと、ソースだけ読んでもわけわからん。
84名前は開発中のものです。
2012/02/25(土) 23:04:14.93ID:lzeArZyh85名前は開発中のものです。
2012/02/25(土) 23:05:24.17ID:lzeArZyh 撃力について
衝突したら撃力を加えるっていうのを何度もやる。
静止状態も実は撃力を何度も加えて結果的に静止してる
これは静止状態が重いんだわ
衝突したら撃力を加えるっていうのを何度もやる。
静止状態も実は撃力を何度も加えて結果的に静止してる
これは静止状態が重いんだわ
86名前は開発中のものです。
2012/02/25(土) 23:08:49.02ID:lzeArZyh だから、それに加えて力積 or 力に関してのLCP(線形相補性問題)を解く
これはどういう式かっていうと
普通静止させたい場合は、衝突部分の相対速度の法線成分が0になるっていう式を連立させて解けばいいよな?
でも、離れようとしてるのに力を加えたり、マイナスの力を加えるのはおかしいよな?
だから
力 >= 0、相対速度 >= 0、力 = 0 or 相対速度 = 0
っていう式を立てるのよ
どっちかがゼロでなければもう片方はゼロっていう
これを高速に解くのがキモなの
これはどういう式かっていうと
普通静止させたい場合は、衝突部分の相対速度の法線成分が0になるっていう式を連立させて解けばいいよな?
でも、離れようとしてるのに力を加えたり、マイナスの力を加えるのはおかしいよな?
だから
力 >= 0、相対速度 >= 0、力 = 0 or 相対速度 = 0
っていう式を立てるのよ
どっちかがゼロでなければもう片方はゼロっていう
これを高速に解くのがキモなの
87名前は開発中のものです。
2012/02/25(土) 23:13:50.63ID:lzeArZyh おおまかな流れとして
・撃力を加える(静止状態とかだとかなりの回数になるから、どこかで打ち止め(近似))
・重力とかの外力を加える
・LCPを解く
速度と加速度を別に保持しておくか、速度だけにするか
つまりLCPで解く対象を速度にするか、加速度にするか
撃力を打ちどめることが多いので、近似になるけど速度をLCPで押さえこんだほうがいい。撃力を打ち止めてほっておくとめり込む
LCPで解く対象は速度だから、外力を加えるときは、dtをかけて力積として加えてしまう
・撃力を加える(静止状態とかだとかなりの回数になるから、どこかで打ち止め(近似))
・重力とかの外力を加える
・LCPを解く
速度と加速度を別に保持しておくか、速度だけにするか
つまりLCPで解く対象を速度にするか、加速度にするか
撃力を打ちどめることが多いので、近似になるけど速度をLCPで押さえこんだほうがいい。撃力を打ち止めてほっておくとめり込む
LCPで解く対象は速度だから、外力を加えるときは、dtをかけて力積として加えてしまう
88名前は開発中のものです。
2012/02/25(土) 23:15:24.27ID:lzeArZyh ペナルティ法
めり込みに応じて反発力を。めり込んだ体積に比例させたり、距離に比例させたり
ステップ数が十分短ければどれも正しいんだけど、ステップ数が広いときにどれがいいのか
って分からない
ステップ数を広くできないから、他の方法と比べて衝突判定のコストが上がってしまう
めり込みに応じて反発力を。めり込んだ体積に比例させたり、距離に比例させたり
ステップ数が十分短ければどれも正しいんだけど、ステップ数が広いときにどれがいいのか
って分からない
ステップ数を広くできないから、他の方法と比べて衝突判定のコストが上がってしまう
2012/02/26(日) 22:13:56.93ID:uCaFSiki
>>82-88
レスありがとうございます。>>82です。
物理エンジン関係の資料はいくつか読んで、物理・数学関係は断片的な知識としてはあります。
それをプログラムに実装するにはどうしたらいいか判らなくてソース読んでました。
>>82を書き込んだ後、拘束ベースに関しては以下の本読んで勉強してました。
http://www.amazon.co.jp/Physics-Based-Animation-Graphics-Jon-Sporring/dp/1584503807
この辺りまでは、判りました。
>>普通静止させたい場合は、衝突部分の相対速度の法線成分が0になるっていう式を連立させて解けばいいよな?
LCPの解き方がキモなのですね。次は、LCPの辺り重点的に読んでみます。
レスありがとうございます。>>82です。
物理エンジン関係の資料はいくつか読んで、物理・数学関係は断片的な知識としてはあります。
それをプログラムに実装するにはどうしたらいいか判らなくてソース読んでました。
>>82を書き込んだ後、拘束ベースに関しては以下の本読んで勉強してました。
http://www.amazon.co.jp/Physics-Based-Animation-Graphics-Jon-Sporring/dp/1584503807
この辺りまでは、判りました。
>>普通静止させたい場合は、衝突部分の相対速度の法線成分が0になるっていう式を連立させて解けばいいよな?
LCPの解き方がキモなのですね。次は、LCPの辺り重点的に読んでみます。
90名前は開発中のものです。
2012/02/27(月) 08:02:04.56ID:+ONGrtda ソルバも重要だけど、もちろん衝突検出の幾何学の部分も重要だよ。
そこがてきとーすぎると、やっぱり細かいとこで変な挙動になったり
誤差がふりつもってガクガクしたりするからね。
そこがてきとーすぎると、やっぱり細かいとこで変な挙動になったり
誤差がふりつもってガクガクしたりするからね。
2012/02/27(月) 09:37:13.51ID:nYOAmwnM
衝突検出に関しては、以下の本を1/3程度読みました。
「ゲームプログラミングのためのリアルタイム衝突判定」
時間さえ掛ければ自分のプログラムに応用できそうですし、挙動を見ながらの方が理解が早いと思っています。
初心者の自分には今時点では、目途の立っていない運動方程式の方に意識が行っています。
「ゲームプログラミングのためのリアルタイム衝突判定」
時間さえ掛ければ自分のプログラムに応用できそうですし、挙動を見ながらの方が理解が早いと思っています。
初心者の自分には今時点では、目途の立っていない運動方程式の方に意識が行っています。
92名前は開発中のものです。
2012/02/27(月) 11:18:23.63ID:svWsgWM6 衝突判定なんてLCPに比べればカスみたいなもの
適当やってればいい
Rapidだか、Opcodeとか参考にすれば?
普通にAABBTreeかOBBTreeでやるのが楽だな
運動方程式理解できないとか勉強足りないぞ。
オイラーのなんたらってやつやろ?
あとあの方程式は非線形だけどエネルギーを保存するやり方で差分化できる
ちょっと考えるとな
適当やってればいい
Rapidだか、Opcodeとか参考にすれば?
普通にAABBTreeかOBBTreeでやるのが楽だな
運動方程式理解できないとか勉強足りないぞ。
オイラーのなんたらってやつやろ?
あとあの方程式は非線形だけどエネルギーを保存するやり方で差分化できる
ちょっと考えるとな
93名前は開発中のものです。
2012/02/27(月) 11:20:53.53ID:svWsgWM62012/02/27(月) 12:11:08.44ID:nYOAmwnM
自分の作るプログラム上で予想どおりに動かなかった場合には、衝突判定も深く勉強しようと思います。
形状も最初は球や直方体やシリンダーといった単純な形状で考えて、シミュレーション出来たら種類を増やしていこうと思います。
自分のレベルではまだ複雑な事までチャレンジできるかんじでは無いので。
opecodeですか、ソースありそうですしダウンロードして見てみます。ありがとうございます。
形状も最初は球や直方体やシリンダーといった単純な形状で考えて、シミュレーション出来たら種類を増やしていこうと思います。
自分のレベルではまだ複雑な事までチャレンジできるかんじでは無いので。
opecodeですか、ソースありそうですしダウンロードして見てみます。ありがとうございます。
95名前は開発中のものです。
2012/02/27(月) 12:17:40.99ID:svWsgWM6 >>94
おいおい、最初はまず任意の多面体でやれよ
シリンダー専用衝突判定なんていうは高速化のためな
多面体でシリンダー作ればいいんだから。AABBTreeとかにすれば面の数に対して処理時間はそんなに増えない
opecodeソース読んでも分からないと思う。まあ、デモ動かしてみて計算速度の目安にするとか
解説読むとか
おいおい、最初はまず任意の多面体でやれよ
シリンダー専用衝突判定なんていうは高速化のためな
多面体でシリンダー作ればいいんだから。AABBTreeとかにすれば面の数に対して処理時間はそんなに増えない
opecodeソース読んでも分からないと思う。まあ、デモ動かしてみて計算速度の目安にするとか
解説読むとか
96名前は開発中のものです。
2012/02/27(月) 20:08:42.36ID:+ONGrtda >>93
やっかいだけど、現実的な解決方法はちゃんとある。
やっかいだけど、現実的な解決方法はちゃんとある。
97名前は開発中のものです。
2012/02/27(月) 20:13:04.45ID:+ONGrtda >94
判定方法にもよるけど、球とかシリンダーとかの曲面を含むようなのは
面倒だから後回しで、最初は頂点と辺(直線)と面だけで作れる多面体だけでいいよ。
なんとかツリーとかの判定の高速化も後回しでOK。
判定方法にもよるけど、球とかシリンダーとかの曲面を含むようなのは
面倒だから後回しで、最初は頂点と辺(直線)と面だけで作れる多面体だけでいいよ。
なんとかツリーとかの判定の高速化も後回しでOK。
98名前は開発中のものです。
2013/01/22(火) 15:53:44.40ID:JCFnqPH7 新しい剛体シミュの方法思いついた
もう少し練ってデモ作る
撃力でも拘束ベースでもペナルティ法でも無い奴
もう少し練ってデモ作る
撃力でも拘束ベースでもペナルティ法でも無い奴
99名前は開発中のものです。
2017/12/31(日) 20:12:15.69ID:/rN76OKL 簡単にお金が稼げる方法興味ある人だけ見てください。
グーグル検索⇒『来島のモノノリウエ』
UO82Y8FR9Z
グーグル検索⇒『来島のモノノリウエ』
UO82Y8FR9Z
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【足立区ひき逃げ事故】意識不明の20代女性が死亡 死者2人に [Ailuropoda melanoleuca★]
- ■緊急地震速報 熊本など [人気者★]
- 足立区11人ひき逃げ・37歳男逮捕 取り調べ中に暴れたり、会話がかみ合わないなど“異常行動“か [Hitzeschleier★]
- 相次ぐ中国公演中止に、シンガーソングライターらが続々高市首相に怒り表明「隣国の仲間たちに対して申し訳ない」 [muffin★]
- 相次ぐ中国公演中止に、シンガーソングライターらが続々高市首相に怒り表明「隣国の仲間たちに対して申し訳ない」★2 [muffin★]
- 🇺🇸🇨🇳米中関係は「極めて強固」とトランプ氏… ★8 [BFU★]
- 【高市悲報】台湾「日本が何言ってるか意味わからん😅」 [834922174]
- 【実況】博衣こよりのえちえちFantasy map simulatorミニキャラ死闘編🧪
- 【実況】博衣こよりのえちえちFantasy map simulatorミニキャラ死闘編🧪★2
- 【速報高市】在韓米軍司令官「韓国基地から中国を攻撃」 [614650719]
- あんなに「オールドメディア」と叩いてた普通の日本人さんが高市擁護記事と中国批判記事には一切現れない理由、誰にもわからない… [268718286]
- 【モンスト】モンスターストライク総合11/25【クソ浪人立てる時コマンドの補充をしろ🏡】
