gpt4 book ai didi

three.js - 翻转几何体后翻转法线 Three.JS

转载 作者:行者123 更新时间:2023-12-03 06:26:52 29 4
gpt4 key购买 nike

我遵循了这个 stackoverflow 示例: ThreeJS geometry flipping

我成功镜像了我的几何体。然而现在我的几何图形是黑色的。我可以在翻转几何体的同时翻转法线来纠正这个问题吗?或者我应该从一开始就使用不同的方法来镜像几何图形?

编辑:

尝试添加更新到此代码,但仍然有倒置的几何图形。

#transformation
mS.elements[5] = -1;
mesh.applyMatrix(mS);

#updates
mesh.geometry.verticesNeedUpdate = true;
mesh.geometry.normalsNeedUpdate = true;
mesh.geometry.computeBoundingSphere();
mesh.geometry.computeFaceNormals();
mesh.geometry.computeVertexNormals();

geometry

最佳答案

这是一个老问题,但对于那些仍然迷失的人来说:面法线是通过查看顶点的逆时针顺序来计算的。

因此,如果您需要翻转法线,则必须重新排序分配给面的顶点。例如:

var tmp;
for(var f = 0; f < geometry.faces.length; f++) {
tmp = geometry.faces[f].clone();
geometry.faces[f].a = tmp.c;
geometry.faces[f].c = tmp.a;
}

关于three.js - 翻转几何体后翻转法线 Three.JS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25795538/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com