To celebrate my 30th birthday I completely revamped my Cinema 4D script repository on GitHub. This is the initial release for AR_Scripts for Cinema 4D. Every single script has now own icon, so scripts can be easily attached to the Cinema 4D’s interface.

Scripts are written for Maxon Cinema 4D R21.207 so they are using Python 2.7.14. I don’t have access to the newest Cinema 4D R23 which uses Python 3, so I’m not able to update any of my stuff. Scripts are also made and tested with Microsoft Windows 10 Pro, so some scripts might not work with Mac OS.

For now there are 81 different scripts. Actually there are much more, since some of the scipts have multiple functions (scripts that can be used with keyboard modifiers). I’ll update and add more scripts depending on the support and my own feeling.

Check AR_Scripts on GitHub.

Cinema 4D, Python, Redshift

This is a Python Tag called Stage Manager. It let’s you set active ‘stage’ camera with timeline markers. Just give a same name for your marker as your camera and Stage Manager takes care of the rest. There are two different modes: Directive and Strict. Directive mode is designed for markers without range and strict is for markers with custom lengths. If there are no suitable camera found, then the dump camera is used if linked.


Cinema 4D, Python, Tag

Really simple Python Generator for mirroring objects. Works exactly like Symmetry Object, but keeps individual objects and does not merge them into one object.

Options to generate instance objects or actual copies from mirrored objects. You can mirror along XY, ZY and XZ planes. ‘Use Hierarchy’ enables mode to use top level children.


Asset, Cinema 4D, Generator, Python

This is simple Python Generator that creates wires between clones. This generator works only with cloner object and cloner’s ‘Instance Mode’ needs to be ‘Instance’ otherwise the generator can’t access to children objects properly. Dual mode works like [In / Out] method and single mode just simply goes [Point to Point]. Notice that you can have several control nulls in Out and In nulls. You can modify sag/lift and pivot parameters and also randomize those parameters with additional controllers.

Wires generator requires a specific hierarchy. If you use ‘Single’ mode the hierarchy should look something like on the left and for ‘Dual’ mode the hierarchy should look something like on the right. And amount of control nulls needs to match.


Asset, Cinema 4D, Generator, Python

Simple Python Effector for Randomizing Clone’s indexes etc. Based on @douwe4d‘s original Random Index Effector. I just added a couple more features. I use this effector quite often so I wanted to share with you, even though it’s quite old.

There are three (3) different modes:
Randomize Index: Randomizes only indices (visually) – Shuffles matrix and clone arrays
Randomize Clone Offset: Randomizes clone offset (visually) – Shuffles clone array
Randomize Order: Randomizes clone order (visually) – Shuffles matri


Cinema 4D, Effector, Python

This is my first Premiere Pro extension. It exports Blackmagic Fusion composition from selected clips in Adobe Premiere Pro (tested with Adobe Premiere Pro CC2019 (13.1.5 build 47) and Blackmagic Design Fusion 16.2 build 22). I did the first version two years ago but now I want to share with you and develop it more.

For now, it only exports video clips and image sequences to loaders. It does not transfer effects, transformation data and does not support nested sequences. This is however a very useful script when you want to fast and easily get clips from Premiere Pro to Fusion with correct trims. There is an option to put handles and to set custom start frame for Fusion. There is also checkbox if you want that script automatically open the exported comp file.

If the video clip has changed speed or time reversed, exporter creates a “Time Speed” node for that (does not support time ramps). Keep in mind that the start and end frames might be one frame off due to rounding error, also handles does not support changed speed or time reversed clips.

Supported formats

  • Image sequences: JPEG, PNG, TIFF, DPX, EXR
  • Video files: MP4, MOV, R3D (does not export modified RAW settings)

Because this is an unsigned extension you’ll have to install it manually and do some configurations to Premiere’s registry file. You can read more about that here.


  1. Download FusionCompExporter (download link is in the end of this post).
  2. Modify the registry entry
    Windows enable_custom_extensions.reg (for 2019 and 2020 versions) (right click and save as)
    Mac “defaults write /Users/ username /Library/Preferences/com.adobe.CSXS.9.plist PlayerDebugMode 1”
  3. Put FusionCompExporter folder to
    Windows “C:\Program Files (x86)\Common Files\Adobe\CEP\extensions”
    Mac “/Library/Application Support/Adobe/CEP/extensions”
  4. Launch / restart Premiere Pro.
  5. Open extension: Window > Extensions > Fusion Comp Exporter

How to use

  1. Select clips on timeline that you want to export to Fusion.
  2. Press Export button and choose where you want to save the file.
  3. Open the comp with Fusion and you are ready to do your VFX work.

