为什么我的纹理没有正确重复?

Why isn't my texture repeating correctly?

我正在尝试使用 THREE.RepeatWrapping 将砖纹理应用到我的墙上,但由于某种原因,它没有正确重复。我正在使用一个大立方体作为墙,并且在 THREE.BackSide.

的帮助下,我让纹理只出现在立方体的内部
var wallGeometry = new THREE.BoxGeometry(200, 100, 200);
texture = THREE.ImageUtils.loadTexture("textures/bricks.jpg");
texture.wrapS = texture.wrapT = THREE.RepeatWrapping;
texture.repeat.x = 170 / 100;
texture.repeat.y = 170 / 100;

var material = new THREE.MeshPhongMaterial();
material.map = texture;
var wall = new THREE.Mesh(wallGeometry, material);

wall.material.side = THREE.BackSide;

scene.add(wall);

结果如下图

提前致谢!

您的纹理在每个维度上都是 2 的幂吗? WebGL 不能重复 2 纹理的非幂。因此,例如 640x480 纹理不会重复,因为 640 和 480 都不是 2 的幂。1024x768 也不会重复,因为 1024 是 2 的幂,而 768 不是。 512x256 纹理将重复,因为两个维度都是 2 的幂。