From e36047725ce3217618d4e5807ac7c8769b9e3598 Mon Sep 17 00:00:00 2001 From: Normand Briere <nbriere@noware.ca> Date: Mon, 17 Jun 2019 19:45:55 -0400 Subject: [PATCH] Split pigment bump. --- BoundaryRep.java | 47 ++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 40 insertions(+), 7 deletions(-) diff --git a/BoundaryRep.java b/BoundaryRep.java index 3583aa0..6c09eda 100644 --- a/BoundaryRep.java +++ b/BoundaryRep.java @@ -3857,6 +3857,28 @@ Trim(true/*wastrim*/,true,crease,wasstrip,false); } + void GenerateNormalsMesh() + { + if (stripified) + { + Unstripify(); + } + + if (trimmed) + { + normals = null; + } + else + { + for (int i=VertexCount(); --i>=0;) + { + Vertex v = GetVertex(i); + + v.norm = null; + } + } + } + void GenNormalsJME() { assert(false); @@ -4013,8 +4035,9 @@ triangles[i] = i; } - Untrim(); - MergeNormals(); +// Untrim(); + if (!trimmed) + MergeNormals(); } } @@ -4076,8 +4099,9 @@ triangles[0] = 3; } - Untrim(); - MergeNormals(); + //Untrim(); + if (!trimmed) + MergeNormals(); } /* @@ -4942,9 +4966,18 @@ v./*pos.*/y = positions[i3 + 1]; v./*pos.*/z = positions[i3 + 2]; - v.norm.x = normals[i3]; - v.norm.y = normals[i3 + 1]; - v.norm.z = normals[i3 + 2]; + if (normals == null) + { + v.norm.x = 0; + v.norm.y = 0; + v.norm.z = 0; + } + else + { + v.norm.x = normals[i3]; + v.norm.y = normals[i3 + 1]; + v.norm.z = normals[i3 + 2]; + } v.s = uvmap[i2]; v.t = uvmap[i2 + 1]; -- Gitblit v1.6.2