Skip to content

Releases: Live2D/CubismJavaFramework

Cubism 5 SDK for Java R4

15 May 02:43
9608d4a
Compare
Choose a tag to compare

Added

  • Add an API to CubismMotionJson for verifying the consistency of motion3.json.
  • Add a flag to the arguments of the following methods to enable the function that verifies the consistency of motion3.json:
    • CubismUserModel.loadMotion()
    • CubismMotion.create()
    • CubismMotion.parse()
  • Add parameter repeat processing that connects the right and left ends of the parameter to create a loop, allowing the motion to repeat.
    • Add the variable isOverriddenParameterRepeat to the CubismModel class for managing parameter repeat flags at the model level.
    • Add the variable userParameterRepeatDataList to the CubismModel class for managing parameter repeat flags for each parameter.
  • Add a getPartParentPartIndices() function.

Changed

  • Change the access level of the private members in the CubismModelSettingJson class to protected.
  • Change the default JDK version for compilation to 17 using Gradle's Java toolchain.

Fixed

  • Fix an issue in the CubismPose class where the opacity calculation for non-displayed parts differed from the implementation in the other Cubism SDK.

Cubism 5 SDK for Java R3

18 Feb 02:26
52389ca
Compare
Choose a tag to compare

Added

  • Add new motion loop processing that seamlessly connects the start and end points of the loop.
    • The isLooped variable has been moved from the CubismMotion class to the ACubismMotion class as isLoop.
    • Add the setter for isLoop, setLoop(boolean loop), to class ACubismMotion.
    • Add the getter for isLoop, getLoop(), to class ACubismMotion.
    • The isLoopFadeIn variable was moved from class CubismMotion to class ACubismMotion.
    • Add the setter for isLoopFadeIn, setLoopFadeIn(boolean loopFadeIn), to class ACubismMotion.
    • Add the getter for isLoopFadeIn, getLoopFadeIn(), to class ACubismMotion.
    • Add a variable motionBehavior for version control to the CubismMotion class.

Changed

  • Change the compile and target SDK version of Android OS to 15.0 (API 35).
    • Upgrade the version of Android Gradle Plugin from 8.1.1 to 8.6.1.
    • Upgrade the version of Gradle from 8.2 to 8.7.
    • Change the minimum version of Android Studio to Ladybug(2024.2.1).
  • Change the arguments of CsmMotionSegmentEvaluationFunction.evaluate from (float time, int basePointIndex) to (final List<CubismMotionPoint> points, final float time) to align with the Cubism SDK for Native codebase.
    • Accordingly, change the implementation of the following methods.
      • CubismMotion.LinearEvaluator.evaluate()
      • CubismMotion.BezierEvaluator.evaluate()
      • CubismMotion.BezierEvaluatorCardanoInterpretation.evaluate()
      • CubismMotion.SteppedEvaluator.evaluate()
      • CubismMotion.InverseSteppedEvaluator.evaluate()
      • CubismMotion.bezierEvaluateBinarySearch()
  • Change the access level of CubismMotionQueueEntry class to public.

Deprecated

  • Deprecate the following elements due to the change in the variable declaration location.
    • CubismMotion.isLoop(boolean loop)
    • CubismMotion.isLoop()
    • CubismMotion.isLoopFadeIn(boolean loopFadeIn)
    • CubismMotion.isLoopFadeIn()

Cubism 5 SDK for Java R2

07 Nov 02:29
cddc0d3
Compare
Choose a tag to compare

Added

  • Add function to get CombinedParameters listed in cdi3.json.
  • Add the functionality to call a function when motion playback starts.

Changed

  • Change the access level of CubismMotionJson class to public.
  • Change the threshold for enabling anisotropic filtering.

Fixed

  • Fix a bug in which a method to acquire events fired during motion playback returned incorrect values when called multiple times.
  • Fix a potential problem with division by 0 when a pose fade time is set to 0 seconds.
  • Fix a bug that thrown an exception when playing CubismExpresionMotion with CubismMotionQueueManager.startMotion().

Cubism 5 SDK for Java R1

26 Mar 02:37
c453607
Compare
Choose a tag to compare

Added

  • Add type constraint to the generics type of getRenderer function in CubismUserModel.
  • Add function modF() to compute floating-point remainder in CubismMath class.

