SDK Change Notes for Cinema 4D 2025.2¶
Summarizes the API and API documentation changes made between Cinema 4D version 2025.1.0 and 2025.2.0.
Documentation Changes¶
Major Changes¶
Added OCIO (OpenColorIO) support. Documentation can be found in the open_color_io script that demonstrates how to read, write, and convert colors in an OCIO color-managed Cinema 4D document.
Minor Changes¶
Fixed slow hashing of
c4d.C4DAtom
.Remove the hh argument from
BaseObject.AddDependence()
.
API Changes¶
Cinema API¶
Added
c4d.modules.render.OcioConverter
to transforms colors from one OCIO color space to another.Added
c4d.modules.render.SceneColorConverter
to Translates colors stored in scenes and scene elements to new color spaces, preserving the visual identity of the stored colors.Added
c4d.bitmaps.ShowBitmap()
optional argument “name” to add a name.Added
c4d.documents.BakeOcioViewToBitmap()
to Bakes the OCIO transforms associated with bmp into the image.Added
BaseBitmap.GetColorProfile()
optional argument “index” to define which colorprofile to retrieve.Added
PaintTexture.GetColorProfile()
optional argument “index” to define which colorprofile to retrieve.Added
BaseBitmap.SetColorProfile()
optional argument “index” to define which colorprofile to define.Added
PaintTexture.SetColorProfile()
optional argument “index” to define which colorprofile to define.Added
BaseDocument.GetOcioConfigPath()
to get the path of the OCIO configuration file.Added
BaseDocument.GetOcioProfiles()
to get the OCIO color profiles.Added
BaseDocument.GetActiveOcioColorSpacesNames()
to get the name of the OCIO color spaces.Added
BaseDocument.GetOcioColorSpaceNames()
to get the names of all color spaces that are defined by the current configuration.Added
BaseDocument.GetOcioRenderingColorSpaceNames()
to get the names of all rendering color spaces that are defined by the current configuration.Added
BaseDocument.GetOcioColorSpacesPopupMenu()
to get the names of all color spaces as menu items to be used as a menu.Added
BaseDocument.GetOcioViewTransformNames()
to get the names of all view transforms that are defined by the current configuration.Added
BaseDocument.GetOcioDisplayColorSpaceNames()
to get the names of all display color spaces that are defined by the current configuration.Added
BaseDocument.GetNameFromColorSpaceId()
to get the name of a color space that is defined by category and index.Added
BaseDocument.GetColorSpaceIdFromName()
to get the index of a color space that is defined by category and its name.Added
BaseDocument.CopyLinearWorkflow()
to copy the settings for linear workflow and OCIO configurations to another document.Added
BaseDocument.UpdateOcioColorSpaces()
to update the OCIO spaces that are stored internally in the document.Added
BaseDocument.GetColorConverter()
to return a converter to convert colors along the OCIO conversion paths defined by the settings of this document.Added
c4d.documents.BaseDocument.GetBasicColorConverter()
to return a fallback converter that can be used instead of a document specific OCIO converter in case of errors.Added
c4d.documents.BaseDocument.GetColorConverterForActiveDocument()
to return a converter to convert colors along the OCIO conversion paths defined by the currently active document.Added
BaseDocument.GetThumbnailColorConverter()
to return a converter to convert thumbnail colors along the OCIO conversion paths defined by the settings of this document.Added
ColorProfile.GetHashCode()
to retrieve a unique hash value based on the internal data.Added
GeDialog.GetColorRGBA()
to retrieve a RGBA color from an color identifier.Added
GeUserArea.GetColorRGBA()
to retrieve a RGBA color from an color identifier.Added
GeUserArea.DrawRoundedRectangle()
to draw a rounded rectangular area.Added
GeUserArea.DrawRoundedFrame()
to draw a rounded rectangular frame.Added
RenderData.GetResolution()
to gets the resolution and the aspect ratios of the render data.Added
RenderData.SetResolution()
to sets the resolution and the aspect ratios of the render data.Added
RenderData.GetRealFrameRate()
to retrieve the calculated framerate.Improved the string representation of the
c4d.bitmaps.ColorProfile
.
Maxon API¶
Fixed
maxon.AssetInterface.CreateRepositoryFromUrl()
which was not working at all.Fixed
maxon.AssetInterface.GetVersionString()
which was not working at all.Added
maxon.KeywordAssetInterface.HasKeyword()
to retrieve if the asset has a given keyword assigned.Fixed
maxon.KeywordAssetInterface.IsFavouriteAsset()
which was not correctly mark as a static function.Fixed
maxon.GraphModelInterface.GetModificationsSince()
which was not working correctly if a callable was passed for the receiver argument.Added
maxon.VolumeInterface.GetMinMaxValues()
to retrieve the Min and Max values of the volume.Added
maxon.VolumeInterface.MergeVolume()
to merges two volumes of same Type and Class.Added
maxon.VolumeInterface.IsInWorldSpace()
to know if voxel are in world space or not.Added
maxon.VolumeInterface.ConvertToSpace()
to convert the voxel space to world or local.
Mxutils API¶
Added
mxutils.GetMemoryAddress()
to return the native Python formatting memory address string.Added
mxutils.REPORT()
to decorate a function call by printing the function name, a horizontal bar below it.Fixed an issue with the symbol parser not parsing string in a define.
Fixed an issue with the symbol parser parsing incorrectly static constexpr within a template declaration.
Fixed an issue with the symbol parser parsing incorrectly template declaration on one line.
Fixed an issue with the symbol parser not parsing enums value declared with PRIVATE_MAXON_DEPRECATED_ENUMVALUE.