Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Three.js:如何重复纹理_Three.js - Fatal编程技术网

Three.js:如何重复纹理

Three.js:如何重复纹理,three.js,Three.js,使用以下代码,我想设置矩形的纹理,但问题是纹理图像不会在整个矩形上重复: var penGeometry = new THREE.CubeGeometry(length, 15, 120); var wallTexture = new THREE.ImageUtils.loadTexture('../../3D/brick2.jpg'); wallTexture.wrapS = wallTexture.wrapT = THREE.MirroredRepeatWrapping; wallTextu

使用以下代码,我想设置矩形的纹理,但问题是纹理图像不会在整个矩形上重复:

var penGeometry = new THREE.CubeGeometry(length, 15, 120);
var wallTexture = new THREE.ImageUtils.loadTexture('../../3D/brick2.jpg');
wallTexture.wrapS = wallTexture.wrapT = THREE.MirroredRepeatWrapping;
wallTexture.repeat.set(50, 1);
var wallMaterial = new THREE.MeshBasicMaterial({ map: wallTexture });
var line = new THREE.Mesh(penGeometry, wallMaterial);
line.position.x = PenArray.lastPosition.x + (PenArray.currentPosition.x - PenArray.lastPosition.x) / 2;
line.position.y = PenArray.lastPosition.y + (PenArray.currentPosition.y - PenArray.lastPosition.y) / 2;
line.position.z = PenArray.lastPosition.z + 60;
line.rotation.z = angle;
纹理图像是 结果是

只有一块纹理被正确渲染,而不是整个矩形,为什么?
以及如何使用此纹理图像渲染所有矩形?

对于重复换行,纹理的尺寸必须是二的幂(POT)

例如(512 x 512)或(512 x 256)


three.js r.58

你试过three.RepeatWrapping看看会发生什么吗?现在用WestLangley的方法它可以准确地工作了(纹理的尺寸必须是二的幂)。哇,很难做到这一点。非常感谢!