ガラスの破砕をどのようにシミュレートできますか?


10

ガラス窓から石を投げてシミュレーションする必要があります。どうすればそれを達成できますか?

つまり、3D Studio Max 2012で石とガラスの3Dモデルを作成し、ガラスを粉砕して、両方を.xモデルとしてXNA 4.0にエクスポートすることを考えていました。次に、XNAでアニメーションを作成します。自分の物理エンジンを作成します。その方法は可能ですか?衝撃後にXNAでガラスを破壊することは可能ですか、それとも3DS Maxでそれを行うべきですか?「ガラスを破壊する」とは、石の開始速度と重量、およびガラス(すべてのユーザー定義)の抵抗(硬度?)によってビットが切断されるため、以前に粉砕されたガラスのビットを互いに切断することを意味します異なる方法でお互いに。

回答:


5

ボロノイ粉砕は、たとえば、かなり現実的な粉砕を作成する1つのアプローチです。製造中のガラスの構造変化により、通常は凸状の小さな破片に粉砕する驚くべき能力を持つ強化ガラス。また、ガラス板がある場合、必要なのは2Dボロノイ実装のみで、3Dは必要ありません。


3

最初は全体のメッシュから粉砕された破片を自動生成するのはかなり難しいと思います。破片が空中を飛んだり衝突したりするときの破片のダイナミクスのシミュレーションに興味がある場合は、破砕可能なコンストレイントなどを使用して、破片が引っ張られるまで一緒に保持するために、あらかじめ粉砕されたメッシュから始めます。十分な力で離れて。


こんにちはネイサン(再び)、2011年以降、このタスクに取り組みましたか?他にヒントはありますか?Thx
karlphillip

@karlphillip私はPhysX Destructionを使用してデモの作業をしましたが、個人的にはレンダリングに関するものだけで、そのプロジェクトに関する物理的なものは何もしませんでした。PhysX技術は、DCCツールで事前に粉砕された破片を生成し、損傷が発生したときにそれらを壊れていないメッシュと交換することで機能します。
ネイサンリード

3

粉砕されていないペインと粉砕されたペインを作成します。衝突が発生したら、粉砕されていないバージョンをオフにして、粉砕されたペインの使用を開始します。

ウィンドウに(ある程度一定のサイズの)石を1つ投げている場合、壊れたペインの3dモデル(ペイン内の破片をモデル化し、それぞれに対して単純な物理シミュレーションを実行すると、長い道のりをたどることができます。落下/飛行をシミュレートする破片)。カメラが非常に近い場合(またはスローモーションの場合)を除き、ピース間の衝突を行う必要はありません。周囲のジオメトリ(地面)と衝突するだけです。粉砕に伴う小さなガラス粒子の雲にいくつかの粒子効果をスプレーすることを忘れないでください。

石が中心に当たっているという仮定で壊れたペインを作成した場合、実際のヒット位置に基づいてピースをスケーリングし、ほとんどのヒットでかなり見栄えの良いブレークを取得できます。



1

あなたの答えと貴重な助けを本当にありがとう。ようやくプロジェクトを構築することができました。私はあなたの提案をすべて試しましたが、結局、このシミュレーションのために部分的に私自身の方法を選びました。

私は物理エンジンにbulledsharp(c#の弾丸物理ラッパー)を使用しましたが、sourceforge svnからのbulletsharpソースと新鮮な弾丸物理ソース自体でコンパイルした最新のものを使用することが重要です。プリコンパイルされた.dllではなく、Webサイトからダウンロードできます。プリコンパイルされたバージョンは私には古すぎて、さらに開発されたいくつかの貴重な機能が含まれていませんでした。また、高度なグラフィックスが不要な単純なシミュレーションの場合、古い3dsmax、つまり2011(最新の2012ではない)を使用してモデルなどを開発する方がよいということもあります。主にプラグインとエクスポーターが多いためです。さらに、利用可能なすべてのフレームワーク(sharpdx、xna、xna4、slimdx、c ++、およびその他)のチュートリアルをチェックすると非常に役立ちます。

最後に、私のアプローチは、非常に小さいキューブピースを使用してガラスの壁を構築することでした。もちろん、シミュレーションを実行するには、本当に強力なマシンが必要です。強力でないものがある場合は、より大きなキューブを使用できます。眠っている島の状態で作成されたすべての立方体を作ることが重要です。現在、すべての作品は、フロートの2次元配列で表現されています。そこにある数字は、2つのキューブ間の接続強度を示しています。石が投げられて衝突が検出されると、壁の各立方体の力が計算され(石の質量、速度、立方体の質量、衝突の中心からの距離を含む)、円の配列から差し引かれます。のようなパターン。減算後の接続強度が0以下のキューブはアクティブになります。これにより、子が移動します。

これです。ご協力いただきありがとうございます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.