Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!
Werbeanzeige
Wenn ich jetzt die Vertizes beim laden für den Objectspace berechne kann ich mit der inversen des Bonequaternion die Vertizes soweit transformieren, dass ich damit auf der Grafikkarte arbeiten kann !? Das könnte ja schon fast die Lösung sein.Die Inverse davon transformiert eine Objectspace Koordinate (Vertex) zurück in das Koordinatensystem relativ zum jeweiligen Bone.
Quellcode |
|
1 |
Vertex * JointTransform[BoneIndex] * WorldViewProjection |
Quellcode |
|
1 |
(Vertex * JointTransform[BoneIndex0] * Weight[BoneIndex0] + Vertex * JointTransform[BoneIndex1] * Weight[BoneIndex1] + ... ) * WorldViewProjection |
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »dot« (16.02.2011, 20:55)
was geschrieben wurde funktioniert ohne Probleme! Nur steht in der Literatur immer die Formel V = Absolute * InverseBindPoseAbsolute * Vertex.CPU Berechnet neue absolute Matrix für jeden Bone (JointTransform = InverseBindPoseAbsolute * Absolute)
GPU berechnet im VertexShader
Quellcode
1
(Vertex * JointTransform[BoneIndex0] * Weight[BoneIndex0] + Vertex * JointTransform[BoneIndex1] * Weight[BoneIndex1] + ... ) * WorldViewProjection
Werbeanzeige