Browse Source

Fixed loop condition in bone mapping

Corrected the for-loop condition in the auto_mapping_process function. Previously, it was checking if children.size() is non-zero, which resulted in an infinite loop
K. S. Ernest (iFire) Lee 1 year ago
parent
commit
15f1a0fba3
1 changed files with 1 additions and 1 deletions
  1. 1 1
      editor/plugins/bone_map_editor_plugin.cpp

+ 1 - 1
editor/plugins/bone_map_editor_plugin.cpp

@@ -1140,7 +1140,7 @@ void BoneMapper::auto_mapping_process(Ref<BoneMap> &p_bone_map) {
 				children.erase(ls_idx);
 				children.erase(rs_idx);
 				String word = "spine"; // It would be better to limit the search with "spine" because it could be mistaken with breast, wing and etc...
-				for (int i = 0; children.size(); i++) {
+				for (int i = 0; i < children.size(); i++) {
 					bone_idx = children[i];
 					if (is_match_with_bone_name(skeleton->get_bone_name(bone_idx), word)) {
 						neck = bone_idx;