C4D Programming

Developing plugins and scripts for CINEMA 4D

Licensing Plugins – Part I – Basics

by .

Writing a plugin that extends the functionality of CINEMA 4D is often only the first step towards a finished product. At one point or another during the work on your plugin you will have to spend some thought a proper license system.

This first article explains how licensing basically works, discusses aspects of different license systems, and points out some things about crackers.
Read the rest of this entry »

Advertisements

Treeview made simple – Part 2 – Folding & Selections

by franz3d78

In this article we will improve TreeView with Folding and Selection that is quite easy.
Read the rest of this entry »

Non-recursive hierarchy iteration

by .

In this article we’ll take a look at how to crawl through a hierarchy of objects in CINEMA 4D, without using a recursion.
Read the rest of this entry »

TreeView made simple – Part 1

by franz3d78

In this article we will learn something about GUI and in particular about TreeView in a real life example.
Read the rest of this entry »

Drawing a spline in the viewport

by .

In this article we show a handy function for drawing a spline in the viewport.
Read the rest of this entry »

Drawing text in the viewport

by .

In this article we show a handy function for drawing text in the viewport.
Read the rest of this entry »

2D viewport drawing using a SceneHook

by .

If you wrote a plugin that draws stuff in the viewport before, you might remember running into some difficulties.
Read the rest of this entry »

Accessing and Changing Importers/Exporters Settings

by ypuech

Retrieving and modifying a scene loader/saver options is usually needed when developing a batch importer/exporter.
Read the rest of this entry »

Creating a new plugin project in Xcode

by .

For the newbies among our fellow readers, here is a complete step by step walkthrough for creating a new plugin project in Apple Xcode. The screenshots show Xcode 4.5, but it works the same in any version of Xcode 4.
Read the rest of this entry »

Creating a new plugin project in Visual Studio

by .

For the newbies among our fellow readers, here is a complete step by step walkthrough for creating a new plugin project in Microsoft Visual Studio. The screenshots show Visual Studio 2005, but it still works exactly the same way in Visual Studio 2010.
Read the rest of this entry »

Vectors: GetLength() vs. GetLengthSquared()

by .

There are a lot of situations where you need to get the length of a vector. For example, if you want to measure the distance between two objects. But there are also a lot of situations where you don’t need the actual length of the vector, because maybe you just want to find out which vector is the shortest. For example, if you want to determine which object – out of a group of objects – is closes to a given position; a common task if you deal with particle systems where particles have to interact with their closest neighbors.
Read the rest of this entry »

Initializing member variables in the constructor

by .

As you might know, it is good practice to leave no variables uninitialized. If you wrote a struct or class, all its members should have a defined initial state, which is usually set in the struct’s or class’s constructor.
Read the rest of this entry »

Function parameters as references

by .

Performance can be increased by using references instead of copying values as function arguments.
Read the rest of this entry »

VisualStudio plugin: Rename VS window title

by .

This is a handy little free plugin for Visual Studio. It will make VS display not only the name of the currently open project, but also the path to the project file (up to a certain level which can be defined). Very helpful when working with several instances of VS simultaneously.
Read the rest of this entry »

VisualStudio Plugin: Indent Guides

by .

Do you sometimes get lost if your code is very nested with lots of scopes? The free plugin Indent Guides helps a lot!
Read the rest of this entry »