Как использовать текстурный атлас с Threejs (r65)?

Поскольку новая версия ThreeJS (r65) выпущена, uvOffset и uvScale перемещаются в texture.offset и texture.repeate.

К сожалению, texture.offset не работает для меня, что я пытаюсь достичь. Я хочу отобразить несколько спрайтов в сцене, которые используют одну и ту же текстуру. Текстура представляет собой текстурный атлас с разными плитками. Если я изменю texture.offset, текстура изменится для всех спрайтов внутри сцены. Есть ли решение, чтобы просто изменить смещение индивидуально для каждого спрайта?

Я думаю, что uvOffset сделал эту работу очень хорошо, и я неЯ не понимаю, почему он перемещен.

Вот код, чтобы увидеть, что я пытаюсь сделать:

var gui_texture = THREE.ImageUtils.loadTexture('images/button.png');

var btn_material1 = new THREE.SpriteMaterial( { map:gui_texture } );
btn_material1.map.offset.set(0.5,0);
var button = new THREE.Sprite(btn_material1);
button1.position.set(-screen_half_x+50, screen_half_y-25, 1);
button1.scale.set(100, 50, 1);
gui_node.add(button1);

var btn_material2 = new THREE.SpriteMaterial( { map:gui_texture } );
btn_material2.map.offset.set(-0.5,0);
var button2 = new THREE.Sprite(btn_material2);
button2.position.set(-screen_half_x+50, screen_half_y-150, 1);
button2.scale.set(100, 50, 1.0);
gui_node.add(button2);

С уважением,

Markus

Ответы на вопрос(1)

Ваш ответ на вопрос