Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergey Sharybin <sergey.vfx@gmail.com>2013-11-25 23:17:24 +0400
committerSergey Sharybin <sergey.vfx@gmail.com>2013-11-26 01:02:13 +0400
commitcc55913798aecbdeb3fc6e49c16a26ccbddebd9b (patch)
tree588bffc09b32253a2a5a12b513dc3b5180cfe40c /source/blender/blenkernel/intern/curve.c
parenta5c7b9202b8451097ba6acf6e3f19bc5cdf091fd (diff)
Fix T37225: UV map for closed curves incorrectly generated
Summary: Curve ORCO was not calculating properly for cyclic 2D curves. - Needed to split vertices for blender internal renderer. Otherwise it's not possible to map last face to a proper texture location. - Needed to tweak curve->mesh conversion to respect cyclic flag along U direction. - Removed check for orcodm in curve.c:add_orco_dm since this code is only called if there're enabled constructive modifiers on the curve. Reviewers: brecht Maniphest Tasks: T37225 Differential Revision: http://developer.blender.org/D45
Diffstat (limited to 'source/blender/blenkernel/intern/curve.c')
-rw-r--r--source/blender/blenkernel/intern/curve.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/source/blender/blenkernel/intern/curve.c b/source/blender/blenkernel/intern/curve.c
index bdc70ed2afe..d57b5149538 100644
--- a/source/blender/blenkernel/intern/curve.c
+++ b/source/blender/blenkernel/intern/curve.c
@@ -1518,6 +1518,9 @@ float *BKE_curve_make_orco(Scene *scene, Object *ob, int *r_numVerts)
else
numVerts += dl->parts * (dl->nr + 1);
}
+ else if (dl->flag & DL_CYCL_V) {
+ numVerts += (dl->parts + 1) * dl->nr;
+ }
else
numVerts += dl->parts * dl->nr;
}
@@ -1553,6 +1556,9 @@ float *BKE_curve_make_orco(Scene *scene, Object *ob, int *r_numVerts)
if (dl->flag & DL_CYCL_V)
sizev++;
}
+ else if (dl->flag & DL_CYCL_V) {
+ sizev++;
+ }
for (u = 0; u < sizev; u++) {
for (v = 0; v < sizeu; v++, fp += 3) {