Collision Detection Using MeshGeometry3D

I am creating a CAD program by creating modelvisual3D objects. How to do collision detection between my objects (modelvisual3d) using MeshGeometry3D. Is it necessary to compare each triangle in a moving object with fixed objects?

What would be the best way to detect a collision?

+3
source share
4 answers

It depends on how accurate your collision detection should be.

There is no built-in collision detection in the WPF 3D library. If you need high accuracy, you need to compare each triangle.

/ . , . , .

0

Reed ( ):

, / /, () / / . .

, , , /, , / .

0

SAT ( ), .

, , , .

, AABB, , A B.

2D, , , ( X Y), , .

, : http://www.metanetsoftware.com/technique/tutorialA.html

3D, . , .

, , ( angular, B A, , , , A, , , ).

0
source

Another option would be to use BulletSharp , the C # wrapper of the famous "Bullet Mechanism" . In this case, you will need to write functions to create a (concave) collision form from MeshGeometry3D.

In my experience, it works very well, although dynamic collision between concave shapes is not supported. As a workaround, you need to use convex decomposition.

0
source

Source: https://habr.com/ru/post/1715552/


All Articles