Dear Developer Community,
we are happy to announce, on January, 4th Maxime joined the SDK Team. In Plugin Café forums he is well known under his nickname gr4ph0s. Besides all the usual tasks in SDK Team, like developer support and additions to SDK documentation, his focus will certainly be in the Python arena, where we hope to improve our services with better Python coverage, more examples and increased robustness of the API in general. On the other hand nobody needs to be afraid of losing gr4ph0s in Plugin Café community, he will certainly continue to contribute there, even though with new name/account (MaximeA).
your SDK Team
The Melange SDK for Cinema 4D R19 has been released.
- Change: Parameter ID updated for R19
- Added: LOD object support
- Added: BrowseFiles class
With upcoming internal changes, all support for the C.O.F.F.E.E. programming language will be removed with the next major release of Cinema 4D. No more C.O.F.F.E.E. plug-ins and no C.O.F.F.E.E. scripting within scenes (C.O.F.F.E.E. Scripting Tag, XPresso C.O.F.F.E.E. Scripting Node, MoGraph C.O.F.F.E.E. Effector, Interaction Tag) will be supported. For all these, a Python alternative will be available. Plug-ins or scripts written in C.O.F.F.E.E. will need to be ported to either Python or C++ in order to make further use of them.
We are aware that this decision may be quite irritating for some. It wasn’t an easy decision to make. Sometimes you need to break with the past in order to approach a bright future.
Rest assured, we (MAXON’s SDK Team) will do our best to help you use Cinema’s Python and C++ SDKs. We will release a small plug-in at MAXON Labs in the not too distant future, which can be used to inspect scenes and detect any use of C.O.F.F.E.E. Future versions of Cinema 4D will also warn the user when a scene containing C.O.F.F.E.E. is loaded. In such cases (at the minimum) the next version of Cinema 4D will still show the C.O.F.F.E.E. source code in C.O.F.F.E.E. Scripting Tag, XPresso C.O.F.F.E.E. Scripting Node, MoGraph C.O.F.F.E.E. Effector and Interaction Tag but the code will not be executed anymore. This way it is still possible to port the code, even though C.O.F.F.E.E. was already removed.
MAXON’s SDK Team
It’s this time of the year again, we have released the new major version R19 of Cinema 4D.
Check out the new features of R19 on maxon.net.
Of course R19 also comes with updated SDKs for C++ and Python.
- Browse C++ SDK Documentation Online
- List of C++ API changes
- Download HTML format
- Download Windows HTML help format
- C++ and Python: Support for new features, like LOD object, Polygon Reduction and Sound Effector
- C++: Delegate support to define callbacks
- C++: Sometimes the small things matter: GetDataInstanceRef()
- Python: C4DFallOff is now available, providing you for example with means to add FallOffs to modifiers/deformers
New Documentation Content
Furthermore we extended the C++ SDK documentations with a few new overview and manual pages, like for example:
The Python documentation also inherited a few manuals from the C++ documentation.
Finally we have a bunch of new C++ plugin examples as well as Python script and plugin examples.
Unfortunately the C++ examples didn’t make it into the SDK delivered with R19 and R19 SP1. Instead we updated (finally!) our GitHub repository, so a bunch of new source can be found there and the old examples have been adapted to R19, where needed (which is actually not that much).
And of course Python received new examples as well:
- Py-DoubleCircle (demos RegisterPluginHelpCallback())
- Py-SpherifyModifier (added falloff)
- New scripts for R19
Have Fun With R19 and Happy Plugin Development!
A new Melange SDK for Cinema 4D R18 has been released.
Changes since 18.008 (Build #189950):
- Fixed: CTrack sync parameter not read/written
- Fixed: GeSleep() didn’t work properly on OSX
- Fixed: Set/GetDeformMode() worked the other way around (value was always the opposite) [BEHAVIOR CHANGED!]
- Examples projects updated, deprecated functions removed, compile errors and warnings on OSX fixed
- Fixed: Some objects have identical markers error message with exported scenes (layer shader)
- Fixed: IpCommunicationThread::SendScenefile() fails with files bigger than 3 GB
- Fixed: Missing shader data for inactive takes
- Other minor fixes
first time around?
Pick the right API for the right job
The very first thing you will need to do is choose which API will suit your needs.
Cinema 4D has… three APIs, the first two may be used to add functionality and are part of the product’s distribution:
The C++ SDK is what is used internally by the development team to write all our product’s functionalities. It is robust reliable and the obvious choice for commercial plugins. The C++ SDK offers the most extended capabilities of all APIs. Yet, if you are new in software development the learning curve may be a bit too steep. Then you probably want to have a look at the scripting languages.
Python is a scripting languages. It is a good choice for TDs, easier, more flexible to use than the C++ API, but the feature set exposed is a bit less extended. In general Python provides the means for very rapid development. On the other hand your sources are harder to protect in Python, your algorithms are easily exposed to all for reading.
Mélange is a bit different, as it provides means to exchange data with the “outside world”. It can be downloaded on this site.
All APIs have their own documentation which can be downloaded from this website. That documentation contains two things: articles explaining concepts and a functional documentation of the header files. The later is generated directly from our sources and is written by our development team. We publish relevant articles on our plugin development blog. These articles eventually find their way into the API documentation.
The first place to look is on your chosen API’s page. We will explain how to setup your development environment and get results fast.
We all need help once in a while. For this we have a Q&A forum where all are invited to ask questions and provide answers. Our support engineers will do their best to provide a solution to your problem.