Skip to content

Commit

Permalink
Update to CubismSdkForNative-5-r.1
Browse files Browse the repository at this point in the history
  • Loading branch information
Arisego committed Apr 25, 2024
1 parent e835f74 commit f59a4fc
Show file tree
Hide file tree
Showing 55 changed files with 2,644 additions and 663 deletions.
82 changes: 82 additions & 0 deletions Source/ThirdParty/CubismLibrary/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,88 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).


## 2024-03-26

### Remove

* [Unity] Remove built with Emscripten 1.38.48.
* Unity 2021.2 or later uses only Core under `Assets/Live2D/Cubism/Plugins/Experimental/Emscripten/latest`.


## 2023-09-28

### Remove

* Remove bitcode from IOS build.


## 2023-08-17

### Added

* Enhance Blend Shape features.
* Please see [here](https://docs.live2d.com/en/cubism-editor-manual/blend-shape/).

### Changed

* Upgrade Core version to 05.00.0000.


## 2023-05-09

### Changed

* Change the GCC version of the library for Linux from 6.5.0 to 8.3.0.


## 2023-03-16

### Fixed

* Fix a case in which the index of the mask's drawable object was negative value for `csmGetDrawableMasks()`.
* Fix a problem in which `csmHasMocConsistency()` was returned as 0 even though the MOC3 file was in the correct format.
* This problem was occurring in some models using the blendshape weight limit settings.
* Fix a problem that could cause a crash if a MOC3 file that is not in the correct format is loaded with `csmHasMocConsistency()`.

### Changed

* Upgrade Core version to 04.02.0004.


## 2023-03-10

### Added

* Add the function `csmHasMocConsistency`.
* This function verifies that the `MOC3` file is valid.

### Changed

* Upgrade Core version to 04.02.0003.


## 2023-02-21

### Added

* [Web] Added classes related to `Memory`.
* Add the funciton `initializeAmountOfMemory()` to adjust the amount of memory at initialization.


## 2022-10-28

### Fixed

* [Java] Remove unnecessary methods.


## 2022-10-06

### Added

* [Java] Add AAR file for Android.


## 2022-09-08

### Added
Expand Down
2 changes: 1 addition & 1 deletion Source/ThirdParty/CubismLibrary/README.ja.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ Core
| プラットフォーム | アーキテクチャ | dll | lib | パス | 注記 |
| --- | --- | --- | --- | --- | --- |
| Android | ARM64 ||| android/arm64-v8a | |
| Android | ARMv7 ||| android/armeabi-v7a | |
| Android | ARMv7 ||| android/armeabi-v7a | このライブラリは現在非推奨で、近日中に削除される予定です。 |
| Android | x86 ||| android/x86 | |
| Android | x86_64 ||| android/x86_64 | |
| iOS | ARM64 | || ios/xxx-iphoneos | iOSデバイス |
Expand Down
2 changes: 1 addition & 1 deletion Source/ThirdParty/CubismLibrary/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ Core
| Platform | Architecture | dll | lib | Path | Note |
| --- | --- | --- | --- | --- | --- |
| Android | ARM64 ||| android/arm64-v8a | |
| Android | ARMv7 ||| android/armeabi-v7a | |
| Android | ARMv7 ||| android/armeabi-v7a | This library is currently deprecated and will be removed in the near future. |
| Android | x86 ||| android/x86 | |
| Android | x86_64 ||| android/x86_64 | |
| iOS | ARM64 | || ios/xxx-iphoneos | iOS Devices |
Expand Down
20 changes: 18 additions & 2 deletions Source/ThirdParty/CubismLibrary/include/Live2DCubismCore.h
Original file line number Diff line number Diff line change
Expand Up @@ -94,8 +94,10 @@ extern "C"
csmMocVersion_33 = 2,
/** moc3 file version 4.0.00 - 4.1.05 */
csmMocVersion_40 = 3,
/** moc3 file version 4.2.00 - */
csmMocVersion_42 = 4
/** moc3 file version 4.2.00 - 4.2.04 */
csmMocVersion_42 = 4,
/** moc3 file version 5.0.00 - */
csmMocVersion_50 = 5
};

/** moc3 version identifier. */
Expand Down Expand Up @@ -180,6 +182,20 @@ extern "C"
*/
csmApi csmMocVersion csmCallingConvention csmGetMocVersion(const void* address, const unsigned int size);

/* ----------- *
* CONSISTENCY *
* ----------- */

/**
* Checks consistency of a moc.
*
* @param address Address of unrevived moc. The address must be aligned to 'csmAlignofMoc'.
* @param size Size of moc (in bytes).
*
* @return '1' if Moc is valid; '0' otherwise.
*/
csmApi int csmCallingConvention csmHasMocConsistency(void* address, const unsigned int size);

