Cubism Java Framework Change History

Updated: 03/16/2023

Live2D Cubism Java alpha1 Framework Release Page (GitHub)

Change History

You can check the changelog in under the Framework directory of the Cubism SDK for Java distribution package or under the CubismJavaFramework repository on the Live2D GitHub. (English only)

Cubism 4 SDK for Java R1 beta4(03/16/2023)


  • Fix some problems related to Cubism Core.
    • See `` in Core.

Cubism 4 SDK for Java R1 beta3(03/10/2023)


  • Add function to validate MOC3 files.

Cubism 4 SDK for Java R1 beta2 (01/26/2023)


  • Add a description of type package to


  • Change Android SDK API level from 31 (Android 12) to 33 (Android 13).
  • Change the name and package of the CubismRectangle class to type/csmRect to match SDK for Native.
  • Move constants related to debugging from CubismFramework class to the newly created CubismFrameworkConfig class.
  • Change implementation to hide CubismJsonString from shallow layers. The following functions are affcted by this change.
    • ICubismModelSetting.getLayoutMap()
    • CubismModelSettingJson.getLayoutMap()
    • CubismModelMatrix.setupFromLayout()
  • Change the name and arguments of createRenderer function in CubismUserModel.
    • The RendererType enumurator is abolished. Please generate a renderer you want to use by yourself and put it in the function as an argument.


  • Fix JSON data parsing process to improve performance.
  • Fix a problem where setClippingMaskBufferSize in CubismRendererAndroid would be thrown a NullPointerException if there are no clipping masks in the model.


  • Remove dependencies not to be used.
  • Remove the unused method getMotionMap in ICubismModelSetting and CubismModelSettingJson class.

Cubism 4 SDK for Java R1 beta1(12/08/2022)


  • Supports high-definition mask expression.
  • An exception is now thrown when a null value is passed to a Setter function.
  • An API has been added that allows users to arbitrarily set culling.
  • Added the ability to arbitrarily increase the number of textures used for masks.
    • Increased the maximum number of masks to “Number of render textures * 32” when using multiple textures for masks when high-definition masks are disabled.


  • Changed the visibility of field variables in CubismClippingContext class from private to public and removed getter and setter functions.
  • Changed the specification of CubismDebug functions for log output to accept a format string as an argument.


  • Changed CubismMath.radianToDirection() to store the calculation result in an instance of CubismVector2 passed by the user as the second argument.
  • Changed the type of cache variable for vertex information used in CubismRendererAndroid.doDrawModel() and CubismClippingManagerAndroid.setupClippingContext() from Map to Array.
    • This change reduces the cost of converting from int to Integer, which used to occur every frame.
  • Fixed an issue that prevented CubismPhysics.updateParticles() and CubismPhysics.updateParticlesForStabilization() from creating instances of CubismVector2.

Cubism 4 SDK for Java R1 alpha1 (10/06/2022)


  • New Releases
Please let us know what you think about this article.