2 Stimmen

Können DirectX 3D-Meshes zusammengeführt oder verbunden werden?

C#-Programmierer, DirectX-Anfänger. Habe 2 Meshes mit Mesh.Cylinder erstellt, muss sie aber zu einem einzigen Mesh kombinieren. Ist das möglich?

1voto

Goz Punkte 59671

Ja, das ist machbar. Sie haben eine Transformationsmatrix für beide Meshes vermutlich?

Sperren Sie beide Meshes und nehmen Sie dann das erste Mesh (ich nehme an, wir fügen es dem zweiten hinzu) und transformieren Sie seine Scheitelpunkte einzeln durch die Matrixtransformation, die vom lokalen Raum des Zylinders 1 in den lokalen Raum des Zylinders 2 transformiert (d.h. [Zylinder 1 Welttransformation] * [inverse Zylinder 2 Welttransformation]). Definieren Sie die richtigen Indizes und Sie haben nun Mesh 1 zu Mesh 2 hinzugefügt.

Es wird komplizierter, wenn Sie wollen, dass sich die beiden Maschen richtig überschneiden. Wenn Sie das tun wollen, schlage ich vor, dass Sie sich mit Constructive Solid Geometry (CSG) beschäftigen. Es gibt viele Links auf Google zu diesem Thema zu finden.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X