Changes in Cineware SDK 20.0

New Features Support

  • Instance Object can be created and tweaked. Its matrix and color arrays can be set for multi-instance mode. See InstanceObjectData.

Added Features Support

Node-Based Materials

The Cineware SDK 20 does not give access to the node-based materials API so it is not possible to create node materials.

API Changes

customgui_field.h

// New header
using namespace cineware;
class FieldLayer;
class FieldList;

customgui_gradient.h

c4d_operatordata.h

// New header
using namespace cineware;

gv_node.h

// New header
using namespace cineware;
class GvRealNode;

gv_nodemaster.h

// New header
using namespace cineware;

gv_port.h

// New header
using namespace cineware;
enum GvPortIO;
class GvRealPort;

c4d_basebitmap.h

using namespace cineware;
{
static BaseBitmap* Alloc();
static void Free(BaseBitmap*& bm);
};

c4d_baselist2d.h

using namespace cineware;
class BaseList2D : public GeListNode
{
};

c4d_basematerial.h

using namespace cineware;
class BaseMaterial : public BaseList2D
{
Bool HasNimbusRef() const;
};

c4d_expressotagdata.h

// New header
using namespace cineware;

c4d_filename.h

using namespace cineware;
class Filename
{
Bool Content() const;
// Renamed
Bool IsPopulated() const;
};

c4d_fracturevoronoidata.h

// New header
using namespace cineware;

c4d_instanceobjectdata.h

// New header
using namespace cineware;

c4d_parameter_ids.h

c4d_pointgenerator.h

// New header
using namespace cineware;

c4d_renderconnection.h

c4d_string.h

using namespace cineware;
class String
{
Bool Content() const;
// Renamed
Bool IsPopulated() const;
};

c4d_system.h

using namespace cineware;
// Removed EPSILON90
// Removed EPSILON12
// Removed EPSILON16

c4d_volumebuilderdata.h

// New header
using namespace cineware;

c4d_volumegroupdata.h

