diff --git a/leenkx/blender/lnx/props_traits.py b/leenkx/blender/lnx/props_traits.py index 5db93099..48fafe25 100644 --- a/leenkx/blender/lnx/props_traits.py +++ b/leenkx/blender/lnx/props_traits.py @@ -475,12 +475,10 @@ class LeenkxGenerateNavmeshButton(bpy.types.Operator): # If not, append vertex traversed_indices.append(vertex_index) vertex = export_mesh.vertices[vertex_index].co - # Apply world transform + # Apply world transform and maintain coordinate system tv = world_matrix @ vertex - # Write to OBJ - f.write("v %.4f " % (tv[0])) - f.write("%.4f " % (tv[2])) - f.write("%.4f\n" % (tv[1])) # Flipped + # Write to OBJ without flipping coordinates + f.write("v %.4f %.4f %.4f\n" % (tv[0], tv[1], tv[2])) # Max index of this object max_index = 0 @@ -524,8 +522,10 @@ class LeenkxGenerateNavmeshButton(bpy.types.Operator): # NavMesh preview settings, cleanup navmesh.name = nav_mesh_name - navmesh.rotation_euler = (0, 0, 0) - navmesh.location = (0, 0, 0) + # Match the original object's transform + navmesh.location = obj.location + navmesh.rotation_euler = obj.rotation_euler + navmesh.scale = (1, 1, 1) # Reset scale to avoid distortion navmesh.lnx_export = False bpy.context.view_layer.objects.active = navmesh