diff options
author | Sergey Sharybin <sergey@blender.org> | 2021-01-13 18:58:36 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey@blender.org> | 2021-01-26 18:23:09 +0300 |
commit | 3d3b6d94e6e646828bd03c5656673a5d00a806aa (patch) | |
tree | 2c966540f3a3bccd0315cd30d6e2120aea1855bc /source | |
parent | 66151b5de3ff7c49e2cb1be5708c3e030c22b64e (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.c | 2 | ||||
-rw-r--r-- | source/blender/makesdna/DNA_modifier_defaults.h | 4 | ||||
-rw-r--r-- | source/blender/render/intern/multires_bake.c | 2 |
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( |