MAXON API Frameworks

About

A framework includes the public declarations of MAXON API interfaces and other usable classes, structures and functions.

Note
The frameworks delivered with the SDK do not contain any project files. Projects files must be created using the Project Tool.

Frameworks

cinema.framework

cinema.framework contains the classic API. It defines components like BaseDocument, BaseObject, BaseMaterial etc.

Warning
This framework will be progressively reduced in future versions of Cinema 4D and, at the end, completely dismissed. See Plugin Migration.

cinema_hybrid.framework

cinema_hybrid.framework contains the API to bring Classic API object to the Maxon API.

It also contain helpers to incorporate Classic API type with the Asset API.

E.g. translating GraphNode to BaseList2D, using a CustomGui in a node and display it in the description.

Warning
This framework will be progressively reduced in future versions of Cinema 4D and, at the end, completely dismissed. See Plugin Migration.

core.framework

The core.framework contains the basic building blocks of the MAXON API:

animation.framework

The animation.framework defines the maxon::AutoWeightInterface for custom weight algorithms. It further provides the IDs of the build-in algorithms that can be used with the Weight Manager. See CAWeightMgr Manual.

asset.framework

The asset.framework contains APIs regarding repositories, assets and presets.

command.framework

The command.framework defines the interface for generic commands. See Commands Manual.

corenodes.framework

The corenodes.framework allows to create custom core nodes used with Cinema 4D's node system.

crypt.framework

crypt.framework includes additional interfaces for data encryption based on stream conversions (maxon::CryptographyStreamConversionInterface, maxon::CryptoKeyInterface). See Stream Conversions Manual.

exchange.framework

This framework defines custom behavior for nodal material during import/export of a node system.

This is not limited to file (e.g. *.fbx), once a NodeSystem have a valid StandardSurface definition then this StandardSurface will be used by the viewport.

geom.framework

geom.framework contains various modeling classes:

graph.framework

The graph framework defines an abstract graph model interface. It allows the presentation of arbitrary graph-like structures in a unified, lightweight way.

image.framework

The image.framework contains classes and structures to handle image and media data:

math.framework

math.framework various advanced mathematical classes and tools:

mesh_misc.framework

mesh_misc.framework contains the base interfaces for mesh attributes:

misc.framework

misc.framework contains various tools:

network.framework

network.framework contains various interfaces to handle network communication:

neutron.framework

neutron.framework contains various MAXON_ATTRIBUTE, constants for scene nodes.

nodes.framework

This framework defines node systems and user nodes. It is completely independent of the core nodes framework and provides as its central class a copy-on-write data container (NodeSystem) for graph-like structures.

Interfaces that can be implemented are:

nodespace.framework

A node space is a container for a node system for a a specific purpose.

A custom node space is implemented with:

python.framework

python.framework contains interfaces to execute Python code. See Python.

render_filter.framework

The render_filter.framework contains interfaces to use and implement render filters like the denoiser filter.

See Render Filter and Render Filter Implementation.

system.framework

This contains only internal system functions. Third party developers must not use this.

volume.framework

volume.framework contains interfaces to handle volumes:

Further Reading