mirror of
https://github.com/panda3d/panda3d.git
synced 2025-10-02 18:03:56 -04:00
Prevent trying to invert singular matrix
This commit is contained in:
parent
2b1f43f5d8
commit
06bc35360d
@ -1236,12 +1236,20 @@ adjust_under() {
|
||||
// Our own transform also affects our node frame.
|
||||
_node_frame =
|
||||
new MatrixFrame(get_transform3d() * get_node_frame());
|
||||
_node_frame_inv =
|
||||
new MatrixFrame(invert(get_node_frame()));
|
||||
|
||||
// To prevent trying to invert a sigular matrix
|
||||
LMatrix4d mat;
|
||||
bool invert_ok = mat.invert_from(get_node_frame());
|
||||
if (invert_ok) {
|
||||
_node_frame_inv =
|
||||
new MatrixFrame(invert(get_node_frame()));
|
||||
}
|
||||
|
||||
_vertex_to_node =
|
||||
new MatrixFrame(get_vertex_frame() * get_node_frame_inv());
|
||||
_node_to_vertex =
|
||||
new MatrixFrame(get_node_frame() * get_vertex_frame_inv());
|
||||
|
||||
}
|
||||
|
||||
if (is_instance_type()) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user