У меня есть лист спрайтов (экспортируется с помощью Packer Texture Packer), и я использую свойства (текстуры) и repeat
, чтобы показать элементы моего листа спрайтов.Три вопроса JS с смещением текстуры и повторением для элементов позиционирования спрайта
В настоящее время это не работает (и обрезает неправильные элементы моей текстуры) - понравится, если у кого-то есть представление о том, где я ошибаюсь.
Вот мой код:
var tx = this._loadedTexture.clone(); // THREE.Texture
var txData = this._atlas.frames[name];
var txFrame = txData.frame;//txFrame = Object {x: 122, y: 0, w: 68, h: 64}
var img = tx.image; // HTMLImageElement - image.width = 256 image.height = 512
tx.repeat.x = txFrame.w/img.width;
tx.repeat.y = txFrame.h/img.height;
tx.offset.x = (txFrame.x/img.width);
tx.offset.y = (txFrame.y/img.height);
tx.needsUpdate = true;
Спасибо.
Если у вас такая же проблема, спасибо за ответ! Не могли ли вы получить обработку вращения? У меня есть атлас, который принесет много пользы от упаковки с вращением, но разбор их обратно в ТРИ. Текстуры сбивают с толку как ад. –
Я не добавлял вращения. Обнаружил, что это было намного более эффективно, чтобы сохранить его как один лист/текстуру спрайта. – user2386872