/* ------- *
* LOGGING *
* ------- */
Expand Down
5 changes: 4 additions & 1 deletion Source/UnrealLive2D/Private/FrameWork/.editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,9 @@ indent_style = space
insert_final_newline = true
trim_trailing_whitespace = true

[*.{cpp,hpp}]
[*.{cpp,hpp,tpp}]
indent_size = 4
charset = utf-8-bom

[*.md]
trim_trailing_whitespace = false
154 changes: 154 additions & 0 deletions Source/UnrealLive2D/Private/FrameWork/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,151 @@ All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).

## [5-r.1] - 2024-03-26

### Added

* Add function `ModF()` to compute floating-point remainder in `CubismMath` class.

### Changed

* Change the `Reset()` function of `CubismPose` class to public.
* Change some processes in the renderer to be handled as functions.
* 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 third argument `userTimeSeconds` is deprecated.
* Please use the `StartMotion()` function with two arguments from now on.

### Fixed

* Fix a typo in `SetParameterValue()`.
* Fix an issue that the override keyword is not specified for some functions of classes inheriting from `CubismRenderer`.
* Fix operator overloading in the `CubismId` class from being private to public.
* 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.
* Fix shader build error when running nmake in Vulkan.

### Removed

* Remove `CubismSetupMaskedShaderUniforms`, `CubismNormalShaderUniforms`, `CubismMaskedShaderUniforms` and `CubismFragMaskedShaderUniforms` from Metal and merged them into `CubismMaskedShaderUniforms`.


## [5-r.1-beta.4] - 2024-01-25

### Fixed

* Fix memory leak in DX11.
* Fix an issue where models with a specific number of masks could not be drawn correctly.
* Fix to check for null when reading json.
* Fix an issue that caused some graphics drivers to not render correctly in Vulkan.
* Fix errors related to semaphore waiting stages.
* Fix errors that occurs when building with x86 in vulkan.


## [5-r.1-beta.3] - 2023-10-12

### Added

* Add `clamp()` to CubismMath.


## [5-r.1-beta.2] - 2023-09-28

### Added

