Skip to content

Commit

Permalink
Use inverted_safe
Browse files Browse the repository at this point in the history
  • Loading branch information
luboslenco committed Jun 5, 2018
1 parent ef20c0c commit bcdd1e6
Showing 1 changed file with 5 additions and 5 deletions.
10 changes: 5 additions & 5 deletions blender/arm/exporter.py
Expand Up @@ -614,7 +614,7 @@ def export_bone_transform(self, armature, bone, scene, o, action):
transform = bone.matrix_local.copy()
parent_bone = bone.parent
if parent_bone:
transform = parent_bone.matrix_local.inverted() * transform
transform = parent_bone.matrix_local.inverted_safe() * transform

pose_bone = armature.pose.bones.get(bone.name)
if pose_bone:
Expand Down Expand Up @@ -951,7 +951,7 @@ def export_object(self, bobject, scene, parento=None):
if type == NodeTypeCamera and bpy.data.worlds['Arm'].arm_play_camera != 'Scene' and self.scene.camera != None and bobject.name == self.scene.camera.name:
viewport_matrix = self.get_viewport_view_matrix()
if viewport_matrix != None:
o['transform']['values'] = self.write_matrix(viewport_matrix.inverted())
o['transform']['values'] = self.write_matrix(viewport_matrix.inverted_safe())
# Do not apply parent matrix
o['local_transform_only'] = True

Expand Down Expand Up @@ -1070,11 +1070,11 @@ def export_skin(self, bobject, armature, vert_list, o):
oskin['transformsI'] = []
if rpdat.arm_skin == 'CPU':
for i in range(bone_count):
skeletonI = (armature.matrix_world * bone_array[i].matrix_local).inverted()
skeletonI = (armature.matrix_world * bone_array[i].matrix_local).inverted_safe()
oskin['transformsI'].append(self.write_matrix(skeletonI))
else:
for i in range(bone_count):
skeletonI = (armature.matrix_world * bone_array[i].matrix_local).inverted()
skeletonI = (armature.matrix_world * bone_array[i].matrix_local).inverted_safe()
skeletonI = skeletonI * bobject.matrix_world
oskin['transformsI'].append(self.write_matrix(skeletonI))

Expand Down Expand Up @@ -2185,7 +2185,7 @@ def execute(self, context, filepath, scene=None):
o['transform'] = {}
viewport_matrix = self.get_viewport_view_matrix()
if viewport_matrix != None:
o['transform']['values'] = self.write_matrix(viewport_matrix.inverted())
o['transform']['values'] = self.write_matrix(viewport_matrix.inverted_safe())
o['local_transform_only'] = True
else:
o['transform']['values'] = [1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0]
Expand Down

0 comments on commit bcdd1e6

Please sign in to comment.