Fusion, JavaScript, Plug-in, Premiere Pro

This is simple Python Tag that animates MoText’s and Text Spline’s source text. There is four different modes that you can play with.

Random: All characters are randomized based on the amount value. Random characters are used from different ‘characters’ string input. Change seed and shuffle speed under advanced group.
From Left: Effect starts from left when amount is animated.
From Right: Effect starts from right when amount is animated.
Typewriter: Typewriter effect. Indicator is the first character of the ‘characters’ string input.


Cinema 4D, Python, Tag

These are some useful workflow scripts for Cinema 4D’s graph view. Scripts are written for Maxon Cinema 4D R21.026 and they work with Xpresso and Redshift node graph (except specific ones).

Node Tools scripts:

Creates individual scale, offset and rotate control nodes for Redshift texture and triplanar nodes. If you select multiple texture nodes the script creates shared controllers.

Aligns selected graph nodes horizontally.
SHIFT-key: align nodes to center.
CTRL-key: align nodes to right.

Same thing as the previous script but this one aligns graph nodes vertically.
Key modifiers works with same way with this script.

Connects two selected nodes, if possible. Connects first open port to first open port.
SHIFT-key: User input output port to input port (index starts from 0 zero).
CTRL-key: Connects last open port to last open port.

Distributes selected graph nodes horizontally between the first and the last node.
The first node and the last node are picked by the minimum and the maximum x-position values.

Same thing as the previous script but this script distributes graph nodes vertically.
The first and the last node are picked by the minumum and the maximum y-position values.

Lines up selected graph nodes horizontally.
SHIFT-key: set custom gap size (default gap size is 20).

Same thing as the previous script, but this lines up selected graph nodes vartically.

Place script files to your library folder:
C:\Users\[USERNAME]\AppData\Roaming\MAXON\Maxon Cinema 4D R[VERSION]\library\scripts

N.B. Xpresso tag / Redshift material has to be selected when you run the script. Also make sure that you don’t have unnecessary active selections.

Updated 26/11/2019
> Bug fixes
> Added AR_ConnectNodes script

Updated 04/10/2020
> Update

Node tools are now part of AR_Scripts

Cinema 4D, Python, Redshift, Xpresso

This is small and simple Python Effector that delays clone’s color. Effector takes clone’s incoming color value and mixes it with clone’s previous color by the amount of delay variable in percentages. Therefore you have to use quite high delay value to get visible effect.


Cinema 4D, Effector, Python

It was a good time to update my personal computer build since the previous setup is about seven years old. I also did my very first custom loop watercooling. It was super fun, exciting and a bit nervous project. Bending tubes was a bit tricky. However, no leaks or anything. Perfect!

I build my new computer earlier this year using Noctua NH-U14S CPU-cooler and last weekend completed my setup installing custom loop system. The computer is now much quieter and a quite bit cooler. I might later add s second GPU and same time I could improve my wonky tubing. I haven’t overclocked my rig yet, but soon I will. However, I wanna keep my rig really stable.

My computer’s specifications:
Operating System: Windows 10 Pro 64-bit (1903)
CPU: Intel i9-9900K @ 3.60 GHz Coffee Lake
RAM: Kingston Hyper X Fury 64 GB DDR4 @ 2666 MHz
MOBO: Asus ROG Maximus XI Formula (Z390)
GPU: EVGA GeForce RTX 2080 Ti Black Edition
M.2: Samsung 870 EVO Plus 1TB SSD
SSD: Samsung 860 EVO 1TB, Samsung 860 EVO 500 GB
Network card Asus XG-C100C (10GbE)
PSU: Corsair AX1000 – 80 Plus Titanium
Case: Fractal Design Define S2 – Blackout
CPU Block: EK-Velocity D-RGB (Nickel + Acetal)
GPU Block: EK-Vector RTX RE Ti RGB
Fans: 5x EK-Vardar EVO 120ER RGB
Pump reservoir combo: EK-RES 140 Revo D5 RGB PWM
Radiators: EK-CoolStream Rad PE 240, EK-CoolStream Rad SE 360

Other stuff on my table:
Sound Card: RME Babyface Pro
DAC: Cambridge Audio DacMagic Plus
Microphone: Shure SM7B
Headphones: Sony MDR-7506
Speakers: 2x Genelec G One
Display: 2x Asus ROG PG279Q
Pen Tablet: Wacom Intuos 3 Medium
Mouse: Logitech G900
Keyboard: Logitech K800
NAS: Synology DS1819+

Updated 24/03/2020
> Added and removed som stuff

General Talk