- [Trevor Kerr] All right, so I'm Trevor Kerr from Kerr Motion Design.
You can check out my website at kerrmotiondesign.com.
I also have a Twitter that I just started last week, called @kerrmotion.
So I've been in Cinema 4D for about four years, since 2012.
I got my start in concert visuals, and more recently I've been kind of
pivoting to commercial and film work. I've been interested in cinematography and
cameras since a really young age. This is a photo of me at age seven or eight, with
a camera that my parents were gracious enough to get me. The Panasonic AG456
Super VHS, if you guys remember that. Anyways, so that should actually say 2016.
I'm just going to go ahead and pop up my reel, so you can kind of get an idea of
the work I've been doing over the past year or so.
♪ [music] ♪
All right. Thank you. So that's kind of the stuff that I do.
So today, I just wanted to... It's kind of a more loose presentation
where I'm kind just answering questions that I get a lot about my work.
So I'm just going to kind of try to answer as many of those as I possibly can.
The first is depth-compositing. And when I say, "depth-compositing," I'm talking
about, in this shot, all of this, anything you see with motion blur, all of this,
like dust, and particulate and all of that, is actually just a stock clip.
Whereas all the rest of this is the 3D render. And when I talk about
depth-compositing, basically, we're talking about adding that into your
scene in a way that is tracking with the motion, and is also wrapping around
all of these little actual 3D scene pieces. So why don't we just go ahead
and actually jump into Cinema 4D and see how we prep the scene for that. That's not
Cinema 4D. Okay. So, this one was done in Octane. And basically, just to give you
a little overview on the scene, it's more or less just a giant spline with a camera
aligned to it. As well, there is this kind of satellite that I have,
just animating along, and kind of dodging what you can't see right now.
I'll turn it on in just a moment. It's kind of dodging these
asteroids that are blowing up. These asteroids are pretty much just simulations
that I ran, and then brought in as Alembic. It's gonna take a minute in
Octane to update here. But, anyway, so the first thing we need to do... There are
actually a couple things we need to do. The first thing, is we need to get a
"position pass" for where we want to stick that clip, which is gonna be, like right
here where the impact is going to happen. So we need data for that that we can use
in the composite. As well, we're gonna need to get our camera relative to that
position. As well, the last thing we will need is a Z-depth pass so then we can use
that to make a "hold-out" or "mask" off the footage, so that we can place it in,
in-depth, wherever we want it within those exploding asteroids. Okay, so the first
thing... Let me go ahead and clear these out. The first thing we're going to do is
get those nulls, essentially, we're going to export position points as a "null"
into After Effects. And the way we're gonna do that, is... Let me just go a
little forward here, and pull these up. Okay, so when I ran these simulations,
I made sure that the impact point is actually right at the center of the scene.
So when I bring these in here, and into this scene, I can export the null and have
the impact right at the very center of that point. It's going to make it a lot
easier when we go into After Effects to align that clip.
So the way that we push it over is, we're going to right-click, Cinema 4D tags, and
external compositing. So this is going to give us that null in that exact same spot
in our After Effects scene. I'm going to go ahead and copy it over to the second
impact as well. So we've got that. Let me get rid of these.
Okay. So let me go ahead and load this back up in Octane.
It will just take a minute. I think it's like 15 seconds or so.
So, while this is loading, one of the things we kind of get an issue
with, with Octane, is that the background is all going to be black in the Z-Depth
pass. Let me go ahead and switch this over, so you can see what I'm talking
about. So black, we actually want to represent closest to us, and we want
the background to be white. So, what I kind of do to fix this, is just add a
plane to the camera. I'll actually recreate this for you too. So, what we do
is just, add a plane, drop it in the camera, zero it out. And then the last
thing we need to do is orient it toward the camera, and then... I think it was
like, negative 50,000, or maybe positive 50,000. Yeah, there we go. So now we can
see it out there, but we actually need to make it really large, so I think 20,000
was about the size. Okay, it's going to be bigger than that, but what we can do is
actually just take these and drag them all the way out beyond the edges of the frame.
Okay, so now you can see, we've got our background is white and our foreground is
black, and everything in between is gray. So, what we can do from here is actually,
I think I've already adjusted this, yeah. I think it comes in at default as 5, and
you'll see that we're not quite getting all of our depth data here.
So basically, we just increase until we see everything appear.
I think I ended up around 60 on this one. Okay, so basically we'll just export that.
We'll render that as a pass, and hop into After Effects.
So, skipping all of the little composite elements and what-not...
I'll go ahead and turn off my effects so we can kind of see this quickly.
So I've got this clip here that is, pretty much, dirt exploding.
All I have are a couple curves to bring it down into the palette of the scene.
If I tic these on, you'll see, now we feel like we're in the same exposure as
the scene. The very first thing we're gonna do is bring in the C4D file.
And actually, I've just remembered that I forgot something.
So, to bring the camera in appropriately, I animated this on a null.
If I were to bring this into After Effects right now, the camera is actually
going to stay in the same position and only give me my rotation,
because it's looking at the local position of the camera.
So what I need to do is I actually need to duplicate my camera, and there's a really
interesting tool where, if I first select... let me call this the "driven."
Essentially what we're going to do, we're going to drive this camera, the global
position of this camera, with the global position of our animated camera. There's a
very quick way to do that. So if I select the driven camera first, and then the
driver second, and then go up to my character shelf, we're going to add a "PSR
constraint." And what that will do is... now if I look through my camera, you'll
see now it's constraining the position, scale and rotation of my new camera to
the old camera. So now what I can do is actually go... the way I like to do this
is to key frame a scale, stick a key frame on the scale so it spits it out
into the dope sheet. We're just gonna take the driven camera...
"functions," and if we hit "bake objects,"
this is going to give me basically, a position key frame and rotation
key frame for every single frame in my scene. So go ahead and hit "okay." Just
takes a couple seconds to bake this out. It's going to give me a new, third camera
that we'll call "render camera" or something. And that's the one that
we're going to use in After Effects. So let me go ahead and hit "save" on that
guy. And now we'll load him into After Effects. So all I have to do when pulling
this into After Effects is literally click on the C4D file and hit "import."
Okay, so if I right-click on my C4D file, and select "new comp from selection,"
it's going to go ahead and make a scene already,
with Cineware and everything enabled. All I have to do is hit the
"extract" button. You're gonna see, we've got our render cam here, and those two
nulls that I was talking about, that are the middle of the impact points of those
dynamic simulations. So if I just copy these over to my composite, what I'm going
to do... Give myself a little more slack here, I keep yanking myself off there.
Okay, so I'm going to look at the impact point, the position of the first impact
point, and just literally enter the same values in the position of my plate.
So 1600, 0, and 15,000. Okay. So now, this is the actual center impact point of the
piece. I'm just going to offset it a little bit, because I know the collision
actually happens over here. So, you'll see if we kind of move along-- Oh, I think
I have to enable the camera. Yeah. So you'll see, this moves along now with the
scene. I can kind of just rough it in there. So, we're almost there. The only
thing we want to do now is, this solar panel needs to be in front of our clip,
and as well, we want to sync this clip plate down into, in between some of the
rocks and things. So the way we're going to do that is with that Z-Depth pass that
we got from Octane. So we are just going to drop the Z-Depth pass above the plate.
And under "track matte," we're going to click "luma matte."
And so now you can see where we have to do a little bit of adjusting, but we're
already kind of in a place where you can see it's tucked into the 3D objects.
If I click the clip, I can move it around. You can see we're interacting in there.
I can re-map this a little bit by going into the Z-Depth pass and clicking
"effects," "color correct curves," And as I do this, what we're doing is
we're adjusting the white point and black point of that clip.
And I can kind of noodle around and sync it in however I please.
And then if I just go ahead and enable my effects, we've
already got a really good place to start, you know, diving further in and tweaking
and making all those kind of adjustments. So that's one question I get asked about
pretty often. The next question is usually regarding a piece I did for a company
called Goodtheory Studios. It was a very exciting project, and I will go ahead
and... let's see, key framing...
I'm going to go ahead and play you a clip from it, and then we're going to talk
about how I ended up doing all the key framing for this piece.
♪ [music] ♪
Okay, so that's all hand key-framed, like every single little blink and luminance
change, and all of that, was completely key-framed by hand, which seems like a
monumental task. It's a 12-minute song, but it actually took me only, maybe,
half a day to build all that key-framing once I set up this rig.
So let's go ahead and take a look at that.
So the principle was that, trying a key frame in that giant scene takes like
a minute and a half to load into Octane, and seeing the changes and
whatnot, it's not a very efficient way to work on a scene like that. So what I ended
up doing was making a separate scene, kind of like a proxy scene, that I could
animate in, and then port all of that stuff over to my main scene. And I'm going
to focus, kind of, on the scene that I built to help me with the key framing.
Give it a second to load up here. All right, so the whole purpose of this was to
give me some really quick and easy feedback and something I could ship off
for review, for animation and whatnot. It's something I could quickly iterate on
and then go update my other scene file with. So, pretty much I just used Xpresso.
And you can see... I'll go ahead and press play here. You can kind of get an idea.
♪ [music] ♪
So it's super easy to go back and iterate on this stuff very quickly,
instead of jumping back into that scene file, and like,
"Oh, I didn't like how the kick drum is hitting" or something like that.
So basically, let me go ahead and show you how I set this up.
It's ridiculously simple. Just make a couple cubes, and then three lights,
or a light to go with each cube. And there is a way to do this
without lights as well, which I'll show you. Just pull these forward.
And then we make just a null to drop everything in,
and we'll call this, I don't know, we'll call it "the beat."
And stick an Xpresso tag on. What we're going to do is add just a little bit of
user data just so we have some sliders to play with while animating. So, we're going
to hit "add user data." I'm going to call this one, "1." We'll change this to
"float slider," which basically gives us a slider with a little percent off to
the side. Duplicate. And we'll duplicate that a third time. What we're going to
do is bring each light in, and drag the Xpresso in, and just expose those user
datas' sliders to the Xpresso rig. If I hold control and double-click on that, it
just re-sizes so that it's not all scrunched up. And, we just go into the
light, and, "general intensity." So now we can basically animate a 0 to 100%
slider that will as well, talk to the 0 to 100% of the light, and give us
really, super quick feedback. And the last thing we need to do here is,
we want these lights to be exclusive to each neighboring cube. So in the project
tab I'm just going to flip this to include, and just drag each neighboring
cube in, or parent cube, I guess you could call it. So now with this little tiny
simple Xpresso, we have just a little bit of an easy way to animate some key frames.
This could be my kick drum, the high hat and the snare, for example.
And I just sit there and animate on these. And then I can take this and then drive
whatever I want. I can drive power in Octane, just add a "range mapper"
for example, between one of these two.
So, I can give you an example of how that would work.
I'll move these out of the way.
So, let's say in Octane my light is at the darkest I want it to be, at a
power of 1,000, and at the brightest I want to be at a power of 6,000. So in the
range mapper I can set my output lower to 1,000, and my output upper to 6,000.
Then I would go to my input range and change this to percent, and make sure my
input lower is 100. So now when my slider says zero, it's going to give the
Octane light a power of 1,000. And when it's at 100%,
it's going to give the Octane light a power of 6,000. And we would just
put that in between the Xpresso rig and the Octane light, or
emission material, or black body, or whatever you are going to use.
Okay, so that's pretty much how that was done. I would open the scene, but it takes
like two minutes to load, and because it's like a couple... I think it's
like 200 million polygons or so. So I kind of feel like that might be a little
waste of time. So the next thing... Let me just hop back to my presentation.
This is actually a really interesting subject to me; trying to do depth of field
in post with occluding objects. So, to give you an example of what I'm talking
about, I've prepared a little quick scene file. Let me go ahead and crack that open.
That's in here. Flip over to C4D. Okay, so one of the best ways I know how to explain
this is, thinking about a fence, and objects behind a fence. So if I go ahead
and just open it. This is in Arnold, just so we can view it live pretty easily.
Plus, I love Arnold. I also love Octane, both fantastic tools. So, right now we're
focused on the fence, but if I were to change my focus to that sphere in the
background, my fence disappears. Now, how do I do that if I don't have those pixels?
In a standard render or a traditional render, we wouldn't have those
kind of pixels. If I turn depth of field off, we'll see what we would be getting.
So I don't have any of that information behind this fence. I actually ran into
this problem on a project I was working on.
So now that I've illustrated what we're talking about, let me open that.
This one takes a second to load.
So this is a piece that I did for... well, it was kind of a personal project,
but in the realm of Blizzard for "War Crimes."
So basically we are going to use the Take system to set this scene up
in a way that we can look at it in a proper depth of field environment.
So, actually, you know what? It might be a better idea if I start off
with showing you the result, and then I'll show you how to set that up.
Okay. So here is the standard way of doing depth of field. You know, it's all on one
pass. And I add my depth of field, and like already, immediately, I'm getting
this sort of like weird alias thing because I don't have that information
behind this object. So ideally, what we want to do is separate. So we want the
dragon. So we've got the dragon on one whole pass, and we'll have this hourglass
on a separate pass. As well, we'll need... let me reorder these. We'll need an
object buffer for the dragon, so that we can cut it out. And then of course, we'll
need the Z-Depth for both objects. In this case, it'll actually work even if I don't
have the Z-Depth for the hourglass because in this particular frame the hourglass is
the piece that's in focus. But, you can see, already, if I just take my depth of
field and copy it to the... I'm sorry, I need to pre-comp these.
So I just pre-comped the dragon by itself. So if I apply the depth of field to this
layer... Let it chew on that for a second. You'll see now, we no longer have that
alias-ing sort of weird problem because we have all of the detail underneath. So let
me just go ahead and show you how to set that up in C4D using the Take system.
Okay, so let me clear these out. When you first jump into the Take system, this is
what you get. So, we want to go ahead and add a new Take. And we're going to call
this one "beauty dragon." So how would we solo this dragon out? We would add...
Actually sorry, we need to do that on the top level. We would add a compositing
tag. So, we go "compositing." And as well, we would need to add a compositing
tag to the hourglass. Okay, so now if I dive down into my dragon beauty pass,
you'll notice that my settings here have been grayed out. So what I'll need to just
do is expose these to the Take system by right-clicking. I want to right-click
"seen by camera" because that is what I want to expose. So for the hourglass in
this case, we're going to un-check "seen by camera." I'm sorry, that's the dragon.
We want "seen by camera." And for the hourglass we are
going to right-click, over-ride, and un-check that. So now we're just going to
get the dragon by itself with the bounces and reflections and things like that of
the hourglass. So that's one. And we're going to go ahead and duplicate this and
we'll call this, "beauty hourglass." And we're going to go do, just the
inverse. So we'll un-check "seen by camera" on the dragon, and we'll check
"seen by camera" on the hourglass. So now we want to jump into our
render settings, and we're going to... Let me kill these and I'll make a new one.
So we make a new render setting. We can actually use the token system to help us
so we don't have to type in a name. Let's say we were going to do
10 objects instead of 2, it'll spit out of names based on our
takes, and we can set that up very easily here. Let me just copy some of these.
So in our save dialog, if you click this little arrow over here,
you get a drop-down. This is the render token system. And so we can
pick "take" and we can also pick "project name." I like to do project name
first, and then current take. And then we just set up the path, and then
we're good. So what that's going to do here is, our frames are going to be
named, in this case, it's WarCrimes_SH04V4.
And then it will say _whatever my take name is, so "beauty dragon"
and then "beauty hourglass," and then the frame name.
So, then as well, I also set up a separate utility pass,
just adding the object buffers and the depth, in here.
And then, basically, let's call this... I'll just select both of these and make
sure "beauty" is selected. So now when I press "render," it renders a picture
viewer, for example. Actually, there's a really nice little render button right
here, where I can check my takes. And in this case, it's team-rendered a picture
viewer, we would want to "render marked takes to picture viewer." And that will
spit us out the passes that we were just looking at in After Effects. So that's
that. Okay, so this is something that I just stumbled upon, like a week and a half
ago. I'm working on a short film for Star Wars. It's not for Star Wars,
it's just a passion project. But, it's on the planet Endor... spoilers.
Endor has trees everywhere. So, we've been looking at ways to handle trees.
In this particular case, we wanted to use Arnold to render. Arnold actually
works better if you just throw the geometry at it, versus using "cards for
leaves with transparency." What I stumbled upon was, using X-Particles in tandem with
Arnold's scene source procedurals, and I was literally able to load trillions and
trillions of polygons in a matter of seconds. So, we're actually going to do
that here, and cross our fingers that I don't blow the computer up.
I'll go ahead and load this. What I have here is just a height map that I spit out
of World Machine. And, I have an xp-emitter set up in object mode,
pointing at the landscape, emitting from polygon area, so it's just going to
randomly scatter. I have the mission set up to one million, shock in shock count.
So when I just advance one frame, it's going to scatter one million particles
over this surface. I believe these kind of alias-noticeable edges, or lines, is a
bug, and that's going to be actually fixed in the next patch of X-Particles. So what
we do from here with Arnold is we can add an Arnold tag, an Arnold parameters tag,
and load in to X-Particles on every particle, an optimized file, essentially.
So, the file we are going to load in... I'll go ahead and show you that.
Let me disable this. I'll bring this up a little, so you can see.
I'm trying to speed through all this so I can get everything in. So if I just
go ahead and load this, we'll see that it's just a tree. However,
this tree is one million polygons, every little branch. Actually, let me re-center
that. Every little leaf and whatnot are polygons, as you can see here. So, that's
the model we're loading. Let me go ahead and switch back to the original camera.
Oh, okay, there they are. So what we're going to do is essentially load that tree,
procedurally, onto each one of those points in, on my computer it's 12 seconds.
Okay, so let's just go ahead and do it, and cross our fingers.
Plug in C4D to A, IPR window. All right, we're at 32 seconds. Here we go. Let's see
how long this takes. On the laptop, on that other side it was 12 seconds as well.
Okay, so it's received the data, and we're starting to render. It's just going to
take a second for us to actually see what we're getting. And there we go. This does
take a little while to render, but if I just kind of get a little box here, this
should resolve fairly quickly. The render settings are a little low
also, just so that it resolves here pretty quickly. But, what I can do is go to the
Arnold renderer, diagnostics, we're on debug level.
So if I go to the console, I should actually be able to look at the number of
visible triangles. I don't know if it's going to stay up here.
But, if you can look at... Here, if I pull this down,
I think I can actually stretch and hold... Okay, it seems to be staying.
Visible triangles, 1.9 trillion. In like, I think we're at 8 or 10 seconds,
with Arnold, in Cinema 4D. So that's actually pretty incredible.
And I tip my hat to the guys at Solid Angle and over at X-Particles
for making this happen. That's everything from me.
- [Announcer] All right, all right. Ladies and gentlemen, Trevor Kerr.
[applause]