mirror of
https://github.com/EsotericSoftware/spine-runtimes.git
synced 2026-02-06 07:14:55 +08:00
[ts] Use existing, explicit atlas data instead of relying on an image's current width/height (#2085)
This fixes a bug where UVs would sometimes be wrong if an image's size is not the same as when originally exported. This could happen in the wild to _any_ project, due to mobile ISPs/browsers that proxy requests and resize images before sending them to clients. Fixing this also allows `spine-core` to work with engines that: * use embedded, low-res textures while waiting for high res textures to load * automatically provide lower resolution textures to low-end devices or low-resolution displays
This commit is contained in:
parent
c8d38f2ec4
commit
905f4c6ece
@ -93,8 +93,8 @@ export class MeshAttachment extends VertexAttachment implements HasTextureRegion
|
||||
let n = this.uvs.length;
|
||||
let u = this.region.u, v = this.region.v, width = 0, height = 0;
|
||||
if (this.region instanceof TextureAtlasRegion) {
|
||||
let region = this.region, image = region.page!.texture!.getImage();
|
||||
let textureWidth = image.width, textureHeight = image.height;
|
||||
let region = this.region, page = region.page;
|
||||
let textureWidth = page.width, textureHeight = page.height;
|
||||
switch (region.degrees) {
|
||||
case 90:
|
||||
u -= (region.originalHeight - region.offsetY - region.height) / textureWidth;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user