// New header
using namespace cineware;
class VolumeGroupData;
cineware::BaseList2D::GetDataInstanceRef
BaseContainer & GetDataInstanceRef()
cineware::GvRealNodeMaster
Definition: gv_nodemaster.h:65
cineware::FieldList
Definition: customgui_field.h:141
VPnormalpass
#define VPnormalpass
Normal Pass.
Definition: c4d_parameter_ids.h:1044
cineware::GvPortIO
GvPortIO
Definition: gv_port.h:47
cineware::IpCommunicationThread
Communication thread to establish a connection to a render server and to control the rendering proces...
Definition: c4d_renderconnection.h:235
cineware::Filename
Manages file and path names.
Definition: c4d_filename.h:30
cineware::BaseBitmap
Definition: c4d_basebitmap.h:52
cineware::BaseBitmap::Alloc
static BaseBitmap * Alloc()
cineware::GvExpressionData
Definition: c4d_expressotagdata.h:21
Ovoronoipointgenerator
#define Ovoronoipointgenerator
Voronoi Fracture internal Point generator.
Definition: c4d_parameter_ids.h:745
cineware::GRADIENT_INTERPOLATION_TYPE
GRADIENT_INTERPOLATION_TYPE
Definition: customgui_gradient.h:74
cineware::BaseCommunicationThread
Private. Communication class. Not meant to be used directly.
Definition: c4d_renderconnection.h:137
cineware::InstanceObjectData
Definition: c4d_instanceobjectdata.h:23
cineware::String::IsPopulated
Bool IsPopulated() const
Ovolumemesher
#define Ovolumemesher
Volume Mesher.
Definition: c4d_parameter_ids.h:688
cineware::BaseMaterial::HasNimbusRef
Bool HasNimbusRef() const
cineware::GvOperatorData
Definition: c4d_operatordata.h:26
cineware::Bool
bool Bool
Boolean type, possible values are only false/true, 8 bit.
Definition: c4d_system.h:192
cineware::GvRealNodeData
Definition: gv_node.h:89
cineware::GvRealGroupData
Definition: gv_node.h:156
cineware
Definition: b3d_file.h:22
RENDERCONNECTION_COMMAND_RENDERMATERIALS
#define RENDERCONNECTION_COMMAND_RENDERMATERIALS
Since CineRender R20.018/Cinema 4D R20.SP1.
Definition: c4d_renderconnection.h:73
Talembicmorphtag
#define Talembicmorphtag
Alembic Morph.
Definition: c4d_parameter_ids.h:884
GRADIENTPROPERTY_NOEDITCOLOR
#define GRADIENTPROPERTY_NOEDITCOLOR
Definition: customgui_gradient.h:38
cineware::BaseList2D
Represents a node in a 2D list.
Definition: c4d_baselist2d.h:38
Ofield
#define Ofield
Field object.
Definition: c4d_parameter_ids.h:744
GRADIENTPROPERTY_NOBRIGHTNESS
#define GRADIENTPROPERTY_NOBRIGHTNESS
Definition: customgui_gradient.h:63
cineware::BaseContainer
Definition: c4d_basecontainer.h:140
GRADIENTPROPERTY_ALPHA
#define GRADIENTPROPERTY_ALPHA
Definition: customgui_gradient.h:33
Ovolumebuilder
#define Ovolumebuilder
Volume Builder.
Definition: c4d_parameter_ids.h:687
cineware::PointGenerator
Definition: c4d_pointgenerator.h:20
VPPhLensDistortion
#define VPPhLensDistortion
Lens Distortion.
Definition: c4d_parameter_ids.h:1045
GRADIENTPROPERTY_NOBIASPOSITION
#define GRADIENTPROPERTY_NOBIASPOSITION
Definition: customgui_gradient.h:58
Tmeshattribute
#define Tmeshattribute
CustomDataTag.
Definition: c4d_parameter_ids.h:885
cineware::BaseMaterial
Definition: c4d_basematerial.h:20
cineware::GvPortFlags
GvPortFlags
Definition: gv_port.h:59
cineware::GvOperatorType
GvOperatorType
Definition: gv_node.h:37
cineware::String
Definition: c4d_string.h:36
cineware::EPSILON3
static const Float EPSILON3
1e-3 (0.001)
Definition: c4d_system.h:255
GRADIENTPROPERTY_NOKNOTPOSITION
#define GRADIENTPROPERTY_NOKNOTPOSITION
Definition: customgui_gradient.h:53
cineware::GvNodeFlags
GvNodeFlags
Definition: gv_node.h:24
cineware::FieldLayer
Definition: customgui_field.h:84
cineware::BaseDocument
Contains the complete description of a Cinema 4D document.
Definition: c4d_basedocument.h:79
Tvolumebuilder
#define Tvolumebuilder
Volume Builder Tag.
Definition: c4d_parameter_ids.h:886
cineware::iFieldCustomDatatype
Definition: customgui_field.h:150
cineware::Gradient
Definition: customgui_gradient.h:146
GRADIENTPROPERTY_ALPHA_WITH_COLOR
#define GRADIENTPROPERTY_ALPHA_WITH_COLOR
Definition: customgui_gradient.h:28
cineware::GvRealNode
Definition: gv_node.h:174
GRADIENTPROPERTY_NOPRESETS
#define GRADIENTPROPERTY_NOPRESETS
Definition: customgui_gradient.h:43
cineware::Gradient::CopyFrom
Bool CopyFrom(const Gradient *src)
cineware::GeListNode
Represents a node in a 4D list.
Definition: c4d_gelistnode.h:23
cineware::GvRealNodeMasterData
Definition: gv_nodemaster.h:28
cineware::Int32
int32_t Int32
32 bit signed integer datatype.
Definition: c4d_system.h:186
ID_MOTIONFRACTUREVORONOI
#define ID_MOTIONFRACTUREVORONOI
MoGraph fracture voronoi object.
Definition: c4d_parameter_ids.h:746
cineware::EPSILON2
static const Float EPSILON2
1e-2 (0.01)
Definition: c4d_system.h:254
VPpositionpass
#define VPpositionpass
Position Pass.
Definition: c4d_parameter_ids.h:1043
cineware::Gradient::ConvertToAlphaGradient
void ConvertToAlphaGradient()
Converts this gradient to an alpha gradient.
cineware::IpCommunicationThread::RenderMaterials
BaseDocument * RenderMaterials(BaseDocument *doc)
cineware::VolumeBuilderData
Definition: c4d_volumebuilderdata.h:23
cineware::Filename::IsPopulated
Bool IsPopulated() const
cineware::MoGraphFractureVoronoiObject
Definition: c4d_fracturevoronoidata.h:31
cineware::CustomDataType
Definition: c4d_customdatatype.h:20
cineware::GvRealPort
Definition: gv_port.h:172
VPwatermark
#define VPwatermark
Watermark.
Definition: c4d_parameter_ids.h:1046
cineware::BaseBitmap::Free
static void Free(BaseBitmap *&bm)
GRADIENTPROPERTY_NOINTERPOLATION
#define GRADIENTPROPERTY_NOINTERPOLATION
Definition: customgui_gradient.h:48