Changed

  • Change the default value of the flag for debugging from true to false.
  • Change to output log if the argument motionQueueEntry is null in the updateFadeWeight() function of the ACubismMotion class.

Deprecated

  • Deprecate the fadeWeight variable and the getFadeWeight() function of the CubismExpressionMotion class.
    • The fadeWeight variable of the CubismExpressionMotion class can cause problems.
    • Please use the getFadeWeight() function of the CubismExpressionMotionManager class with one argument from now on.
  • The startMotion() function of the CubismMotionQueueManager class with the unnecessary second argument userTimeSeconds is deprecated.
    • Please use the startMotion() function with one argument from now on.

Fixed

  • Fix a bug that caused incorrect weight values when expression motions were shared by multiple models.
    • Change the way fadeWeight is managed for expression motions.

Cubism 5 SDK for Java R1 beta3

18 Jan 03:13
4f663fc
Compare
Choose a tag to compare

Added

  • Add exception catching and error logging handling when an exception is thrown while loading a JSON file.

Changed

  • Change the compile and target SDK version of Android OS to 14.0 (API 34).
    • Upgrade the version of Android Gradle Plugin from 8.0.2 to 8.1.1.
    • Upgrade the version of Gradle from 8.1.1 to 8.2.
    • Change the minimum version of Android Studio to Hedgehog(2023.1.1).
  • Change the visibility of the CubismPhysicsInternal and CubismPhysicsJson classes to public.

Fixed

  • Fix an issue where models with a specific number of masks could not be drawn correctly.
  • Replace deprecated notation in build.gradle.

Cubism 5 SDK for Java R1 beta2

28 Sep 03:41
5349541
Compare
Choose a tag to compare

Added

  • Add final modifier to some private fields in CubismModel.

Changed

  • Change getter functions to get some data without getIdManager in CubismModel.
  • Change some private fields in CubismModel to final variable.

Cubism 5 SDK for Java R1 beta1

17 Aug 02:34
2c93022
Compare
Choose a tag to compare

Added

  • Add the function to get the ID of a given parameter.(CubismModel.getParameterId)
  • Add the CubismExpressionMotionManager class.

Changed

  • Change the minimum support version of Android OS to 5.0 (API 21).
  • Unify Offscreen drawing-related terminology with OffscreenSurface.
  • Change the visibility of the CubismId constructor to package-private.

Fixed

  • Fix the structure of the class in renderer.
  • Separate the high precision mask process from the clipping mask setup process.
  • Fix a bug that the value applied by multiply was not appropriate during expression transitions.
  • Fix a issue that CubismIdManager was not used when retrieving CubismId.
    • Please use CubismFramework.getIdManager().getId to get CubismId.

Removed

  • Remove an unnecessary dependency from build.gradle.
  • Remove several arguments of drawMesh function.

Cubism 4 SDK for Java R1

25 May 02:49
1038a3a
Compare
Choose a tag to compare

Added

  • Add some functions for checking consistency of MOC3 files.
    • Add the function of checking consistency in CubismMoc.create().
    • Add the function of checking consistency before loading a model. (CubismUserModel.loadModel())
  • Add some functions to change Multiply and Screen colors on a per part basis.

Changed

  • Change access modifiers for methods in CubismExpressionMotion. And also chenge it to non-final class, allowing it to be extended by inheritance.
  • Change to get opacity according to the current time of the motion.

Fixed

  • Refactor codes of cacheing vertex information in renderer.
    • This change does not affect the behavior of this SDK.
  • Fix a crash when specifying the number of mask buffers as an integer less than or equal to 0 in the second argument of setupRenderer function in CubismUserModel.
  • Fix the redundant process regarding the renderer to make the code more concise.
  • Optimize a drawing process of clipping masks.
    • CubismClippingManagerAndroid class has a flag to indicate whether mask textures have been cleared or not, and the texture clearing process is only called if they have not been cleared.

Cubism 4 SDK for Java R1 beta4

16 Mar 13:04
d583c92
Compare
Choose a tag to compare

Fixed

  • Fix some problems related to Cubism Core.
    • See CHANGELOG.md in Core.

Cubism 4 SDK for Java R1 beta3

10 Mar 12:51
0160c77
Compare
Choose a tag to compare

Added

  • Add function to validate MOC3 files.