Releases: Live2D/CubismJavaFramework
Releases · Live2D/CubismJavaFramework
Cubism 5 SDK for Java R4
Added
- Add an API to
CubismMotionJson
for verifying the consistency ofmotion3.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 theCubismModel
class for managing parameter repeat flags at the model level. - Add the variable
userParameterRepeatDataList
to theCubismModel
class for managing parameter repeat flags for each parameter.
- Add the variable
- 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
Added
- Add new motion loop processing that seamlessly connects the start and end points of the loop.
- The
isLooped
variable has been moved from theCubismMotion
class to theACubismMotion
class asisLoop
. - Add the setter for
isLoop
,setLoop(boolean loop)
, to classACubismMotion
. - Add the getter for
isLoop
,getLoop()
, to classACubismMotion
. - The
isLoopFadeIn
variable was moved from classCubismMotion
to classACubismMotion
. - Add the setter for
isLoopFadeIn
,setLoopFadeIn(boolean loopFadeIn)
, to classACubismMotion
. - Add the getter for
isLoopFadeIn
,getLoopFadeIn()
, to classACubismMotion
. - Add a variable
motionBehavior
for version control to theCubismMotion
class.
- The
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()
- Accordingly, change the implementation of the following methods.
- 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
Added
- Add function to get
CombinedParameters
listed incdi3.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
Added
- Add type constraint to the generics type of
getRenderer
function inCubismUserModel
. - Add function
modF()
to compute floating-point remainder inCubismMath
class.
Changed
- Change the default value of the flag for debugging from
true
tofalse
. - Change to output log if the argument
motionQueueEntry
isnull
in theupdateFadeWeight()
function of theACubismMotion
class.
Deprecated
- Deprecate the
fadeWeight
variable and thegetFadeWeight()
function of theCubismExpressionMotion
class.- The
fadeWeight
variable of theCubismExpressionMotion
class can cause problems. - Please use the
getFadeWeight()
function of theCubismExpressionMotionManager
class with one argument from now on.
- The
- The
startMotion()
function of theCubismMotionQueueManager
class with the unnecessary second argumentuserTimeSeconds
is deprecated.- Please use the
startMotion()
function with one argument from now on.
- Please use the
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
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
andCubismPhysicsJson
classes topublic
.
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
Added
- Add final modifier to some private fields in
CubismModel
.
Changed
- Change getter functions to get some data without
getIdManager
inCubismModel
. - Change some private fields in
CubismModel
tofinal
variable.
Cubism 5 SDK for Java R1 beta1
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 retrievingCubismId
.- Please use
CubismFramework.getIdManager().getId
to getCubismId
.
- Please use
Removed
- Remove an unnecessary dependency from
build.gradle
. - Remove several arguments of
drawMesh
function.
Cubism 4 SDK for Java R1
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 the function of checking consistency in
- 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 inCubismUserModel
. - 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
Fixed
- Fix some problems related to Cubism Core.
- See
CHANGELOG.md
in Core.
- See
Cubism 4 SDK for Java R1 beta3
Added
- Add function to validate MOC3 files.