[Bf-blender-cvs] [a9e52fd] temp-cycles-microdisplacement: Make Cycles creased subdivision match Blenders more closely
Mai Lavelle
noreply at git.blender.org
Thu Aug 4 11:26:42 CEST 2016
Commit: a9e52fd8ee66cede4a0ae56720e9779abe3f0fde
Author: Mai Lavelle
Date: Thu Aug 4 05:21:31 2016 -0400
Branches: temp-cycles-microdisplacement
https://developer.blender.org/rBa9e52fd8ee66cede4a0ae56720e9779abe3f0fde
Make Cycles creased subdivision match Blenders more closely
Sets vertex creases to match how Blender handles vertexes on the edge of a mesh.
There's probably more inconsistencies but I'll see about handling those later.
===================================================================
M intern/cycles/render/mesh_subdivision.cpp
===================================================================
diff --git a/intern/cycles/render/mesh_subdivision.cpp b/intern/cycles/render/mesh_subdivision.cpp
index 778e3dd..efb40ef 100644
--- a/intern/cycles/render/mesh_subdivision.cpp
+++ b/intern/cycles/render/mesh_subdivision.cpp
@@ -85,6 +85,17 @@ namespace Far {
}
}
+ for(int i = 0; i < mesh.verts.size(); i++) {
+ ConstIndexArray vert_edges = getBaseVertexEdges(refiner, i);
+
+ if(vert_edges.size() == 2) {
+ float sharpness = refiner.getLevel(0).getEdgeSharpness(vert_edges[0]);
+ sharpness = std::min(sharpness, refiner.getLevel(0).getEdgeSharpness(vert_edges[1]));
+
+ setBaseVertexSharpness(refiner, i, sharpness);
+ }
+ }
+
return true;
}
More information about the Bf-blender-cvs
mailing list