From 81dc94c7e3b4e0d9e25e8a15c6d5cc28d9d2adc4 Mon Sep 17 00:00:00 2001 From: cubism-dev Date: Tue, 19 Mar 2019 12:39:20 +0900 Subject: [PATCH] Fix for static release. --- Framework/live2dcubismframework.ts | 4 ++-- Framework/rendering/cubismrenderer.ts | 18 +++++++----------- Framework/rendering/cubismrenderer_WebGL.ts | 8 +++++++- 3 files changed, 16 insertions(+), 14 deletions(-) diff --git a/Framework/live2dcubismframework.ts b/Framework/live2dcubismframework.ts index 49026e4..322ee19 100644 --- a/Framework/live2dcubismframework.ts +++ b/Framework/live2dcubismframework.ts @@ -203,10 +203,10 @@ export namespace Live2DCubismFramework Value.staticReleaseNotForClientCall(); s_cubismIdManager.release(); - s_cubismIdManager = void 0; + s_cubismIdManager = null; // レンダラの静的リソース(シェーダプログラム他)を解放する - CubismRenderer.StaticRelease(); + CubismRenderer.staticRelease(); s_isInitialized = false; diff --git a/Framework/rendering/cubismrenderer.ts b/Framework/rendering/cubismrenderer.ts index e70282a..8483dcb 100644 --- a/Framework/rendering/cubismrenderer.ts +++ b/Framework/rendering/cubismrenderer.ts @@ -34,18 +34,9 @@ export namespace Live2DCubismFramework */ public static delete(renderer: CubismRenderer): void { - renderer = void 0; renderer = null; } - /** - * レンダラが保持する静的なリソースを開放する - */ - public static StaticRelease(): void - { - //CubismRenderer_WebGL.doStaticRelease(); - } - /** * レンダラの初期化処理を実行する * 引数に渡したモデルからレンダラの初期化処理に必要な情報を取り出すことができる @@ -251,11 +242,16 @@ export namespace Live2DCubismFramework indexArray: Uint16Array, vertexArray: Float32Array, uvArray: Float32Array, opacity: number, colorBlendMode: CubismBlendMode): void; + /** + * レンダラが保持する静的なリソースを開放する + */ + public static staticRelease: Function; + protected _mvpMatrix4x4: CubismMatrix44; // Model-View-Projection 行列 - protected _modelColor: CubismTextureColor; // モデル自体のカラー(RGBA) + protected _modelColor: CubismTextureColor; // モデル自体のカラー(RGBA) protected _isCulling: boolean; // カリングが有効ならtrue protected _isPremultipliedAlpha: boolean; // 乗算済みαならtrue - protected _anisortopy: any; // テクスチャの異方性フィルタリングのパラメータ + protected _anisortopy: any; // テクスチャの異方性フィルタリングのパラメータ protected _model: CubismModel; // レンダリング対象のモデル } diff --git a/Framework/rendering/cubismrenderer_WebGL.ts b/Framework/rendering/cubismrenderer_WebGL.ts index e84248e..084748e 100644 --- a/Framework/rendering/cubismrenderer_WebGL.ts +++ b/Framework/rendering/cubismrenderer_WebGL.ts @@ -816,7 +816,6 @@ export namespace Live2DCubismFramework if(s_instance) { s_instance.release(); - s_instance = void 0; s_instance = null; } } @@ -1717,4 +1716,11 @@ export namespace Live2DCubismFramework gl: WebGLRenderingContext; // webglコンテキスト } + /** + * レンダラが保持する静的なリソースを開放する + */ + CubismRenderer.staticRelease = (): void => + { + CubismRenderer_WebGL.doStaticRelease(); + } } \ No newline at end of file