[Bf-blender-cvs] [8da3c5c] master: Fix T46159: OpenSubdiv does not always give same results as Blender own subsurf code with crease edges

Sergey Sharybin noreply at git.blender.org
Mon Sep 21 14:54:32 CEST 2015


Commit: 8da3c5c1b9585826209fe3c0cbbead06bda1cfc1
Author: Sergey Sharybin
Date:   Mon Sep 21 17:53:21 2015 +0500
Branches: master
https://developer.blender.org/rB8da3c5c1b9585826209fe3c0cbbead06bda1cfc1

Fix T46159: OpenSubdiv does not always give same results as Blender own subsurf code with crease edges

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

M	intern/opensubdiv/opensubdiv_converter.cc

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

diff --git a/intern/opensubdiv/opensubdiv_converter.cc b/intern/opensubdiv/opensubdiv_converter.cc
index 5d43caf..3fadde6 100644
--- a/intern/opensubdiv/opensubdiv_converter.cc
+++ b/intern/opensubdiv/opensubdiv_converter.cc
@@ -467,6 +467,14 @@ inline bool TopologyRefinerFactory<OpenSubdiv_Converter>::assignComponentTags(
 				break;
 			}
 		}
+		if (vert_edges.size() == 2) {
+			int edge0 = vert_edges[0],
+			    edge1 = vert_edges[1];
+			float sharpness0 = conv.get_edge_sharpness(&conv, edge0),
+			      sharpness1 = conv.get_edge_sharpness(&conv, edge1);
+			float sharpness = std::min(sharpness0,  sharpness1);
+			setBaseVertexSharpness(refiner, vert, sharpness);
+		}
 	}
 
 	return true;




More information about the Bf-blender-cvs mailing list