* Add a function to the `ACubismMotion` class that sets arbitrary data in the callback. by [@MizunagiKB](https://github.com/MizunagiKB)
* Add a comment for clarity for the function whose usage is not intuitive.

### Changed

* Change getter functions to get some datas without `GetIdManager` in `CubismModel`.

### Fixed

* Fix a typo in a variable related to the bezier handle restriction state.


## [5-r.1-beta.1] - 2023-08-17

### Added

* Add the function to get the ID of a given parameter.(`CubismModel::GetParameterId`)
* Add the `CubismExpressionMotionManager` class.
* Add a Renderer for Vulkan API in Windows.

### Changed

* Unify Offscreen drawing-related terminology with `OffscreenSurface`.
* Change comment guidelines for headers in the `Framework` directory.

### Fixed

* Fix a bug that caused cocos2d-x culling to not be performed correctly.
* Fix the structure of the class in renderer.
* Separate the high precision mask process from the clipping mask setup process.
* Separate shader class from CubismRenderer files for Cocos2d-x, Metal, OpenGL.
* Fix Metal rendering results on macOS to be similar to OpenGL.
* If you want to apply the previous Metal rendering results, change `mipFilter` in `MTLSamplerDescriptor` from `MTLSamplerMipFilterLinear` to `MTLSamplerMipFilterNotMipmapped`.
* Fix a bug that the value applied by multiply was not appropriate during expression transitions.

### Removed

* Remove several arguments of `DrawMesh` function.


## [4-r.7] - 2023-05-25

### Added

* Add some function for checking consistency of MOC3.
* Add the function of checking consistency on reviving a MOC3. (`CubismMoc::Create`)
* Add the function of checking consistency from unrevived MOC3. (`CubismMoc::HasMocConsistencyFromUnrevivedMoc`)
* Add some functions to change Multiply and Screen colors on a per part basis.

### Changed

* Change access specifier for `CubismExpressionMotion`.
* Change to get opacity according to the current time of the motion.

## [4-r.6.2] - 2023-03-16

### Fixed

* Fix a bug that caused double and triple buffering to be disabled on DirectX systems due to multiple render textures in 4-r.6.
* Fix the condition of splitting the mask buffer according to the number of masks used to be in accordance with the specification.
* Fix some problems related to Cubism Core.
* See `CHANGELOG.md` in Core.


## [4-r.6.1] - 2023-03-10

### Added

* Add function to validate MOC3 files.


## [4-r.6] - 2023-02-21

### Added

* Add API to allow users to configure culling.
* The number of render textures used can now be increased arbitrarily.
* The maximum number of masks when using multiple render textures has been increased to "number of render textures * 32".

### Fixed

* Fix a bug that models with culling were not rendered correctly in Metal.
* Fix a bug that caused some masks to be rendered incorrectly when using 17 or more masks in DirectX systems.

### Removed

* Remove unnecessary variable `modelToWorldF` in renderer.


## [4-r.5.1] - 2022-09-15

Expand Down Expand Up @@ -226,6 +371,15 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
* Fix invalid expressions of `CubismCdiJson`.


[5-r.1]: https://github.com/Live2D/CubismNativeFramework/compare/5-r.1-beta.4...5-r.1
[5-r.1-beta.4]: https://github.com/Live2D/CubismNativeFramework/compare/5-r.1-beta.3...5-r.1-beta.4
[5-r.1-beta.3]: https://github.com/Live2D/CubismNativeFramework/compare/5-r.1-beta.2...5-r.1-beta.3
[5-r.1-beta.2]: https://github.com/Live2D/CubismNativeFramework/compare/5-r.1-beta.1...5-r.1-beta.2
[5-r.1-beta.1]: https://github.com/Live2D/CubismNativeFramework/compare/4-r.7...5-r.1-beta.1
[4-r.7]: https://github.com/Live2D/CubismNativeFramework/compare/4-r.6.2...4-r.7
[4-r.6.2]: https://github.com/Live2D/CubismNativeFramework/compare/4-r.6.1...4-r.6.2
[4-r.6.1]: https://github.com/Live2D/CubismNativeFramework/compare/4-r.6...4-r.6.1
[4-r.6]: https://github.com/Live2D/CubismNativeFramework/compare/4-r.5.1...4-r.6
[4-r.5.1]: https://github.com/Live2D/CubismNativeFramework/compare/4-r.5...4-r.5.1
[4-r.5]: https://github.com/Live2D/CubismNativeFramework/compare/4-r.5-beta.5...4-r.5
[4-r.5-beta.5]: https://github.com/Live2D/CubismNativeFramework/compare/4-r.5-beta.4.1...4-r.5-beta.5
Expand Down
19 changes: 13 additions & 6 deletions Source/UnrealLive2D/Private/FrameWork/README.ja.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

# Cubism Native Framework

Live2D Cubism 4 Editor で出力したモデルをアプリケーションで利用するためのフレームワークです。
Live2D Cubism Editor で出力したモデルをアプリケーションで利用するためのフレームワークです。

モデルを表示、操作するための各種機能を提供します。
モデルをロードするには Cubism Core ライブラリと組み合わせて使用します。
Expand All @@ -15,6 +15,13 @@ Live2D Cubism 4 Editor で出力したモデルをアプリケーションで利
本フレームワークを使用する前に、[ライセンス](LICENSE.md)をご確認ください。


## Cubism 5新機能や過去バージョンとの互換性について

本 SDK はCubism 5に対応した製品です。
Cubism 5 Editorに搭載された新機能のSDK対応については [こちら](https://docs.live2d.com/cubism-sdk-manual/cubism-5-new-functions/)をご確認ください。
過去バージョンのCubism SDKとの互換性については [こちら](https://docs.live2d.com/cubism-sdk-manual/compatibility-with-cubism-5/)をご確認ください。


## コンポーネント

### Effect
Expand Down Expand Up @@ -84,7 +91,7 @@ JSON パーサーやログ出力などのユーティリティ機能を提供し

### フォークとプルリクエスト

修正、改善、さらには新機能をもたらすかどうかにかかわらず、プルリクエストに感謝します。ただし、ラッパーは可能な限り軽量で浅くなるように設計されているため、バグ修正とメモリ/パフォーマンスの改善のみを行う必要があることに注意してください。メインリポジトリを可能な限りクリーンに保つために、必要に応じて個人用フォークと機能ブランチを作成してください。
修正、改善、さらには新機能をもたらすかどうかにかかわらず、プルリクエストに感謝します。メインリポジトリを可能な限りクリーンに保つために、必要に応じて個人用フォークと機能ブランチを作成してください。

### バグ

Expand All @@ -95,9 +102,9 @@ Live2Dコミュニティでは、問題のレポートと機能リクエスト
SDKの将来についてのフィードバックにも関心があります。Live2Dコミュニティで提案や機能のリクエストを送信できます。このプロセスをより効果的にするために、それらをより明確に定義するのに役立つより多くの情報を含めるようお願いしています。


## コミュニティ
## フォーラム

ユーザー同士でCubism SDKの活用方法の提案や質問をしたい場合は、是非コミュニティをご活用ください
ユーザー同士でCubism SDKの活用方法の提案や質問をしたい場合は、是非フォーラムをご活用ください

- [Live2D 公式コミュニティ](https://creatorsforum.live2d.com/)
- [Live2D community(English)](https://community.live2d.com/)
- [Live2D 公式クリエイターズフォーラム](https://creatorsforum.live2d.com/)
- [Live2D Creator's Forum(English)](https://community.live2d.com/)
Loading

0 comments on commit f59a4fc

Please sign in to comment.