我想在我的挤压几何体的表面上使用纹理。我一直在研究自定义 UV 生成器,并发现了这些相关问题: 1.)如何将纹理应用于 THREE.ExtrudeGeometry? 2.)加载的纹理看起来很模糊,或者像单一颜色。如何使纹理清晰锐利
但是,建议将我的几何点除以 1000 的方法mesh.scale.set(1000,1000,1)
不起作用,因为我的几何不再位于正确的位置。我更愿意指定 UV 映射。一个答案说要根据源代码实现自定义 uvgenerator,但我被卡住了,不知道该怎么做。
这是我创建的几何图形,材质为 512x512px,如何将纹理映射到顶部?:
pointList=[[0,0,0],
[0,1000,0],
[750,1000,0],
[750,750,0],
[1000,750,0],
[1000,0,0]]
for (i=0;i < pointList.length; i++) {
point = pointList[i];
x = point[0];
y = point[1];
myPoints.push( new THREE.Vector2 (x,y) );
}
myShape = new THREE.Shape( myPoints );
extrusionSettings = {
amount:height
};
myGeometry = new THREE.ExtrudeGeometry( myShape, extrusionSettings );
resultshape = new THREE.Mesh( myGeometry, material );