What was New in R17

In R17.053

This version brings important fixes and several additions to the Python API.

Fixes

In R17.048

This version brings additions and important fixes to the Python API.

Token System Support

The Python API now supports the newly added Token System in R17.
The module c4d.modules.tokensystem has been added and it defines several functions to convert and extract Tokens information from strings and filenames.

Scripts showing its usage have been added to the examples.

Fixes

API Changelist

Here is the list of all the API additions and changes in the R17.048 Python API:

  • FORMAT_OBJ2IMPORT

  • FORMAT_OBJ2EXPORT

  • FORMAT_SKPIMPORT

  • ASSETDATA_FLAG_TEXTURES renamed to ASSETDATA_FLAG_TEXTURESONLY

  • ASSETDATA_FLAG_WITHCACHES

  • WPREF_COMMUNICATION_LIVELINK_ENABLED

  • WPREF_COMMUNICATION_LIVELINK_PORT

  • WPREF_NET_STOPJOBONSWAPPINGENABLED

  • WPREF_NET_STOPJOBONSWAPPINGAUTO

  • WPREF_NET_STOPJOBONSWAPPINGVALUE

  • SAVEPROJECT_WITHCACHES

  • RENDERPROGRESSTYPE_QUICK_PREVIEW

  • FILENAME_TOKENPOPUP

  • DA_UUID

In R17.032

Change of Python Version

The version of Python integrated in Cinema 4D moves from 2.6.4 to 2.7.9.
The reason for this change were minor issues in Python 2.6 and increased compatibility with other 3D packages.

In most cases this change should be no problem. Tests with existing scripts and plugins showed that almost are compatible with Python 2.7. Only in very rare cases adjustments need to be made.

Warning

If a plugin uses a Python C-module, this module needs to be recompiled for Python 2.7.

Take System Support

The Python API provides access and support for the newly added Take System feature in R17.
The module c4d.modules.takesystem has been added and it defines the following classes:

The new method BaseDocument.GetTakeData() returns the Take data for a document allowing to access its Take setup.

Note

See the C++ SDK documentation and its Take System overview articles to have an in-depth explanation how its API works.
Scripts examples for the Take System API have been added to the examples.

Improved C++ API Coverage

The Python API offers more coverage of the C++ API overcoming limitations:

Fixes

  • Crash with tool() function in script

  • GvNodeManager not accessible via link

  • Cannot connect nodes inside an Xgroup to ports of Xgroup

  • Crash with commands drag & drop

Documentation Changes

Threading Warning

The Threading Information section has been updated.

Warning

Forbidden to call in expressions (tags/nodes). Changing the document structure while an expression is evaluated will crash the application!

SDK examples

The examples (plugins, scripts and scenes) for the Python SDK have been uploaded online on GitHub. They can still be found in the ‘examples’ folder of the documentation archive.

API Changelist

Here is the list of all the API changes in the R17 Python API:

Functions

Constants

  • MSG_DESCRIPTION_CHECKUPDATE_AUTOTAKE

  • MSG_DESCRIPTION_CHECKUPDATE_BASELISTEDIT

  • MSG_DESCRIPTION_ALLOWOVERRIDE

  • MSG_DESCRIPTION_TAKECHANGED

  • MSG_TOOL_SWITCHACTION

  • TAG_ADDTOTAKEGROUP

  • COLOR_CTIMELINE_GRIDMEDIUM

  • COLOR_SB_CARET

  • COLOR_SB_CARETBG

  • COLOR_TEXT_AUTOTAKE

  • COLOR_TEXT_AUTOTAKE_DARK

  • PLUGINFLAG_MESSAGE_SYNCEVENT

  • PLUGINFLAG_TOOL_SWITCHACTION

  • INITRENDERRESULT_THREADEDLOCK renamed to INITRENDERRESULT_USERBREAK

  • NBIT_CKEY_WEIGHTEDTANGENT

  • NBIT_CKEY_REMOVEOVERSHOOT

  • NBIT_CKEY_AUTOWEIGHT

  • NBIT_TAKE_LOCK

  • NBIT_TAKE_OBJINGROUP

  • NBIT_TAKE_EGROUPOVERIDDEN

  • NBIT_TAKE_RGROUPOVERIDDEN

  • Xformula

  • Xvariation

  • OverrideBase

  • OverrideGroup

  • TakeBase

  • WPREF_OPENGL_VIEWPORT_DITHERING

Deprecated (Not used anymore in new Color Chooser):

  • WPREF_COLOR_SYSTEM_C4D

  • WPREF_COLOR_SYSTEM_BP
    • COLORSYSTEM_HSVTAB

    • COLORSYSTEM_TABLE

    • COLORSYSTEM_RGB_COLOR

    • COLORSYSTEM_HSV_COLOR

  • WPREF_COLOR_HRANGE
    • COLORSYSTEM_RANGE_DEGREE

  • WPREF_COLOR_SVRANGE
    • COLORSYSTEM_RANGE_DEGREE

  • WPREF_COLOR_QUICK_C4D

  • WPREF_COLOR_QUICK_BP

  • WPREF_COLOR_MIX_C4D

  • WPREF_COLOR_MIX_BP

  • WPREF_COLOR_SETUPS

  • WPREF_COLOR_QUICKPRESET

  • WPREF_COLOR_QUICKPRESET_LAST

  • WPREF_COLOR_MIXING_1

  • WPREF_COLOR_MIXING_2

  • WPREF_COLOR_MIXING_3

  • WPREF_COLOR_MIXING_4

  • WPREF_COLOR_SYSTEM_COLORCHOOSER

