[Bf-blender-cvs] [509958c852b] usd-importer-T81257-merge: USD Import: mesh reader cleanup.
makowalski
noreply at git.blender.org
Tue Jul 20 03:12:02 CEST 2021
Commit: 509958c852b219e173f91b7758a4ca06ab793aae
Author: makowalski
Date: Mon Jul 19 18:26:07 2021 -0400
Branches: usd-importer-T81257-merge
https://developer.blender.org/rB509958c852b219e173f91b7758a4ca06ab793aae
USD Import: mesh reader cleanup.
Simplified handling of left and right handed
orientations when converting polygons.
===================================================================
M source/blender/io/usd/intern/usd_reader_mesh.cc
===================================================================
diff --git a/source/blender/io/usd/intern/usd_reader_mesh.cc b/source/blender/io/usd/intern/usd_reader_mesh.cc
index 44d83996de1..1238e13941f 100644
--- a/source/blender/io/usd/intern/usd_reader_mesh.cc
+++ b/source/blender/io/usd/intern/usd_reader_mesh.cc
@@ -278,7 +278,6 @@ void USDMeshReader::read_mpolys(Mesh *mesh)
MLoop *mloops = mesh->mloop;
int loop_index = 0;
- int rev_loop_index = 0;
for (int i = 0; i < face_counts_.size(); i++) {
const int face_size = face_counts_[i];
@@ -292,14 +291,16 @@ void USDMeshReader::read_mpolys(Mesh *mesh)
* this is encoded in custom loop normals. */
poly.flag |= ME_SMOOTH;
- rev_loop_index = loop_index + (face_size - 1);
-
- for (int f = 0; f < face_size; f++, loop_index++, rev_loop_index--) {
- MLoop &loop = mloops[loop_index];
- if (is_left_handed_)
- loop.v = face_indices_[rev_loop_index];
- else
- loop.v = face_indices_[loop_index];
+ if (is_left_handed_) {
+ int loop_end_index = loop_index + (face_size - 1);
+ for (int f = 0; f < face_size; ++f, ++loop_index) {
+ mloops[loop_index].v = face_indices_[loop_end_index - f];
+ }
+ }
+ else {
+ for (int f = 0; f < face_size; ++f, ++loop_index) {
+ mloops[loop_index].v = face_indices_[loop_index];
+ }
}
}
More information about the Bf-blender-cvs
mailing list