gpt4 book ai didi

javascript - Three.js - 编辑平面几何图形

转载 作者:行者123 更新时间:2023-12-02 19:22:10 25 4
gpt4 key购买 nike

所以,我想做一个简单的地形编辑器。因此,在按下鼠标时,我希望所选面向上移动。相交效果很好,我尝试像这样修改几何图形:

        var intersects2 = ray.intersectObjects([plane]);
if (intersects2.length > 0) {
var face = intersects2[0].face;
var obj1 = intersects2[0].object;

var geo = obj1.geometry;

geo.vertices[face.a].z += 50;
geo.vertices[100].z += 50;
geo.vertices[0].z += 50;


geo.computeVertexNormals();
geo.computeFaceNormals();

geo.__dirtyVertices = true;
geo.__dirtyNormals = true;

console.log(face.a);

}

控制台日志显示正确的顶点索引,但平面上没有任何移动。有什么想法吗?

飞机是这样创建的:

    var planegeo = new THREE.PlaneGeometry( 500, 500, 10, 10 );
planegeo.dynamic = true;
plane = new THREE.Mesh( planegeo, new THREE.MeshPhongMaterial( { color: 0x99ff66 } ) );
plane.receiveShadow = true;
scene.add( plane );

最佳答案

查看您的代码,您似乎正在使用 R49 之前的语法。可能只是您需要将脏标志代码更新为(假设您现在使用的是更新的库!):

geo.verticesNeedUpdate = true;
geo.normalsNeedUpdate = true;

关于javascript - Three.js - 编辑平面几何图形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12418016/

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