New color chooser preferences:

  • WPREF_COLOR_MODE_RGB

  • WPREF_COLOR_MODE_HEX

  • WPREF_COLOR_MODE_RGB_OLD_SLIDERS

  • WPREF_COLOR_MODE_HSV

  • WPREF_COLOR_MODE_KELVIN

  • WPREF_COLOR_MODE_MIXER

  • WPREF_COLOR_MODE_SWATCHES

  • WPREF_COLOR_MODE_SWATCHES_SHOWNAMES

  • WPREF_COLOR_MODE_SWATCHES_SWATCH_SIZE
    • COLORSYSTEM_SIZE_SMALL

    • COLORSYSTEM_SIZE_MEDIUM

    • COLORSYSTEM_SIZE_LARGE

  • WPREF_COLOR_MODE_SPECIAL
    • COLORSYSTEM_MODE_SPECIAL_DISABLED

    • COLORSYSTEM_MODE_SPECIAL_COLORWHEEL

    • COLORSYSTEM_MODE_SPECIAL_SPECTRUM

    • COLORSYSTEM_MODE_SPECIAL_PICTURE

  • WPREF_COLOR_MODE_WHEEL_SIZE
    • COLORSYSTEM_SIZE_SMALL

    • COLORSYSTEM_SIZE_MEDIUM

    • COLORSYSTEM_SIZE_LARGE

  • WPREF_COLOR_MODE_WHEEL_SWATCH_SIZE
    • COLORSYSTEM_SIZE_SMALL

    • COLORSYSTEM_SIZE_MEDIUM

    • COLORSYSTEM_SIZE_LARGE

  • WPREF_COLOR_MODE_SPECTRUM_SIZE
    • COLORSYSTEM_SIZE_SMALL

    • COLORSYSTEM_SIZE_MEDIUM

    • COLORSYSTEM_SIZE_LARGE

  • WPREF_COLOR_MODE_PICTURE_SWATCH_SIZE
    • COLORSYSTEM_SIZE_SMALL

    • COLORSYSTEM_SIZE_MEDIUM

    • COLORSYSTEM_SIZE_LARGE

Removed:

  • WPREF_ONLINEUPDATER_PROXYSERVER

  • WPREF_ONLINEUPDATER_PROXYPORT

  • WPREFS_LINKKEYFCSELECTION

  • WPREFS_LINKOMSELECTONLY

  • WPREFS_LINKOMSELECTONLYBUTTAGS

  • WPREFS_FCLISTVIEW

  • WPREFS_FCLISTVIEW_HIERARCHICAL

  • WPREF_NET_USERMANAGEMENTENABLED

  • WPREF_TAKE_BASIC_GROUP

  • WPREF_TAKE_MAIN_AUTOTAKE

  • WPREF_TAKE_MANAGER_SHOWFILTER

  • WPREF_TAKE_MANAGER_SHOWSHOWSEARCH

  • WPREF_TAKE_MANAGER_TREEMODE

  • WPREF_TAKE_DEFAULT_FILETR_OBJ

  • WPREF_TAKE_DEFAULT_FILETR_TAG

  • WPREF_TAKE_DEFAULT_FILETR_MAT

  • WPREF_TAKE_DEFAULT_FILETR_SHD

  • WPREF_TAKE_DEFAULT_FILETR_LAY

  • WPREF_TAKE_DEFAULT_FILETR_OTH

  • WPREF_TAKE_DEFAULT_FILETR_VIS

  • WPREF_TAKE_DEFAULT_FILETR_TRN

  • WPREF_TAKE_DEFAULT_FILETR_PRM

  • WPREF_TAKE_DEFAULT_FILETR_CAM

  • WPREF_TAKE_DEFAULT_FILETR_RS

  • EVMSG_TAKECHANGED

  • EVENT_ENQUEUE_REDRAW

  • IMAGERESULT_THREADCANCELED

  • RENDERFLAGS_DONTANIMATE

  • VPPhLensDistortion

New color chooser flags for GeDialog.AddColorField(), GeDialog.SetColorField() and GeDialog.AddColorChooser():

  • DR_COLORFIELD_NO_MODE_BUTTONS

  • DR_COLORFIELD_NO_COLORWHEEL

  • DR_COLORFIELD_NO_SPECTRUM

  • DR_COLORFIELD_NO_PICTURE

  • DR_COLORFIELD_NO_RGB

  • DR_COLORFIELD_NO_HSV

  • DR_COLORFIELD_NO_KELVIN

  • DR_COLORFIELD_NO_MIXER

  • DR_COLORFIELD_NO_SWATCHES

  • DR_COLORFIELD_NO_SCREENPICKER

  • DR_COLORFIELD_ENABLE_COLORWHEEL

  • DR_COLORFIELD_ENABLE_SPECTRUM

  • DR_COLORFIELD_ENABLE_PICTURE

  • DR_COLORFIELD_ENABLE_RGB

  • DR_COLORFIELD_ENABLE_HSV

  • DR_COLORFIELD_ENABLE_KELVIN

  • DR_COLORFIELD_ENABLE_MIXER

  • DR_COLORFIELD_ENABLE_SWATCHES

  • DR_COLORFIELD_RGB_HIDE_HEX

Deprecated (Not used anymore in new Color Chooser):

  • BFM_COLORCHOOSER_SYSTEM

  • BFM_COLORCHOOSER_H_RANGE

  • BFM_COLORCHOOSER_SV_RANGE

  • BFM_COLORCHOOSER_QUICKSTORE

  • BFM_COLORCHOOSER_MIXINGPANEL

  • DRAGTYPE_RGB_ARRAY

  • DESCRIPTION_NO_TAKE_OVERRIDES

  • DESCRIPTION_SINGLEDESC_MODE

  • GV_NODE_VERSION number changed from 5 to 6

  • ID_OPERATOR_TAKEOVERRIDE