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
path: root/source
diff options
context:
space:
mode:
authorSergey Sharybin <sergey@blender.org>2021-01-13 18:58:36 +0300
committerSergey Sharybin <sergey@blender.org>2021-01-26 18:23:09 +0300
commit3d3b6d94e6e646828bd03c5656673a5d00a806aa (patch)
tree2c966540f3a3bccd0315cd30d6e2120aea1855bc /source
parent66151b5de3ff7c49e2cb1be5708c3e030c22b64e (diff)
Subdiv: Use better default UV interpolation
The default one is now UVs are smoothed, boundaries are kept sharp. After some time of experimentation seems this is better default from interoperability point of view. This fixes distortion reported in T83470. Differential Revision: https://developer.blender.org/D10111
Diffstat (limited to 'source')
-rw-r--r--source/blender/blenkernel/intern/multires.c2
-rw-r--r--source/blender/makesdna/DNA_modifier_defaults.h4
-rw-r--r--source/blender/render/intern/multires_bake.c2
3 files changed, 4 insertions, 4 deletions
diff --git a/source/blender/blenkernel/intern/multires.c b/source/blender/blenkernel/intern/multires.c
index 441da8b134a..45ac20ef154 100644
--- a/source/blender/blenkernel/intern/multires.c
+++ b/source/blender/blenkernel/intern/multires.c
@@ -781,7 +781,7 @@ static DerivedMesh *subsurf_dm_create_local(Scene *scene,
smd.levels = smd.renderLevels = lvl;
smd.quality = 3;
if (!is_plain_uv) {
- smd.uv_smooth = SUBSURF_UV_SMOOTH_PRESERVE_CORNERS;
+ smd.uv_smooth = SUBSURF_UV_SMOOTH_PRESERVE_BOUNDARIES;
}
else {
smd.uv_smooth = SUBSURF_UV_SMOOTH_NONE;
diff --git a/source/blender/makesdna/DNA_modifier_defaults.h b/source/blender/makesdna/DNA_modifier_defaults.h
index 8601dcf76ac..860a9affb3e 100644
--- a/source/blender/makesdna/DNA_modifier_defaults.h
+++ b/source/blender/makesdna/DNA_modifier_defaults.h
@@ -440,7 +440,7 @@
.renderlvl = 0, \
.totlvl = 0, \
.flags = eMultiresModifierFlag_UseCrease | eMultiresModifierFlag_ControlEdges, \
- .uv_smooth = SUBSURF_UV_SMOOTH_PRESERVE_CORNERS, \
+ .uv_smooth = SUBSURF_UV_SMOOTH_PRESERVE_BOUNDARIES, \
.quality = 4, \
.boundary_smooth = SUBSURF_BOUNDARY_SMOOTH_ALL, \
}
@@ -622,7 +622,7 @@
.levels = 1, \
.renderLevels = 2, \
.flags = eSubsurfModifierFlag_UseCrease | eSubsurfModifierFlag_ControlEdges, \
- .uv_smooth = SUBSURF_UV_SMOOTH_PRESERVE_CORNERS, \
+ .uv_smooth = SUBSURF_UV_SMOOTH_PRESERVE_BOUNDARIES, \
.quality = 3, \
.boundary_smooth = SUBSURF_BOUNDARY_SMOOTH_ALL, \
.emCache = NULL, \
diff --git a/source/blender/render/intern/multires_bake.c b/source/blender/render/intern/multires_bake.c
index a4f68419c67..1859886f563 100644
--- a/source/blender/render/intern/multires_bake.c
+++ b/source/blender/render/intern/multires_bake.c
@@ -768,7 +768,7 @@ static void *init_heights_data(MultiresBakeRender *bkr, Image *ima)
if (ss_lvl > 0) {
smd.levels = smd.renderLevels = ss_lvl;
- smd.uv_smooth = SUBSURF_UV_SMOOTH_PRESERVE_CORNERS;
+ smd.uv_smooth = SUBSURF_UV_SMOOTH_PRESERVE_BOUNDARIES;
smd.quality = 3;
height_data->ssdm = subsurf_make_derived_from_derived(