Cubism Core API Reference
The Cubism Core API Reference PDF, which is available on this page,
covers the role, usage, and API specifications of the Live2D Cubism Core in the Live2D Cubism SDK for Native.
- Live2D Cubism SDK for Native users
- Those considering implementing wrappers to call Core from other languages (Java, Python, etc.)
- Those who are considering incorporating the software into other programs or platforms, such as game engines
Functional Classification of Core and Framework
The following diagram illustrates the relationship between Application, Core, and Framework and the roles of their functions.
Core is used by both Application and Framework.
What is Core?
Core is a library with APIs necessary to handle models (.moc3 files) created using Cubism 3 or later Editors. The features are described below.
- The API is written in C.
- Core does not allocate and destroy memory by itself. Since the required amount of memory is requested by Core, the user must allocate the specified amount and pass it to Core.
- Drawing functions are not included. Core’s role is to calculate vertex information according to the model’s parameters, and the user gets the calculated vertex information and information necessary for drawing (UV, opacity, etc.) from the Core.
The above features make the design highly portable and platform-independent.
Japanese Version PDF File
Download: Cubism Core API Reference for Japanese Version (2.85 MB)
[Last updated 03/10/2023 r11]
|Date of update||Version number||Type||Contents|
|03/10/2023||r11||Add||Added description of the function to validate MOC3.|
|07/07/2022||r10||Add||Added description of the function to retrieve parameter types.|
|Add||Added description of the function to retrieve the parent parts of an ArtMesh.|
|Add||A description of versions that can be obtained was updated in “moc3 file version” and “csmGetMocVersion.”|
|05/19/2022||r9||Add||Added explanations related to Multiply Color and Screen Color.
Added explanation related to obtaining information on keys set in parameters.
|02/26/2021||r8||Revision||Added explanation for the existence of Drawable with 0 in csmGetDrawableIndexCounts.|
|Revision||Added explanation that in some cases valid addresses are not stored in csmGetDrawableIndices.|
|09/04/2019||r7||Revision||Adjusted notation for Cubism Core and Cubism SDK.|
|08/01/2019||r6||Add||Added constant for moc3 file version.
Added snippet with addition of ConstantFlag element.
Added explanation of flags for mask inversion.
Added description of mask inversion function.
Added an Available Version field to individual APIs.
|Revision||Typographical error correction.|
|02/12/2019||r5||Add||Added information on how to check file version.|
|Add||Added API description of csmGetLatestMocVersion.|
|Add||Added API description of csmGetMocVersion.|
|Add||Added CoreVersion notation to which API for cmGetPartParentPartIndices was added.|
|12/20/2018||r4||Add||“About moc3 file versions” was added.|
|Add||“Get Parent Part of Part” was added.|
|Add||A description of API of “csmGetPartParentPartIndices” was added.|
|Revision||Corrected typos and omissions. Modified wording to avoid ambiguity.|
|07/11/2018||r3||Revision||Corrected typos and omissions.|
|Revision||Modified wording to avoid ambiguity.|
|Revision||Detailed modification of the drawing method specification regarding the drawing method and access to the mask.|
|Revision||Fixed a mistake in the API list where some arguments were marked with const.|
|05/18/2018||r2||Revision||Typographical error correction.|
|Add||Added information about the characteristics of the information obtained by cmGetDrawableVertexPositions.|
English PDF File
Download : English Cubism Core API Reference(2.71MB)
[Last Update 03/10/2023 r11]
|Update day||Version||Update Type||Content|
|03/10/2023||r11||Added||Added description of the function to validate MOC3.|
|07/07/2022||r10||Added||Added description of the function to get parameter types.|
|Added||Added description of the function to get parent parts of ArtMeshes.|
|Added||Updated obtained versions in “File version of moc3” and “csmGetMocVersion”.|
|05/19/2022||r9||Added||Added explanations related to multiply colors and screen colors.
Added explanations related to obtaining information on keys set in parameters.
|03/01/2021||r8||Fixed||Added an explanation for the existence of Drawables with a count of 0 in csmGetDrawableIndexCounts.|
|Fixed||Added explanation of the case where csmGetDrawableIndices does not store valid addresses.|
|09/04/2019||r7||Fixed||Adjusted notation of “Cubism Core” and “Cubism SDK”|
|08/01/2019||r6||Added||Added a constant stands for moc3 file version
Added a snippet since the ConstantFlag element has added
Added a description of the Inverted Mask flag
Added a description of the Inverted Mask function
Added an item stands for the available version of each API
|02/26/2019||r5||Added||Added “File version of moc3”|
|Added||Added “Getting the parent parts of the parts”|
|Added||Added the API description of csmGetLatestMocVersion|
|Added||Added the API description of csmGetMocVersion|
|Added||Added the API description of csmGetPartParentPartIndices|
|07/20/2018||r3||Corrected||Corrected errors of snipet|
|Corrected||Corrected vague expression|
|Corrected||Corrected omissions of letter in snipet|
|Corrected||Corrected vague expression|
|Corrected||Corrected mistake that const is included in notation of arguments.|
|Corrected||Added more detailed explanation about rendering method of mask and how to access it|
|06/14/2018||r2||translation||translation to English from Japanese|