Cubism Core API Reference

Updated: 03/10/2023

This page is for Cubism version 4.2 or earlier. Click here for the latest version.

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.

Target

  • 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]

Update history

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.
03/27/2018 r1 New New

English PDF File

Download : English Cubism Core API Reference(2.71MB)

[Last Update 03/10/2023 r11]

Change log

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
Fixed Typo fixes
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
Was this article helpful?
YesNo
Please let us know what you think about this article.