diff options
author | Aras Pranckevicius <aras@nesnausk.org> | 2022-08-03 09:51:34 +0300 |
---|---|---|
committer | Aras Pranckevicius <aras@nesnausk.org> | 2022-08-03 09:51:34 +0300 |
commit | e3913ec6c1517ca825eed5fb4f16dc9bc75e10f7 (patch) | |
tree | c858f319e880d06c0cb59e2fc6853d918265a86c /source/blender/io | |
parent | c9821b6c01ec8effeece56c7f723ab7c98248170 (diff) | |
parent | 89f0fedb5cfcde8d2d29f4cf08f3cfa194c375b2 (diff) |
Merge branch 'blender-v3.3-release'
Diffstat (limited to 'source/blender/io')
-rw-r--r-- | source/blender/io/wavefront_obj/exporter/obj_export_file_writer.cc | 15 | ||||
-rw-r--r-- | source/blender/io/wavefront_obj/tests/obj_importer_tests.cc | 2 |
2 files changed, 12 insertions, 5 deletions
diff --git a/source/blender/io/wavefront_obj/exporter/obj_export_file_writer.cc b/source/blender/io/wavefront_obj/exporter/obj_export_file_writer.cc index 731587bfcea..36a9cf1b9ae 100644 --- a/source/blender/io/wavefront_obj/exporter/obj_export_file_writer.cc +++ b/source/blender/io/wavefront_obj/exporter/obj_export_file_writer.cc @@ -179,13 +179,19 @@ void OBJWriter::write_mtllib_name(const StringRefNull mtl_filepath) const fh.write_to_file(outfile_); } +static void spaces_to_underscores(std::string &r_name) +{ + std::replace(r_name.begin(), r_name.end(), ' ', '_'); +} + void OBJWriter::write_object_name(FormatHandler<eFileType::OBJ> &fh, const OBJMesh &obj_mesh_data) const { - const char *object_name = obj_mesh_data.get_object_name(); + std::string object_name = obj_mesh_data.get_object_name(); + spaces_to_underscores(object_name); if (export_params_.export_object_groups) { - const std::string object_name = obj_mesh_data.get_object_name(); - const char *mesh_name = obj_mesh_data.get_object_mesh_name(); + std::string mesh_name = obj_mesh_data.get_object_mesh_name(); + spaces_to_underscores(mesh_name); fh.write<eOBJSyntaxElement::object_group>(object_name + "_" + mesh_name); return; } @@ -389,7 +395,8 @@ void OBJWriter::write_poly_elements(FormatHandler<eFileType::OBJ> &fh, mat_name = MATERIAL_GROUP_DISABLED; } if (export_params_.export_material_groups) { - const std::string object_name = obj_mesh_data.get_object_name(); + std::string object_name = obj_mesh_data.get_object_name(); + spaces_to_underscores(object_name); fh.write<eOBJSyntaxElement::object_group>(object_name + "_" + mat_name); } buf.write<eOBJSyntaxElement::poly_usemtl>(mat_name); diff --git a/source/blender/io/wavefront_obj/tests/obj_importer_tests.cc b/source/blender/io/wavefront_obj/tests/obj_importer_tests.cc index 4055d892332..339f672c3e0 100644 --- a/source/blender/io/wavefront_obj/tests/obj_importer_tests.cc +++ b/source/blender/io/wavefront_obj/tests/obj_importer_tests.cc @@ -290,7 +290,7 @@ TEST_F(obj_importer_test, import_nurbs_mesh) { Expectation expect[] = { {"OBCube", OB_MESH, 8, 12, 6, 24, float3(1, 1, -1), float3(-1, 1, 1)}, - {"OBTorus Knot", + {"OBTorus_Knot", OB_MESH, 108, 108, |