Reflective and Refractive Glass Block Tutorial Part 1 – Cinema 4D

April 16, 2010

In this tutorial, I show you how to make a spinning glass block animation with Cinema 4D, Mograph and refraction. It’s based on an animation by Lumiere Studios. Stay tuned for part 2 of the tutorial where we bring the final render in after effects and do the final composite.

Final Animation

Watch Part 2 of This Tutorial

Tutorial Focus:  , , , , ,
Software:  ,

  • Cool. Looks like another great tut. Can’t wait to try it. Thanks πŸ˜€

  • Can’t wait till I get back home to check this out!

  • Another great tutorial. Can’t wait to part 2.

  • the reflections look amazing !!

  • AWESOME!! Thanks Nick!

  • Holy craptacular that looks awesome! Now to think of a way to use that without making it look anything like yours…hm…

  • This is one GREAT tutorial!

  • Bloody hell! Nice tut!!! I’ll be using this one!!!

  • Awesome, cant wait to give it a try.

  • The gorilla goes from strength to strength


  • Thank you for the incredible tuts Nick. You and Andrew Kramer are two of the most generous guys on the scene and it’s really appreciated.

  • Great tutorial !

    Can you make a tutorial for this animation

  • Hey Nick,

    Your tutorials are amazing!!! I’ve learned more from you in one week than whatever else I’ve tried!

    BIG THX!

  • Great!!!

    big thx Nick!

  • I can’t wait to watch it. Looks awesome!

  • Rly cool and easy tut with a great result nick but the rendering time on a dual core with AA pumped like that is just “awesome” πŸ˜€
    Your 8 core Machine can do it pretty fast but we the mortals have to do it with dual and quad cores. Can’t imagine doing it on R11 with one core

  • Brilliant tutorial! I’m going to see if I can combine this with the shatter tutorial you did a while back, would be great to shatter the glass in slow mo

    Thanks Nick!

  • Whoa.. when I first saw this tutorial image – I thought it was based of this:

    Which a friend just sent to me yesterday. Very cool.

  • Nick, you’re a master of economy. From nothing to awesome in about 15 minutes flat. Thanks upping everyone’s game!

  • Cool Stuff! Thanks!
    I have one question and a tip:
    When you use the cloner object and a random effector, is there a way to prevent the cloned objects to intersect or cut into each other?

    The tip is to render out the last frame of a sequence first, then start the rest of the render. That way you can import what’s rendered in AeFx, it’ll report X frames missing, but you have the length of the clip set and can start adjusting what you already have..

  • Hey Nick, great tutorial!!
    Just wondering what you use to combine all the TIFFs into a mpg?

  • That’s awesome. Thanks for sharing Nick!

    My CPU is 1 core, 1gb ram so rendering on that machine hmm… Maybe some long holidays?


  • Awesome Nick!
    Question: When using the cloner and the random effector, If you’ve come up with a layout that is perfect except for one piece, is it possible to break that piece of geometry out of the cloner and adjust it on its own or possibly delete it?

    • You can use the MoGraph selection tag to isolate the offending clone and then use a plain effector to reduce its visibility to zero.

    • Just hit C on the cloner object to make them edible, that way you can delete or move whatever object you want.

    • you can also use “current state to object” from the right click context menu.

      using the “c” key makes the cloner object a null with clones of whatever you had in it initially (primatives stay primative)

      using current state to object will do the same thing but also convert any primatives in the cloner object into polygonal objects as well

  • nick nick nick!! brother!! remember in that SPIN logo animation u had told us that u will ask maxon ppl at NAB why is it necessary to throw in a null in between that fracture object and the logo to make it spin how you wanted. did ya ask them??!! i wish i was at NAB, i would have reminded you πŸ™

    • The answer I got was along the lines of “Yep, you just have to do that sometimes.” It’s a hierarchy issue. And, things act differently with each cloner. Overall, It’s just another tool to try when things don’t work the way you want.

    • there goes a screenshot for me.. thanks πŸ™‚ feels good to be got replied..

  • Roger Margido Proeis April 16, 2010 at 8:29 pm

    Wow! That looks amazing. Can’t wait to finish typing this comment so that I can get started!! πŸ™‚

  • Great!! big thx Nick!
    but…how create This video?
    thx! thx! thx!

  • nick.
    u know
    u r awesome!

  • Oh holy cool ! xD have to love that expression ! Nice tut m8!

  • Really awesome result.. w8ing for the 2nd part to see what you do in AE.. amazing my friend πŸ™‚

  • Cool! I liked it! I use it for your project!

  • mezzu why are you sending viruses dude!!?

  • Nick thanks, you rule man! Pretty soon you will be more famous then Andrew Kramer))

  • Awesome tuts nick.

  • Lumiere Studio Webpage is hacked!! πŸ™

  • great tut nick. Keep on going.

    how many hours do you spend with cinema everyday??


  • Very cool, thanks! Cant wait for part II.

  • another great tut by the gorilla! Thanks Nick. I am looking forward to part 2…

  • I tried figuring this one out on my own before you posted the tutorial and almost had it but was missing a couple things. Your presentations always make things look so easy. I appreciate all the work your doing and thanks so much for creating these tutorials to help someone like me learn and grow.

  • Haha I love how excited you sounded in the intro!
    Another great one, as always

  • very nice tutorial, thanks a lot!

  • Thanx. useful tut. just in time. i will use it

  • i done my motion graphics case study on these guys about 3 months ago, and used there vid as examples. always wondered how they done it, seems so easy now.

  • You are awesome!
    I wasn’t able to follow C4D till now..watching your tuts has helped me grasp quiet a bit and i hope to start creating something fun soon

  • Nice work as always
    thank you

  • Greyscalegorilla! tem como produzir uma legenda em portugues desse tutorial se sair fico agradeΓ§ido abraΓ§o de uma irmΓ£o brasileiro.

  • Receipt of your hand you ar creator

  • Great Tut, Cant wait for the next one. In fact I went ahead and threw it in to after effects and add some shine n glow to.

  • Really great tutorials man, they are informative, concise, slick, and sexy. I appreciate watching the process when solutions require trial and error. Love the vibe and candor. thanks.

  • So good. Exactly what I needed as an inspiration boost. I adapted it to 3ds max and it works perfectly. Thanks a lot!

  • Great! Been waiting for part two. Get it up soon! I want to get this thing going because it’s amazing. Thanks so much for your tuts.


  • Sweet!
    Nice design and cool technicque.
    Love it!

  • Nick if you have OPTICAL FLARES,can you show us how we can integrate it with this project? I think it will look pretty sexy

  • Cool tutorial Nick.

    I have a question it’s possible to make cast shadow a 100% transparent object?

    Thanks for all tutorial they are great.

    • definitely, duplicate the completely transparent object, remove the duplicates’ material and turn off its traffic light for the editor, add a compositing tag and uncheck everything except “seen by shadows,” now you’ll have an invisible copy of your transparent object that does nothing but cast a shadow.

  • Hello Nick, great blog and great tutorials, you help and inspire us a lot. Please, could you do a quick tutorial to make some particles form a shape, like text or whatever, same as you did in your modynamics and mograph new reel???? It’s almost impossible to find a good one at internet.

  • Hello,

    Great tutorials here, can you please post a tutorial on how to create clean and sharp chrome text in CInema 4D?.

    Thanks in advance.

  • HI Nick, can you make a tutorial about MoCap and stuffs like that? Tnx πŸ™‚

  • Nice tutorial !!

    A quick tip maybe you know already : to quickly duplicate an object, you can just ctrl + click on a object, let the mouse clicked and drag where you want to duplicate your object. (you will see a square symbole with a + inside)

  • Great tut Grorilla, I think if I combine this technique with Optical flares i’ll get amazing result….I can’t wait for Part 2
    you are a genius man

  • very gooooooood
    thx u man

  • Great tutorial. I’m a nubie at Cinema 4D and this was my second tutorial. I don’t like to jist copy a tutorial, but like to add my own personal touch. I included a 3D model (3ds max) as well as text in the middle of the glass blocks and used it for an opening title sequence. The air of mystery of the partial reveal and the symbolism of incompleteness (glass blocks) really worked well with the subject manner of the film. I also lerned how to comfortably move around in Cinema 4D and a technique to add to the tool box. Thanks for sharing the technique.

  • You’re hired πŸ™‚

    Btw. it seems that Vimeo is having a hard time optimizing playback WTIHOUT STUTTER!

    Will never know what these guys at Vimeo are doing wrong …

  • You make it looks so simple…
    Cinema 4D is like Greek to me… I need to practice more.
    Thanks for the great stuff.

  • nice.
    i cant wait 2 part πŸ™‚

  • You should do a motion tracking tutorial:

    loads of tracking done on this one…

  • Dude you’re PUMPED!
    Nice tut, thanks a lot.

    And I’m not tired of seeing your face btw.

  • What’s going on with part 2

  • Hey what’s with the BABY picture in the background?

  • This is the best tutorial of all time!

  • Nice tutorial as the others^^

    But I do have one question though, I’m pretty new to all of the Cinema 4D and AE and I was just wondering why my render of this project took 10 hours to render in Cinema 4D, which is way to long as I know from previous projects I made. Are there any settings I can cahnge to make this go faster? Because I can’t wait 10 hours for every render to be done.

    Any people who can help me out? I’d appreciate it.

    • Reflection and Refraction take a long time to render. Especially with such high AA settings. Get rid of any of those things and it will render faster.

    • Yeah a friend told me to get rid of them, it will end up in less “fancy” looking, but the render goes indeed a lot quicker.


  • Hey NICK,
    first sorry for my english:D
    thx for u TUT,I creating also the same Video but better than yours πŸ˜› with cool FX and sound:D with After Effects

    hehe but u still the best.

    check it out

    i creat also this amazing video with Particular 2,

    please tell me what u thing, and u know u are the best MANNNN:D hehe
    THX for all u tuts!

  • my TIFF renders are with white BG!!! WHY ?!

  • Hey Nick,
    I absolutely love your tutorials but i don’t have Mo-Graph πŸ™
    Are there any other alternatives you would recommend coz i find it impossible to follow your tutorials as mograph seems to be your central tool in Cinema 4D for all your projects.


  • Hey Nick i have a question how do i put these awesome text anims and stuff on my youtube videos please e-mail me the answer thanks

  • Where i found starglow for mac : (

  • Hi Gorilla,

    Amazing tutorial. I’m trying to put moving video or high rez still photos in place of the 3d text. Everything works technically, but the image comes through the blocks with an extreme amount of dithering.

    Any thoughts as to why?


  • Hi there, just found your site and it ROCKS πŸ™‚ made my version of this tut I never worked much in C4D but I decided to take a swing at it now. here is my version, real cool effect.

  • Nick there’s a tip :
    If you hold Shift while you’re editing your time line thing you can actually edit only one side of the animation for example if you edit that slow motion it wont effect the fly-out animation.

    Give it a shot and tell me what you think πŸ™‚

  • Hi Nick .. great and awesome tutorial are you working with motion clips as well ??

    greets tobias

  • Hi Nick,
    Thanks for the tutorial, I enjoy watching them.
    Speaking of glasses, I’d like to show you something I’ve done in C4D.No post work. Hope you’ll all enjoy and thanks for any comments.

  • i have watched a few of your tutorials, and this was great! thanks, was a big help.

  • wayfarer designs April 29, 2010 at 9:49 pm

    wow. i have got to say, you are amazing, i just found greyscale gorrilla, and am surprised at how i could not have found such ana amazing resource before. definitely will be twittering your site, and adding a link to my website, and letting everyone know.

    please keep stunning us!

  • Wow. I Luv u GG~!

  • hey Nick,

    i wanna thank you for this nice tutorial and all other super helpful videos you do.
    check what i did with it. i would love to hear your critique. thank you

  • Andres Martinez May 4, 2010 at 4:18 pm

    Man I love your intro “I’m the Gorilla”
    great tutorial as always.

  • Nick, love your layout for C4D can you share it?

  • HELP !!!!!!!!!!! When setting the 90th keyframe, when changing the value of the panning camera to the front of the scene the camera moves but does not swing to front view…I’m a Nub

  • greats from Egypt
    this actually a great moving smooth and easy Tutorial
    even it’s my first time to work on Cinema 4D but you made the whole thing very understandable
    thanks again Nick ( I hope I spelled it right )


  • Hey, great tut, as usual!-you have a wonderful , organic way of explaining the whole tech process, without being condescending, thanks!-CZ

  • Thanks, this tutorial was realy inspiring!
    This is what I used it for:
    starts at 00:19
    The text is dutch and represents the history of communication, if you wanted to know

  • Wow… That was so Cool!!! 100%. I Like your style…

    I like visiting your blog and You are both is my inspiration…

  • Hi Nick,

    First of all, great website and great tutorials! I find a simple way to place the random blocks by yourself. Just right click on the cubes in the random effector and click on make editable. Now you can arrange the random blocks by yourself!

  • Great tut.
    I try to follow it with maya, but there aren’t any random cloner thing, so I wrote it in mel. it isn’t so cool then in C4D, but do the job. (thistime I working on a smarter version) πŸ™‚
    but if someone want to follow with maya, can use my script (sory the source is long, but if you have any question ask it) :

    // Just copy and paste to maya’s script editor
    // Krisztian Kosi

    if (`window -ex randomInstanceUI`) deleteUI randomInstanceUI;


    -t “Random Instance by Krisztian Kosi”

    -mnb off

    -mxb off

    -tb on


    columnLayout -adj on lcLayout;

    intSliderGrp -label “Number of Instances” -field true

    -minValue 0 -maxValue 100

    -fieldMinValue 0 -fieldMaxValue 10000

    -value 9


    separator -h 5 -st “in”;

    text -l “Translate”;

    floatSliderGrp -label “translate X” -field true

    -minValue -0.0 -maxValue 100.0

    -fieldMinValue -0.0 -fieldMaxValue 1000000000000.0

    -value 10


    floatSliderGrp -label “translate Y” -field true

    -minValue -0.0 -maxValue 100.0

    -fieldMinValue -0.0 -fieldMaxValue 1000000000000.0

    -value 10


    floatSliderGrp -label “translate Z” -field true

    -minValue -0.0 -maxValue 100.0

    -fieldMinValue -0.0 -fieldMaxValue 1000000000000.0

    -value 10


    separator -h 5 -st “in”;

    text -l “Rotate”;

    floatSliderGrp -label “rotate X” -field true

    -minValue -0.0 -maxValue 360.0

    -fieldMinValue -0.0 -fieldMaxValue 360.0

    -value 90


    floatSliderGrp -label “rotate Y” -field true

    -minValue -0.0 -maxValue 360.0

    -fieldMinValue -0.0 -fieldMaxValue 360.0

    -value 90


    floatSliderGrp -label “rotate Z” -field true

    -minValue -0.0 -maxValue 360.0

    -fieldMinValue -0.0 -fieldMaxValue 360.0

    -value 90


    separator -h 5 -st “in”;

    text -l “Scale”;

    floatSliderGrp -label “scale X” -field true

    -minValue -0.0 -maxValue 10.0

    -fieldMinValue -0.0 -fieldMaxValue 1000000000000.0

    -value 1


    floatSliderGrp -label “scale Y” -field true

    -minValue -0.0 -maxValue 10.0

    -fieldMinValue -0.0 -fieldMaxValue 1000000000000.0

    -value 1


    floatSliderGrp -label “scale Z” -field true

    -minValue -0.0 -maxValue 10.0

    -fieldMinValue -0.0 -fieldMaxValue 1000000000000.0

    -value 1


    separator -h 5 -st “in”;

    text -l “Actions”;

    button -l “Do IT” -c “doIT”;

    button -l “Cancel” -c “deleteUI -wnd randomInstanceUI;”;

    showWindow randomInstanceUI;

    proc doIT()

    string $curSelObj[] = `ls -sl`;

    int $numberCopy=`intSliderGrp -q -v numberCopySGP`;

    for ($i=0; $i < $numberCopy;$i++)
    instance -n Duplikalt;

    string $lista[]=`ls "Dup*"`;

    float $transX=`floatSliderGrp -q -v transXSGP`;
    float $transY=`floatSliderGrp -q -v transYSGP`;
    float $transZ=`floatSliderGrp -q -v transZSGP`;

    float $rotateX=`floatSliderGrp -q -v rotateXSGP`;
    float $rotateY=`floatSliderGrp -q -v rotateYSGP`;
    float $rotateZ=`floatSliderGrp -q -v rotateZSGP`;

    float $scaleX=`floatSliderGrp -q -v scaleXSGP`;
    float $scaleY=`floatSliderGrp -q -v scaleYSGP`;
    float $scaleZ=`floatSliderGrp -q -v scaleZSGP`;

    select $curSelObj;
    float $origtranslate[]=`getAttr ($curSelObj[0]+".translate")`;
    float $origrotate[]=`getAttr ($curSelObj[0]+".rotate")`;
    float $origScale[]=`getAttr ($curSelObj[0]+".scale")`;
    ($origtranslate[0]+`rand ($transX*(-1)) $transX` )
    ($origtranslate[1]+`rand ($transY*(-1)) $transY` )
    ($origtranslate[2]+`rand ($transZ*(-1)) $transZ` );
    ($origrotate[0]+`rand $rotateX` )
    ($origrotate[1]+`rand $rotateY` )
    ($origrotate[2]+`rand $rotateZ` );
    ($origScale[0]+`rand ($scaleX)`)
    ($origScale[1]+`rand ($scaleY)`)
    ($origScale[2]+`rand ($scaleZ)`) ;

    print $curSelObj;
    print $lista;

    for ($objElement in $lista)

    // float $origScale[]=`getAttr ($curSelObj[0]+".scale")`;
    select $objElement;
    float $origtranslate[]=`getAttr ($objElement+".translate")`;
    float $origrotate[]=`getAttr ($objElement+".rotate")`;
    float $origScale[]=`getAttr ($objElement+".scale")`;

    /* move `rand $transX` `rand $transY` `rand $transZ` ;
    rotate `rand $rotateX` `rand $rotateY` `rand $rotateZ` ;
    scale ($origScale[0]+`rand ($scaleX)`) ($origScale[1]+`rand ($scaleY)`) ($origScale[2]+`rand ($scaleZ)`) ;

    ($origtranslate[0]+`rand ($transX*(-1)) $transX` )
    ($origtranslate[1]+`rand ($transY*(-1)) $transY` )
    ($origtranslate[2]+`rand ($transZ*(-1)) $transZ` );
    ($origrotate[0]+`rand $rotateX` )
    ($origrotate[1]+`rand $rotateY` )
    ($origrotate[2]+`rand $rotateZ` );
    ($origScale[0]+`rand ($scaleX)`)
    ($origScale[1]+`rand ($scaleY)`)
    ($origScale[2]+`rand ($scaleZ)`) ;



  • Hey Gorilla!

    Thanks so much for the tutorial. I would love it if you could see the promo that I made with it:

    Its a combo of this one and your shattering text one.

    Again, thank you so much for all the work you put into teaching us newbies!!!

  • OMG I have been looking for this type of tut forever! Thanks Nick!

  • excellent tut!

    thnx again, nick!

    based on this, i made a little flash website..

    feel free to check that out!!

    best regards

  • Sick tut! Thanks Nick!

  • Hi
    Thnx for real cool tuttorial
    this is my first use cinema 4d
    it easy then 3d max
    what you think about my work?

    i don’t know why on vimeo – looks so bad. (

    and sorry for my english )))))))
    Thnx thnx)))))

  • Hey Nick. Nick here,

    Hey I am doing a project where I would like to implement this into but conclude the logo with everything shattering into thousands of pieces at the camera or in all directions? How would I use the particle system to break everything and make it fly? I need this by sunday would love if you could help me!!!

  • I just made my own video with this effect and i just realized that you can see it in stereoscopic 3D because Pulfrich effect. If you putt a neutral filter (black) on the left eye you can see a subtle 3D effect.

    ThatΒ΄s the glasses i mean but you can do with a sunglasses lens (just on one eye)

  • my glass-cubes became cinda gray over all with less contrast and it’s a cinda boring look, so what can i do to make a better contrast??is there a default color on the cubes?

  • Thank you Nick for your Tuts!!!

  • haters_gonna_hate March 21, 2011 at 7:25 am

    Look at this!
    Someone took inspiration of you;)

  • Hey Nick , Can u do this tutorial : ?

  • assasinosilenzioso May 30, 2011 at 8:33 am

    i gave this project a try and i did a 160 frame 3 seconds, to extend the animation to 10 secs without increasing the frames?????

  • do u think its possible to use video footage instead of text? that would be cool to be able to do with video footage to be seen through the glass only but not the camera…

  • Great tut!!
    now Im rendering that!!
    thankx for this page
    God bless you
    Regards from jap…

  • Hi,

    Reflective and Refractive Glass Block Tutorial
    How can we use footage inside of glass…

    Please explain me sir

    Thank you so much….

  • Think I’m going 2 use this 4 my next intro

  • My version of the tutorial:

    Any feedback would be appreciated…ty

  • Hey Nick, thank you for this amazing tutorial. I need some help… my light are being dispayed too bright and as a result the pieces of glass seem to be fake! What should I do?

    • Turn down your light or turn down the specular.

      • Thanks for your time Nick! I tried what you’ ve told me but unfortunately I didn’t got the desired result. It is 100% a marerial problem. After using the exact same values as you are using for the glass material, my material is far away from yours. I’ am using R12 if this matters. If you would like to see the material, this is it then:

        PS: Excuse me for my poor english.

  • Hi
    Great Tutorial .thank’s
    Have you any idea of how to Make like this project …

  • where did the fillet feature go in R16. I see its there under your tab object tab of the cube, but It’s not there in my version. I found a bevel deformer, which is also seen in your R16 update , but what gets me is chris is doing the update for R16 and the feature is still there like in R15.

  • With the release of R16, you know that the concept of reflection and specular have changed. I couldn’t find the plastic either. Could you maybe post a short video showing how to create the same glass material with R16?

  • So I’m surfing Vimeo and i come across this post…the dude is intruding invisible text…Really?? not even giving credit…may be I’m jumping the gun, but I’m tried of these type of so call designers.

  • Love the look of this render….so giving it a go……well first attempt ,
    Thank you GSG for the great tutorials. love you’re work.

  • Leave a Reply

    Your email address will not be published. Required fields are marked *

    This site uses Akismet to reduce spam. Learn how your comment data is processed.