Cubism Core API Reference
[Last updated on 07/07/2022]
The Cubism Core API Reference PDF published on this page
covers the role, usage, and API specifications of Live2D Cubism Core in 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 consists of C language.
• 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. The role of Core is to calculate vertex information according to the parameters of the model, and the user obtains the calculated vertex information and information necessary for drawing (UVs, opacity, etc.) from Core for drawing. The drawing functionality is provided by the Framework as a reference implementation, so there is no need to implement it on your own.
The above features make the design highly portable and platform-independent.
Japanese version PDF file
[Last updated on 07/07/2022 r10]
|Last updated||Version number||Classification||Contents|
|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||Updated “moc3 file version” and “csmGetMocVersion” to describe the versions that can be obtained.|
|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
Addition of snippet with addition of ConstantFlag element
Added explanation of flags for mask inversion
Added description of mask inversion function
Add 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||API for cmGetPartParentPartIndices added CoreVersion notation added|
|12/20/2018||r4||Add||Added “About moc3 file versions”|
|Add||Added “Get Parent Part of Part”|
|Add||Added API description of “csmGetPartParentPartIndices”|
|Revision||Corrected typos and omissions. Modified wording to avoid ambiguity.|
|07/11/2018||r3||Revision||Correction of typographical errors and omissions|
|Revision||Modification of 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|
|PS||Added information about the characteristics of the information obtained by cmGetDrawableVertexPositions|
English PDF File
Download : English Cubism Core API Reference (2.71MB)
[Last Update 07/07/2022 r9]
|Update day||Version||Update Type||Content|
|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|