gpt4 book ai didi

three.js - 更新网格内的几何图形没有任何作用

转载 作者:行者123 更新时间:2023-12-04 00:44:49 26 4
gpt4 key购买 nike

我正在使用 THREE.JS rev 49。

我的程序需要通过更改其几何形状来更新网格。
不幸的是,显示似乎没有更新。

这是我的代码:

// theObject is an array of associatives :

// {
// object1: {mesh: undefined/THREE.mesh, mat: THREE.Material, geo: THREE.Geometry}
// object2: {mesh: undefined/THREE.mesh, mat: THREE.Material, geo: THREE.Geometry}
// ...
// }

// In my function, theObject[i].mesh geometry must change to be theObject[i].geo.


for(i in theObjects) {

//*
if ( theObjects[i].mesh == undefined) {
theObjects[i].mesh = new THREE.Mesh(theObjects[i].geo, theObjects[i].mat);

theObjects[i].mesh.geometry.dynamic = true;
theObjects[i].geo.verticesNeedUpdate = true;

scenePostsurgery.add(theObjects[i].mesh);
} else
theObjects[i].mesh.geometry.vertices = theObjects[i].geo.vertices;

}

我必须添加其他东西吗?

/奥拉贡

最佳答案

如果我理解正确,您将在此处更新顶点:

else{
theObjects[i].mesh.geometry.vertices = theObjects[i].geo.vertices;
}

尝试将此代码更改为:
else{
theObjects[i].mesh.geometry.dynamic = true;
theObjects[i].mesh.geometry.vertices = theObjects[i].geo.vertices;
theObjects[i].mesh.geometry.verticesNeedUpdate = true;
}

if(){}您创建一个网格并在 else{}你这样更新 dynamic = trueverticesNeedUpdate = true您需要设置为 else{} 中的网格.

关于three.js - 更新网格内的几何图形没有任何作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15384078/

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