From 0458ac2add166e4c9c2f5aa5547df1571b6706d4 Mon Sep 17 00:00:00 2001 From: ienaga Date: Sat, 19 Apr 2025 22:18:16 +0900 Subject: [PATCH] =?UTF-8?q?#187=20=E6=8F=8F=E7=94=BB=E8=B2=A0=E8=8D=B7?= =?UTF-8?q?=E3=81=AE=E8=BB=BD=E6=B8=9B(=E3=82=AD=E3=83=A3=E3=83=83?= =?UTF-8?q?=E3=82=B7=E3=83=A5=E5=87=A6=E7=90=86)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package-lock.json | 47 +++++++------------ package.json | 6 +-- .../CacheStoreGenerateKeysService.test.ts | 4 +- .../service/CacheStoreGenerateKeysService.ts | 2 +- .../ShapeGenerateRenderQueueUseCase.ts | 4 +- .../TextFieldGenerateRenderQueueUseCase.ts | 4 +- .../src/Shape/usecase/ShapeRenderUseCase.ts | 18 +++---- .../usecase/TextFieldRenderUseCase.ts | 18 +++---- .../src/Mask/usecase/MaskBindUseCase.test.ts | 1 - ...MeshCalculateCurveRectangleUseCase.test.ts | 1 - src/index.ts | 2 +- 11 files changed, 40 insertions(+), 67 deletions(-) diff --git a/package-lock.json b/package-lock.json index 1c245de1..1e60eb3e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@next2d/player", - "version": "2.2.0", + "version": "2.2.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@next2d/player", - "version": "2.2.0", + "version": "2.2.1", "license": "MIT", "workspaces": [ "packages/*" @@ -17,7 +17,7 @@ }, "devDependencies": { "@eslint/eslintrc": "^3.3.1", - "@eslint/js": "^9.24.0", + "@eslint/js": "^9.25.0", "@rollup/plugin-commonjs": "^28.0.3", "@rollup/plugin-node-resolve": "^16.0.1", "@rollup/plugin-terser": "^0.4.4", @@ -26,7 +26,7 @@ "@typescript-eslint/eslint-plugin": "^8.30.1", "@typescript-eslint/parser": "^8.30.1", "@vitest/web-worker": "^3.1.1", - "eslint": "^9.24.0", + "eslint": "^9.25.0", "eslint-plugin-unused-imports": "^4.1.4", "globals": "^16.0.0", "jsdom": "^26.1.0", @@ -667,9 +667,9 @@ } }, "node_modules/@eslint/core": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.12.0.tgz", - "integrity": "sha512-cmrR6pytBuSMTaBweKoGMwu3EiHiEC+DoyupPmlZ0HxBJBtIxwe+j/E4XPIKNx+Q74c8lXKPwYawBf5glsTkHg==", + "version": "0.13.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.13.0.tgz", + "integrity": "sha512-yfkgDw1KR66rkT5A8ci4irzDysN7FRpq3ttJolR88OqQikAWqwA8j5VZyas+vjyBNFIJ7MfybJ9plMILI2UrCw==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -717,9 +717,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.24.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.24.0.tgz", - "integrity": "sha512-uIY/y3z0uvOGX8cp1C2fiC4+ZmBhp6yZWkojtHL1YEMnRt1Y63HB9TM17proGEmeG7HeUY+UP36F0aknKYTpYA==", + "version": "9.25.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.25.0.tgz", + "integrity": "sha512-iWhsUS8Wgxz9AXNfvfOPFSW4VfMXdVhp1hjkZVhXCrpgh/aLcc45rX6MPu+tIVUWDw0HfNwth7O28M1xDxNf9w==", "dev": true, "license": "MIT", "engines": { @@ -750,19 +750,6 @@ "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } }, - "node_modules/@eslint/plugin-kit/node_modules/@eslint/core": { - "version": "0.13.0", - "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.13.0.tgz", - "integrity": "sha512-yfkgDw1KR66rkT5A8ci4irzDysN7FRpq3ttJolR88OqQikAWqwA8j5VZyas+vjyBNFIJ7MfybJ9plMILI2UrCw==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@types/json-schema": "^7.0.15" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, "node_modules/@humanfs/core": { "version": "0.19.1", "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", @@ -2250,20 +2237,20 @@ } }, "node_modules/eslint": { - "version": "9.24.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.24.0.tgz", - "integrity": "sha512-eh/jxIEJyZrvbWRe4XuVclLPDYSYYYgLy5zXGGxD6j8zjSAxFEzI2fL/8xNq6O2yKqVt+eF2YhV+hxjV6UKXwQ==", + "version": "9.25.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.25.0.tgz", + "integrity": "sha512-MsBdObhM4cEwkzCiraDv7A6txFXEqtNXOb877TsSp2FCkBNl8JfVQrmiuDqC1IkejT6JLPzYBXx/xAiYhyzgGA==", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.12.1", "@eslint/config-array": "^0.20.0", - "@eslint/config-helpers": "^0.2.0", - "@eslint/core": "^0.12.0", + "@eslint/config-helpers": "^0.2.1", + "@eslint/core": "^0.13.0", "@eslint/eslintrc": "^3.3.1", - "@eslint/js": "9.24.0", - "@eslint/plugin-kit": "^0.2.7", + "@eslint/js": "9.25.0", + "@eslint/plugin-kit": "^0.2.8", "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", "@humanwhocodes/retry": "^0.4.2", diff --git a/package.json b/package.json index 13a951dc..d7774b33 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@next2d/player", - "version": "2.2.0", + "version": "2.2.1", "description": "Experience the fast and beautiful anti-aliased rendering of WebGL. You can create rich, interactive graphics, cross-platform applications and games without worrying about browser or device compatibility.", "author": "Toshiyuki Ienaga (https://github.com/ienaga/)", "license": "MIT", @@ -46,7 +46,7 @@ }, "devDependencies": { "@eslint/eslintrc": "^3.3.1", - "@eslint/js": "^9.24.0", + "@eslint/js": "^9.25.0", "@rollup/plugin-commonjs": "^28.0.3", "@rollup/plugin-node-resolve": "^16.0.1", "@rollup/plugin-terser": "^0.4.4", @@ -55,7 +55,7 @@ "@typescript-eslint/eslint-plugin": "^8.30.1", "@typescript-eslint/parser": "^8.30.1", "@vitest/web-worker": "^3.1.1", - "eslint": "^9.24.0", + "eslint": "^9.25.0", "eslint-plugin-unused-imports": "^4.1.4", "globals": "^16.0.0", "jsdom": "^26.1.0", diff --git a/packages/cache/src/CacheStore/service/CacheStoreGenerateKeysService.test.ts b/packages/cache/src/CacheStore/service/CacheStoreGenerateKeysService.test.ts index ef21a9fa..ba13a3f8 100644 --- a/packages/cache/src/CacheStore/service/CacheStoreGenerateKeysService.test.ts +++ b/packages/cache/src/CacheStore/service/CacheStoreGenerateKeysService.test.ts @@ -5,11 +5,11 @@ describe("CacheStoreGenerateKeysService.js test", () => { it("test case1", () => { - expect(execute(0.25, 0.5, 0)).toBe(13038674); + expect(execute(0.25, 0.5, 0)).toBe(12414094); }); it("test case2", () => { - expect(execute(0.25, 0.5, 0.3)).toBe(6614284); + expect(execute(0.25, 0.5, 0.3)).toBe(763280); }); }); \ No newline at end of file diff --git a/packages/cache/src/CacheStore/service/CacheStoreGenerateKeysService.ts b/packages/cache/src/CacheStore/service/CacheStoreGenerateKeysService.ts index 673f9617..ecedb6f0 100644 --- a/packages/cache/src/CacheStore/service/CacheStoreGenerateKeysService.ts +++ b/packages/cache/src/CacheStore/service/CacheStoreGenerateKeysService.ts @@ -11,7 +11,7 @@ */ export const execute = (x_scale: number, y_scale: number, alpha: number): number => { - const values = [x_scale * 10, y_scale * 10]; + const values = [x_scale * 100, y_scale * 100]; if (alpha) { values.push(alpha * 100); } diff --git a/packages/display/src/Shape/usecase/ShapeGenerateRenderQueueUseCase.ts b/packages/display/src/Shape/usecase/ShapeGenerateRenderQueueUseCase.ts index 8ee5ca52..efd73afc 100644 --- a/packages/display/src/Shape/usecase/ShapeGenerateRenderQueueUseCase.ts +++ b/packages/display/src/Shape/usecase/ShapeGenerateRenderQueueUseCase.ts @@ -163,12 +163,12 @@ export const execute = ( const xScale = Math.round(Math.sqrt( tMatrix[0] * tMatrix[0] + tMatrix[1] * tMatrix[1] - ) * 10) / 10; + ) * 100) / 100; const yScale = Math.round(Math.sqrt( tMatrix[2] * tMatrix[2] + tMatrix[3] * tMatrix[3] - ) * 10) / 10; + ) * 100) / 100; if (!shape.isBitmap && !shape.cacheKey diff --git a/packages/display/src/TextField/usecase/TextFieldGenerateRenderQueueUseCase.ts b/packages/display/src/TextField/usecase/TextFieldGenerateRenderQueueUseCase.ts index aadf0169..4c762e78 100644 --- a/packages/display/src/TextField/usecase/TextFieldGenerateRenderQueueUseCase.ts +++ b/packages/display/src/TextField/usecase/TextFieldGenerateRenderQueueUseCase.ts @@ -150,12 +150,12 @@ export const execute = ( const xScale = Math.round(Math.sqrt( tMatrix[0] * tMatrix[0] + tMatrix[1] * tMatrix[1] - ) * 10) / 10; + ) * 100) / 100; const yScale = Math.round(Math.sqrt( tMatrix[2] * tMatrix[2] + tMatrix[3] * tMatrix[3] - ) * 10) / 10; + ) * 100) / 100; if (text_field.changed && !text_field.cacheKey diff --git a/packages/renderer/src/Shape/usecase/ShapeRenderUseCase.ts b/packages/renderer/src/Shape/usecase/ShapeRenderUseCase.ts index 69964a14..f2e0a84d 100644 --- a/packages/renderer/src/Shape/usecase/ShapeRenderUseCase.ts +++ b/packages/renderer/src/Shape/usecase/ShapeRenderUseCase.ts @@ -39,15 +39,15 @@ export const execute = (render_queue: Float32Array, index: number): number => const uniqueKey = `${render_queue[index++]}`; const cacheKey = render_queue[index++]; - const xScale = Math.round(Math.sqrt( + const xScale = Math.sqrt( matrix[0] * matrix[0] + matrix[1] * matrix[1] - ) * 10) / 10; + ); - const yScale = Math.round(Math.sqrt( + const yScale = Math.sqrt( matrix[2] * matrix[2] + matrix[3] * matrix[3] - ) * 10) / 10; + ); let node: Node; const hasCache = render_queue[index++]; @@ -205,14 +205,8 @@ export const execute = (render_queue: Float32Array, index: number): number => const radianY = Math.atan2(-matrix[2], matrix[3]); if (radianX || radianY) { - const tx = xMin * Math.sqrt( - matrix[0] * matrix[0] - + matrix[1] * matrix[1] - ); - const ty = yMin * Math.sqrt( - matrix[2] * matrix[2] - + matrix[3] * matrix[3] - ); + const tx = xMin * xScale; + const ty = yMin * yScale; const cosX = Math.cos(radianX); const sinX = Math.sin(radianX); diff --git a/packages/renderer/src/TextField/usecase/TextFieldRenderUseCase.ts b/packages/renderer/src/TextField/usecase/TextFieldRenderUseCase.ts index 436b158e..816bfe1c 100644 --- a/packages/renderer/src/TextField/usecase/TextFieldRenderUseCase.ts +++ b/packages/renderer/src/TextField/usecase/TextFieldRenderUseCase.ts @@ -46,15 +46,15 @@ export const execute = (render_queue: Float32Array, index: number): number => // text state const changed = Boolean(render_queue[index++]); - const xScale = Math.round(Math.sqrt( + const xScale = Math.sqrt( matrix[0] * matrix[0] + matrix[1] * matrix[1] - ) * 10) / 10; + ); - const yScale = Math.round(Math.sqrt( + const yScale = Math.sqrt( matrix[2] * matrix[2] + matrix[3] * matrix[3] - ) * 10) / 10; + ); let node: Node; const hasCache = render_queue[index++]; @@ -192,14 +192,8 @@ export const execute = (render_queue: Float32Array, index: number): number => const radianY = Math.atan2(-matrix[2], matrix[3]); if (radianX || radianY) { - const tx = xMin * Math.sqrt( - matrix[0] * matrix[0] - + matrix[1] * matrix[1] - ); - const ty = yMin * Math.sqrt( - matrix[2] * matrix[2] - + matrix[3] * matrix[3] - ); + const tx = xMin * xScale; + const ty = yMin * yScale; const cosX = Math.cos(radianX); const sinX = Math.sin(radianX); diff --git a/packages/webgl/src/Mask/usecase/MaskBindUseCase.test.ts b/packages/webgl/src/Mask/usecase/MaskBindUseCase.test.ts index 343bdac7..e49eaff2 100644 --- a/packages/webgl/src/Mask/usecase/MaskBindUseCase.test.ts +++ b/packages/webgl/src/Mask/usecase/MaskBindUseCase.test.ts @@ -47,7 +47,6 @@ describe("MaskBindUseCase.js method test", () => "$gl": { "disable": vi.fn((cap) => { - console.log(cap); switch (cap) { case "STENCIL_TEST": case "SCISSOR_TEST": diff --git a/packages/webgl/src/Mesh/usecase/MeshCalculateCurveRectangleUseCase.test.ts b/packages/webgl/src/Mesh/usecase/MeshCalculateCurveRectangleUseCase.test.ts index 30710371..b2065384 100644 --- a/packages/webgl/src/Mesh/usecase/MeshCalculateCurveRectangleUseCase.test.ts +++ b/packages/webgl/src/Mesh/usecase/MeshCalculateCurveRectangleUseCase.test.ts @@ -7,7 +7,6 @@ describe("MeshCalculateCurveRectangleUseCase.js method test", () => it("test case", () => { const paths = execute({ x: 90, y: 120 }, { x: 91, y: 30 }, { x: 210, y: 100 }, 3); - console.log(paths); expect(paths).toEqual([ 92.99981483195982, 120.03333127591067, false, 93.05847547276832, 117.3240110485681, true, diff --git a/src/index.ts b/src/index.ts index ed9f1f1e..f79afaf6 100644 --- a/src/index.ts +++ b/src/index.ts @@ -3,7 +3,7 @@ import { Next2D } from "@next2d/core"; if (!("next2d" in window)) { - console.log("%c Next2D Player %c 2.2.0 %c https://next2d.app", + console.log("%c Next2D Player %c 2.2.1 %c https://next2d.app", "color: #fff; background: #5f5f5f", "color: #fff; background: #4bc729", "");