Framework原始化和退出(Java)

最終更新: 2023年1月26日

开启

使用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();
}
请问这篇文章对您有帮助吗?
关于本报道,敬请提出您的意见及要求。