Commit: b1a036861ddd08c314587666a028a59bfb049e54
Author: Martin Felke
Date:   Wed Dec 20 10:30:39 2017 +0100
Branches: master
https://developer.blender.org/rBb1a036861ddd08c314587666a028a59bfb049e54

Fix T53572: Alembic imports UV maps incorrectly

Since in Alembic the loop order seems to be reversed when exporting and
importing, and this was the only place where it was not, I was thinking
to match this to the convention of reversing the loop order as well.

Reviewers: sybren, kevindietrich

Tags: #alembic

Differential Revision: https://developer.blender.org/D2968

===================================================================

M       source/blender/alembic/intern/abc_customdata.cc

===================================================================

diff --git a/source/blender/alembic/intern/abc_customdata.cc 
b/source/blender/alembic/intern/abc_customdata.cc
index d6e7a80d174..8b526616053 100644
--- a/source/blender/alembic/intern/abc_customdata.cc
+++ b/source/blender/alembic/intern/abc_customdata.cc
@@ -235,17 +235,19 @@ static void read_uvs(const CDStreamConfig &config, void 
*data,
        MPoly *mpolys = config.mpoly;
        MLoopUV *mloopuvs = static_cast<MLoopUV *>(data);
 
-       unsigned int uv_index, loop_index;
+       unsigned int uv_index, loop_index, rev_loop_index;
 
        for (int i = 0; i < config.totpoly; ++i) {
                MPoly &poly = mpolys[i];
+               unsigned int rev_loop_offset = poly.loopstart + poly.totloop - 
1;
 
                for (int f = 0; f < poly.totloop; ++f) {
                        loop_index = poly.loopstart + f;
+                       rev_loop_index = rev_loop_offset - f;
                        uv_index = (*indices)[loop_index];
                        const Imath::V2f &uv = (*uvs)[uv_index];
 
-                       MLoopUV &loopuv = mloopuvs[loop_index];
+                       MLoopUV &loopuv = mloopuvs[rev_loop_index];
                        loopuv.uv[0] = uv[0];
                        loopuv.uv[1] = uv[1];
                }

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
https://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to