From 02b894d8dad62ebf39917976b3148a42d9d6a0f5 Mon Sep 17 00:00:00 2001 From: Mario Zechner Date: Mon, 24 Jan 2022 22:04:29 +0100 Subject: [PATCH 1/2] [ts][player] Added SpinePlayer.dispose(), closes #2020 --- CHANGELOG.md | 1 + spine-ts/index.html | 1 + spine-ts/package.json | 2 +- spine-ts/spine-player/example/dispose.html | 49 ++++++++++++++++++++++ spine-ts/spine-player/src/Player.ts | 42 +++++++++++++++---- spine-ts/spine-webgl/src/Input.ts | 3 +- spine-ts/spine-webgl/src/LoadingScreen.ts | 8 +++- spine-ts/spine-webgl/src/SceneRenderer.ts | 16 +++---- 8 files changed, 102 insertions(+), 20 deletions(-) create mode 100644 spine-ts/spine-player/example/dispose.html diff --git a/CHANGELOG.md b/CHANGELOG.md index 80068fe1c..35b8fae27 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -242,6 +242,7 @@ * Added `SpinePlayerConfig.draw`. If set, the callback is called each frame, just after the skeleton is drawn. * Added `SpinePlayerConfig.downloader`. The `spine.Downloader` instance can be shared between players so assets are only downloaded once. * If `SpinePlayerConfig.jsonURL` ends with an anchor, the anchor text is used to find the skeleton in the specified JSON file. +* Added `SpinePlayer.dispose()`, disposes all CPU and GPU side resources, removes all listeners, and removes the player DOM from the parent. # 3.8 diff --git a/spine-ts/index.html b/spine-ts/index.html index 553914515..1d8787794 100644 --- a/spine-ts/index.html +++ b/spine-ts/index.html @@ -21,6 +21,7 @@
  • Embedding binary
  • Embedding JSON
  • Editor
  • +
  • Disposing a player
  • WebGL