ボクセル地形に応力/ひずみ力学を実装する方法は?


13

私は地形がボクセルに分割されるMinecraftのような世界を開発している最中です。しかし、風景の不安定な構成が予想どおりに崩壊することも望んでいます。たとえば、オーバーハングが大きすぎると、「高応力」ボクセルで破壊されて破損し、非対称に侵食された基部を持つピラー構造破損します。私は、地形の各ボクセルに「応力ベクトル」フィールドを追加し、次のことを行うことを考えていました(擬似コード):

foreach voxel in terrain
    foreach neighbor in voxel.neighbor_voxels()
        if magnitude(voxel.stress - neighbor.stress) > stressThreshold
            detach_voxels(voxel, neighbor)

しかし、問題は、これらの個々のストレスをどのように計算するかわからないことです。ボクセル単位で応力を計算するために使用できる、ボクセル離散化に特化したFEAベースのアルゴリズムはありますか?または、私はこれにすべて間違っていますが、これを行う他の方法がありますか?

回答:


1

接続されたすべてのボクセルのDFS検索を検討し、最も依存する、または「分岐」する単一のボクセルを決定することができます。そして、素敵な小さな擬似コードを実行します。:)

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