Frameworkの初期化と終了(Java)
最終更新: 2023年1月26日
このページはCubism 4.2以前の古いバージョン向けです。 最新のページはこちら
起動
CubismFramework.startUp関数でログに関するオプションを設定します。
こちらの関数を呼び出さなければ、後に行うCubismFramework.initialize関数が動作しません。
// Java
private LAppDelegate() {
currentModel = ModelDir.values()[0];
// Set up Cubism SDK framework.
cubismOption.logFunction = new LAppPal.PrintLogFunction();
cubismOption.loggingLevel = LAppDefine.cubismLoggingLevel;
CubismFramework.cleanUp();
CubismFramework.startUp(cubismOption);
}
private final CubismFramework.Option cubismOption = new CubismFramework.Option();
引数にはデバッグのレベルやデバッグ用の関数の登録をします。
初期化時にはデバッグ用関数を介し、以下のようにCubism Coreのバージョン情報が表示されます。
[CSM][I]Live2D Cubism Core Version: 04.02.0001 (67239937)
初期化
CubismFramework.startUp関数を実行した後で、CubismFramework.initialize関数を呼び出します。
アプリケーションでFrameworkを使用する前に必ず一度だけ呼んでください。
一度も呼ばなかった場合はFramework使用時にエラーになります。
連続で呼んだ場合は処理は無視されます。
ただし後述するCubismFramework.dispose関数を呼んで終了した後ならば、再度initialize関数を呼んで初期化することができます。
// Java
public void onSurfaceCreated() {
// テクスチャサンプリング設定
GLES20.glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
GLES20.glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
// 透過設定
GLES20.glEnable(GLES20.GL_BLEND);
GLES20.glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
// Initialize Cubism SDK framework
CubismFramework.initialize();
// シェーダーの初期化
view.initializeShader();
}
終了
CubismFramework.dispose関数を呼び出すとFrameworkが確保した共通部分のリソースを解放します。
CubismFramework.initialize関数を呼び出す前には呼ばないでください。
基本的にはアプリケーションの終了時に呼びます。
例外として、メモリが非常に少ない環境で、必要ないときやライブラリを完全に切り離したいときは、
この関数を呼ぶことでリソースを解放し、次に使うときにまたCubismFramework.initialize関数を呼ぶ、という使い方もできます。
// Java
public void onStop() {
view = null;
textureManager = null;
LAppLive2DManager.releaseInstance();
CubismFramework.dispose();
}
この記事はお役に立ちましたか?
はいいいえ