diff options
Diffstat (limited to 'sdk/extensions/authoring/source/NvBlastExtAuthoringMeshNoiser.cpp')
| -rw-r--r-- | sdk/extensions/authoring/source/NvBlastExtAuthoringMeshNoiser.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/sdk/extensions/authoring/source/NvBlastExtAuthoringMeshNoiser.cpp b/sdk/extensions/authoring/source/NvBlastExtAuthoringMeshNoiser.cpp index 72e9413..0cd6ddd 100644 --- a/sdk/extensions/authoring/source/NvBlastExtAuthoringMeshNoiser.cpp +++ b/sdk/extensions/authoring/source/NvBlastExtAuthoringMeshNoiser.cpp @@ -757,15 +757,20 @@ void MeshNoiser::divideEdge(int32_t id) mTrMeshEdToTr[ind1].add(mTrMeshEdToTr[id].tr[t]); int32_t userInfo = mTriangles[mTrMeshEdToTr[id].tr[t]].userData; int32_t matId = mTriangles[mTrMeshEdToTr[id].tr[t]].materialId; + int32_t smId = mTriangles[mTrMeshEdToTr[id].tr[t]].smoothingGroup; mTriangles[mTrMeshEdToTr[id].tr[t]] = TriangleIndexed(pbf[p], nv, pbf[opp]); mTriangles[mTrMeshEdToTr[id].tr[t]].userData = userInfo; mTriangles[mTrMeshEdToTr[id].tr[t]].materialId = matId; + mTriangles[mTrMeshEdToTr[id].tr[t]].smoothingGroup = smId; + mTrMeshEdToTr[ind2].add((int32_t)mTriangles.size()); mTrMeshEdToTr[ind3].add((int32_t)mTrMeshEdToTr[id].tr[t]); mTrMeshEdToTr[ind3].add((int32_t)mTriangles.size()); mTriangles.push_back(TriangleIndexed(nv,pbf[pnx], pbf[opp])); mTriangles.back().userData = userInfo; mTriangles.back().materialId = matId; + mTriangles.back().smoothingGroup = smId; + int32_t ed1 = findEdge(Edge(pbf[pnx], pbf[opp])); mTrMeshEdToTr[ed1].replace(oldTriangleIndex, (int32_t)mTriangles.size() - 1); break; |