From 1a0cb86b527d251de511c0d1078d7fc049401884 Mon Sep 17 00:00:00 2001 From: Mario Zechner Date: Fri, 19 Aug 2022 18:02:15 +0200 Subject: [PATCH 1/2] [ts][webgl] Fixes #2138, mip maps weren't generated in all cases. --- spine-ts/spine-webgl/src/GLTexture.ts | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/spine-ts/spine-webgl/src/GLTexture.ts b/spine-ts/spine-webgl/src/GLTexture.ts index 07eaeb3e5..380bf3c54 100644 --- a/spine-ts/spine-webgl/src/GLTexture.ts +++ b/spine-ts/spine-webgl/src/GLTexture.ts @@ -51,6 +51,8 @@ export class GLTexture extends Texture implements Disposable, Restorable { this.bind(); gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, minFilter); gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, GLTexture.validateMagFilter(magFilter)); + this.useMipMaps = GLTexture.usesMipMaps(minFilter); + if (this.useMipMaps) gl.generateMipmap(gl.TEXTURE_2D); } static validateMagFilter (magFilter: TextureFilter) { @@ -66,6 +68,19 @@ export class GLTexture extends Texture implements Disposable, Restorable { } } + static usesMipMaps(filter: TextureFilter) { + switch (filter) { + case TextureFilter.MipMap: + case TextureFilter.MipMapLinearLinear: + case TextureFilter.MipMapLinearNearest: + case TextureFilter.MipMapNearestLinear: + case TextureFilter.MipMapNearestNearest: + return true; + default: + return false; + } + } + setWraps (uWrap: TextureWrap, vWrap: TextureWrap) { let gl = this.context.gl; this.bind(); From e7ee3f417d790f3cd5ce1f4a818f4c960ad2920a Mon Sep 17 00:00:00 2001 From: Mario Zechner Date: Fri, 19 Aug 2022 18:06:14 +0200 Subject: [PATCH 2/2] [ts] 4.1.22 release. --- spine-ts/package-lock.json | 30 ++++++++++++++--------------- spine-ts/package.json | 2 +- spine-ts/spine-canvas/package.json | 4 ++-- spine-ts/spine-core/package.json | 2 +- spine-ts/spine-player/package.json | 4 ++-- spine-ts/spine-threejs/package.json | 4 ++-- spine-ts/spine-webgl/package.json | 4 ++-- 7 files changed, 25 insertions(+), 25 deletions(-) diff --git a/spine-ts/package-lock.json b/spine-ts/package-lock.json index fe0295520..36dc24dea 100644 --- a/spine-ts/package-lock.json +++ b/spine-ts/package-lock.json @@ -1,12 +1,12 @@ { "name": "@esotericsoftware/spine-ts", - "version": "4.1.21", + "version": "4.1.22", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@esotericsoftware/spine-ts", - "version": "4.1.21", + "version": "4.1.22", "license": "LicenseRef-LICENSE", "workspaces": [ "spine-core", @@ -7967,41 +7967,41 @@ }, "spine-canvas": { "name": "@esotericsoftware/spine-canvas", - "version": "4.1.21", + "version": "4.1.22", "license": "LicenseRef-LICENSE", "dependencies": { - "@esotericsoftware/spine-core": "^4.1.21" + "@esotericsoftware/spine-core": "^4.1.22" } }, "spine-core": { "name": "@esotericsoftware/spine-core", - "version": "4.1.21", + "version": "4.1.22", "license": "LicenseRef-LICENSE" }, "spine-player": { "name": "@esotericsoftware/spine-player", - "version": "4.1.21", + "version": "4.1.22", "license": "LicenseRef-LICENSE", "dependencies": { - "@esotericsoftware/spine-webgl": "^4.1.21" + "@esotericsoftware/spine-webgl": "^4.1.22" } }, "spine-threejs": { "name": "@esotericsoftware/spine-threejs", - "version": "4.1.21", + "version": "4.1.22", "license": "LicenseRef-LICENSE", "dependencies": { - "@esotericsoftware/spine-core": "^4.1.21", + "@esotericsoftware/spine-core": "^4.1.22", "@types/three": "^0.140.0", "three": "^0.140.0" } }, "spine-webgl": { "name": "@esotericsoftware/spine-webgl", - "version": "4.1.21", + "version": "4.1.22", "license": "LicenseRef-LICENSE", "dependencies": { - "@esotericsoftware/spine-core": "^4.1.21" + "@esotericsoftware/spine-core": "^4.1.22" } } }, @@ -8009,7 +8009,7 @@ "@esotericsoftware/spine-canvas": { "version": "file:spine-canvas", "requires": { - "@esotericsoftware/spine-core": "^4.1.21" + "@esotericsoftware/spine-core": "^4.1.22" } }, "@esotericsoftware/spine-core": { @@ -8018,13 +8018,13 @@ "@esotericsoftware/spine-player": { "version": "file:spine-player", "requires": { - "@esotericsoftware/spine-webgl": "^4.1.21" + "@esotericsoftware/spine-webgl": "^4.1.22" } }, "@esotericsoftware/spine-threejs": { "version": "file:spine-threejs", "requires": { - "@esotericsoftware/spine-core": "^4.1.21", + "@esotericsoftware/spine-core": "^4.1.22", "@types/three": "^0.140.0", "three": "^0.140.0" } @@ -8032,7 +8032,7 @@ "@esotericsoftware/spine-webgl": { "version": "file:spine-webgl", "requires": { - "@esotericsoftware/spine-core": "^4.1.21" + "@esotericsoftware/spine-core": "^4.1.22" } }, "@types/offscreencanvas": { diff --git a/spine-ts/package.json b/spine-ts/package.json index 6f134ac80..df2bcbae0 100644 --- a/spine-ts/package.json +++ b/spine-ts/package.json @@ -1,6 +1,6 @@ { "name": "@esotericsoftware/spine-ts", - "version": "4.1.21", + "version": "4.1.22", "description": "The official Spine Runtimes for the web.", "files": [ "README.md" diff --git a/spine-ts/spine-canvas/package.json b/spine-ts/spine-canvas/package.json index 924013f05..594ce489f 100644 --- a/spine-ts/spine-canvas/package.json +++ b/spine-ts/spine-canvas/package.json @@ -1,6 +1,6 @@ { "name": "@esotericsoftware/spine-canvas", - "version": "4.1.21", + "version": "4.1.22", "description": "The official Spine Runtimes for the web.", "main": "dist/index.js", "types": "dist/index.d.ts", @@ -30,6 +30,6 @@ }, "homepage": "https://github.com/esotericsoftware/spine-runtimes#readme", "dependencies": { - "@esotericsoftware/spine-core": "^4.1.21" + "@esotericsoftware/spine-core": "^4.1.22" } } \ No newline at end of file diff --git a/spine-ts/spine-core/package.json b/spine-ts/spine-core/package.json index aa71ef9d3..23b24064d 100644 --- a/spine-ts/spine-core/package.json +++ b/spine-ts/spine-core/package.json @@ -1,6 +1,6 @@ { "name": "@esotericsoftware/spine-core", - "version": "4.1.21", + "version": "4.1.22", "description": "The official Spine Runtimes for the web.", "main": "dist/index.js", "types": "dist/index.d.ts", diff --git a/spine-ts/spine-player/package.json b/spine-ts/spine-player/package.json index c98ee1109..8dc4cee66 100644 --- a/spine-ts/spine-player/package.json +++ b/spine-ts/spine-player/package.json @@ -1,6 +1,6 @@ { "name": "@esotericsoftware/spine-player", - "version": "4.1.21", + "version": "4.1.22", "description": "The official Spine Runtimes for the web.", "main": "dist/index.js", "types": "dist/index.d.ts", @@ -30,6 +30,6 @@ }, "homepage": "https://github.com/esotericsoftware/spine-runtimes#readme", "dependencies": { - "@esotericsoftware/spine-webgl": "^4.1.21" + "@esotericsoftware/spine-webgl": "^4.1.22" } } \ No newline at end of file diff --git a/spine-ts/spine-threejs/package.json b/spine-ts/spine-threejs/package.json index 345c39fe3..0450cbd2e 100644 --- a/spine-ts/spine-threejs/package.json +++ b/spine-ts/spine-threejs/package.json @@ -1,6 +1,6 @@ { "name": "@esotericsoftware/spine-threejs", - "version": "4.1.21", + "version": "4.1.22", "description": "The official Spine Runtimes for the web.", "main": "dist/index.js", "types": "dist/index.d.ts", @@ -32,6 +32,6 @@ "dependencies": { "@types/three": "^0.140.0", "three": "^0.140.0", - "@esotericsoftware/spine-core": "^4.1.21" + "@esotericsoftware/spine-core": "^4.1.22" } } \ No newline at end of file diff --git a/spine-ts/spine-webgl/package.json b/spine-ts/spine-webgl/package.json index da893feda..8038789b6 100644 --- a/spine-ts/spine-webgl/package.json +++ b/spine-ts/spine-webgl/package.json @@ -1,6 +1,6 @@ { "name": "@esotericsoftware/spine-webgl", - "version": "4.1.21", + "version": "4.1.22", "description": "The official Spine Runtimes for the web.", "main": "dist/index.js", "types": "dist/index.d.ts", @@ -30,6 +30,6 @@ }, "homepage": "https://github.com/esotericsoftware/spine-runtimes#readme", "dependencies": { - "@esotericsoftware/spine-core": "^4.1.21" + "@esotericsoftware/spine-core": "^4.1.22" } } \ No newline at end of file