Тайлинг текстур. Map Repeat. Three.js

Рейтинг: 1Ответов: 1Опубликовано: 08.12.2014

У меня есть объект стена комнаты. Она не прямая, а с выступами и поворотами. А также есть текстура к ней. Мне нужно размножить её по всей стене, примерно так:

texture.wrapS = THREE.RepeatWrapping;
texture.wrapT = THREE.RepeatWrapping;
texture.repeat.x = 2;
texture.repeat.y = 2;

Текстура ровно не накладывается на стену, а расплывается. Я посоветовался со своим 3d-дизайнером, он говорит, что это делается на уровне шейдеров. Подскажите, пожалуйста, какой шейдер мне написать. И как мне поступать.

Ответы

▲ 2Принят

Да, текстура должна иметь размеры сторон, кратные степени двойки. То есть и 16/16, 32/32, 64/64, и т.д. Но могут быть и 32/16, 256/32, и т.д. И это прихоть не THREE.js, а webgl =)