Available for work

Whether you need help designing an installation or developing a system to control it, a Cinema 4D plugin, animation, visualisation or anything in between, give me a shout here. 

Scroll down to see some of my latest projects and get in touch if you like what you see.

Follow me on Twitter : @adamheslop or Vimeo

Posted on July 26, 2019 .

C4D - Select every other point in a spline

I've just received a request for a way to select every other point on a spline in C4D. Here's my way of doing it. The script can be found on the downloads page. Here's the code with comments:

import c4d

def main():

    op = doc.GetActiveObject() # Get the active object
    if not op: return False #If nothing is active, end the script
    #If the selected object is not a spline, end the script
    if not type(op) != c4d.Ospline: return False 

    #Get the selection object which the object uses to manage what is and isnt selected
    sel = op.GetPointS() 
    sel.DeselectAll()    #Deselect everything to begin with

    cnt = op.GetPointCount() #Get the number of points in the object
    for i in xrange(cnt):    #Loop through the point IDs
        if i%2 == 0: sel.Select(i) #If the number is odd, select the point
        #Change i%2 == 1 for selecting even numbers 
        #Change i%3 == 0 for selecting every third pont etc
    c4d.EventAdd() #Update the scene

if __name__=='__main__':
Posted on May 6, 2017 .

Light Masonry

Light Masonry : A JasonBrugesStudio project

From the JBS website:

Illuminating York, supported by Arts Council England, is an annual event which sees a variety of designers invited to create light installations across the historic city. The Festival encourages visitors to explore and discover the city through the imagination of artists, using the medium of light in all its forms.

See more here

Posted on November 9, 2016 .

PIXELS IN PROGRESS - C4D Offset Grid Generator

All of the new R18 enhancements for Mograph are looking really great. One thing which I could have done with some time ago was the Honeycomb mode. I came up with this solution how do do this in a flexible way a while back. As Maxon are integrating something similar, it looks like this is a feature that people must be interested in, I thought I'd post my solution.

The C4D - Pixels In Progress - Offset Grid Generator is a python generator which creates a polygon object as a set of planes in various offset grid formations making a map to clone directly onto the polygon centres of. You can get it on the downloads page here : Downloads


Posted on July 27, 2016 .

C4D Dynamic UserData control

I'm in the midst of developing a set of plugins to control a range of different lighting fixtures and all of their settings. I need to be able to control each fixture individually but also as a group. A lot of headaches later and I've developed a method which uses Dynamic UserData in C4D to have access to these values in a manageable way. Now I can use good old fashioned keyframes or through python/mograph for the group control.

Here's what the first working version of the interface looks like:

Posted on July 2, 2016 .