Javascript 如何反转在对象圆柱体几何体中应用纹理的方向?
如何反转在对象圆柱体几何体中应用纹理的方向Javascript 如何反转在对象圆柱体几何体中应用纹理的方向?,javascript,3d,three.js,texture-mapping,Javascript,3d,Three.js,Texture Mapping,如何反转在对象圆柱体几何体中应用纹理的方向 var obj = new THREE.Mesh( new THREE.CylinderGeometry(20, 15, 1, 20), new THREE.MeshLambertMaterial({color: 0x000000}) //the material is later changed to the correct ); 提前感谢您的帮助:)此功能可用于: var invertTextureOnCylind
var obj = new THREE.Mesh(
new THREE.CylinderGeometry(20, 15, 1, 20),
new THREE.MeshLambertMaterial({color: 0x000000}) //the material is later changed to the correct
);
提前感谢您的帮助:)此功能可用于:
var invertTextureOnCylinderGeometry = function(obj) {
var faceVertexes = obj.geometry.faceVertexUvs[0];
var faceVertexesLength = faceVertexes.length;
var divisionT = 1 / (faceVertexesLength * 0.25);
faceVertexes.map(function(face, index) {
if (index < 0.5*faceVertexesLength) {
var thisIndexDivision = [
Math.floor(index/2) * divisionT,
Math.ceil((index+divisionT)/2) * divisionT
];
if (index % 2) {
face[0].set(1, thisIndexDivision[0]);
face[1].set(1, thisIndexDivision[1]);
face[2].set(0, thisIndexDivision[1]);
} else {
face[0].set(0, thisIndexDivision[0]);
face[1].set(1, thisIndexDivision[0]);
face[2].set(0, thisIndexDivision[1]);
}
}
});
obj.geometry.uvsNeedUpdate = true;
};
var invertTextureOnCylinderGeometry=函数(obj){
var FaceVertexs=obj.geometry.faceVertexUvs[0];
var facevertexlength=facevertexs.length;
var分区t=1/(面顶点长度*0.25);
映射(函数(面,索引){
如果(索引<0.5*面顶点长度){
var thisIndexDivision=[
数学楼层(索引/2)*T区,
数学单元((索引+分区)/2)*分区
];
如果(索引%2){
面[0]。集(1,thisIndexDivision[0]);
面[1]。集合(1,thisIndexDivision[1]);
面[2]。集(0,thisIndexDivision[1]);
}否则{
面[0]。设置(0,thisIndexDivision[0]);
面[1]。集(1,thisIndexDivision[0]);
面[2]。集(0,thisIndexDivision[1]);
}
}
});
obj.geometry.uvsNeedUpdate=true;
};
你是什么意思?你能说得更具体一点吗?这是关于我们下面介绍的内容。谢谢:)@JarosławOsmólski这就是你所说的“反向”吗<代码>texture.wrapps=texture.wrapT=THREE.RepeatWrapping;纹理。重复。设置(-1,1)代码>谢谢。但我不想更改对象上的纹理。因为我给他施加了大量的技术压力。nieparzyste
和parzyste
?语言应该是英语,对我来说只是暂时的。我搬走了。这里有评论,所以没有必要。