Framework 초기화 및 종료(Java)

업데이트: 2023/01/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();
}
이 기사가 도움이 되었나요?
아니요
이 기사에 관한 의견 및 요청사항을 보내 주시기 바랍니다.