[Bf-blender-cvs] [c6b30b6] cycles-ptex-08: Tesselation for Ptex loop layer
Nicholas Bishop
noreply at git.blender.org
Tue Jan 20 13:57:01 CET 2015
Commit: c6b30b6d3cec233c17c2766581a6222514287ca4
Author: Nicholas Bishop
Date: Mon Jan 19 16:01:56 2015 +0100
Branches: cycles-ptex-08
https://developer.blender.org/rBc6b30b6d3cec233c17c2766581a6222514287ca4
Tesselation for Ptex loop layer
===================================================================
M source/blender/blenkernel/intern/mesh_evaluate.c
===================================================================
diff --git a/source/blender/blenkernel/intern/mesh_evaluate.c b/source/blender/blenkernel/intern/mesh_evaluate.c
index bdc8cd2..35e80d6 100644
--- a/source/blender/blenkernel/intern/mesh_evaluate.c
+++ b/source/blender/blenkernel/intern/mesh_evaluate.c
@@ -1325,6 +1325,7 @@ void BKE_mesh_loops_to_tessdata(CustomData *fdata, CustomData *ldata, CustomData
const bool hasPCol = CustomData_has_layer(ldata, CD_PREVIEW_MLOOPCOL);
const bool hasOrigSpace = CustomData_has_layer(ldata, CD_ORIGSPACE_MLOOP);
const bool hasLoopNormal = CustomData_has_layer(ldata, CD_NORMAL);
+ const bool hasPtex = CustomData_has_layer(ldata, CD_PTEX_LOOP);
int findex, i, j;
const int *pidx;
unsigned int (*lidx)[4];
@@ -1389,6 +1390,17 @@ void BKE_mesh_loops_to_tessdata(CustomData *fdata, CustomData *ldata, CustomData
}
}
}
+
+ if (hasPtex) {
+ MPtexTessFace *dst = CustomData_get_layer(fdata, CD_PTEX_TESSFACE);
+ const MPtexLoop *src = CustomData_get_layer(ldata, CD_PTEX_LOOP);
+
+ for (findex = 0, lidx = loopindices; findex < num_faces; lidx++, findex++, dst++) {
+ for (j = (mface ? mface[findex].v4 : (*lidx)[3]) ? 4 : 3; j--;) {
+ dst->corners[j] = src[(*lidx)[j]];
+ }
+ }
+ }
}
/**
More information about the Bf-blender-cvs
mailing list