Commit: 955f52e0e119eea6c9b5291c3fdb794f96bc677b
Author: Sybren A. Stüvel
Date: Tue Nov 26 17:14:22 2019 +0100
Branches: temp-sybren-usd-patch-02
https://developer.blender.org/rB955f52e0e119eea6c9b5291c3fdb794f96bc677b
USD: typedef for std::map<short, pxr::VtIntArray>
===================================================================
M source/blender/usd/intern/usd_writer_mesh.cc
M source/blender/usd/intern/usd_writer_mesh.h
===================================================================
diff --git a/source/blender/usd/intern/usd_writer_mesh.cc
b/source/blender/usd/intern/usd_writer_mesh.cc
index 410ffe7b3f7..c0297371cb0 100644
--- a/source/blender/usd/intern/usd_writer_mesh.cc
+++ b/source/blender/usd/intern/usd_writer_mesh.cc
@@ -281,10 +281,9 @@ void USDGenericMeshWriter::get_geometry_data(const Mesh
*mesh, USDMeshData &usd_
get_creases(mesh, usd_mesh_data);
}
-void USDGenericMeshWriter::assign_materials(
- const HierarchyContext &context,
- pxr::UsdGeomMesh usd_mesh,
- const std::map<short, pxr::VtIntArray> &usd_face_groups)
+void USDGenericMeshWriter::assign_materials(const HierarchyContext &context,
+ pxr::UsdGeomMesh usd_mesh,
+ const MaterialFaceGroups
&usd_face_groups)
{
if (context.object->totcol == 0) {
return;
@@ -325,9 +324,9 @@ void USDGenericMeshWriter::assign_materials(
}
// Define a geometry subset per material.
- for (auto face_group_iter : usd_face_groups) {
- short material_number = face_group_iter.first;
- const pxr::VtIntArray &face_indices = face_group_iter.second;
+ for (const MaterialFaceGroups::value_type &face_group : usd_face_groups) {
+ short material_number = face_group.first;
+ const pxr::VtIntArray &face_indices = face_group.second;
Material *material = give_current_material(context.object, material_number
+ 1);
if (material == nullptr) {
diff --git a/source/blender/usd/intern/usd_writer_mesh.h
b/source/blender/usd/intern/usd_writer_mesh.h
index e52cde8b7b5..917e5fe6eb3 100644
--- a/source/blender/usd/intern/usd_writer_mesh.h
+++ b/source/blender/usd/intern/usd_writer_mesh.h
@@ -38,11 +38,14 @@ class USDGenericMeshWriter : public USDAbstractWriter {
virtual void free_export_mesh(Mesh *mesh);
private:
+ /* Mapping from material slot number to array of face indices with that
material. */
+ typedef std::map<short, pxr::VtIntArray> MaterialFaceGroups;
+
void write_mesh(HierarchyContext &context, Mesh *mesh);
void get_geometry_data(const Mesh *mesh, struct USDMeshData &usd_mesh_data);
void assign_materials(const HierarchyContext &context,
pxr::UsdGeomMesh usd_mesh,
- const std::map<short, pxr::VtIntArray>
&usd_face_groups);
+ const MaterialFaceGroups &usd_face_groups);
void write_uv_maps(const Mesh *mesh, pxr::UsdGeomMesh usd_mesh);
void write_normals(const Mesh *mesh, pxr::UsdGeomMesh usd_mesh);
void write_surface_velocity(Object *object, const Mesh *mesh,
pxr::UsdGeomMesh usd_mesh);
_______________________________________________
Bf-blender-cvs mailing list
[email protected]
https://lists.blender.org/mailman/listinfo/bf-blender-cvs