首页 > 解决方案 > THREE.js 拉伸(动态高度)MeshPhongMaterial

问题描述

我创建了一个在 3D 中插入一堆点的网格。现在我想用动态高度使这个表面变厚:

 (...... points.push(new THREE.Vector3(x,y,z)); .......)
    
             
                var geom = new THREE.BufferGeometry().setFromPoints(points);
            

                var indexDelaunay = Delaunator.from(
                  points.map(v => {
                    return [v.x, v.z];
                  })
                );

                var meshIndex = []; 
                for (let i = 0; i < indexDelaunay.triangles.length; i++){
                  meshIndex.push(indexDelaunay.triangles[i]);
                }
                geom.setIndex(meshIndex); 
                geom.computeVertexNormals();
                var mesh = new THREE.Mesh(
                  geom, // re-use the existing geometry
                  new THREE.MeshPhongMaterial({ emissive:0x1F618D, opacity: 1,shading: THREE.FlatShading})
                );

您对如何完成此操作有任何提示吗?

在此处输入图像描述

标签: javascriptthree.jscomputational-geometry

解决方案


推荐阅读