In this lesson, we're going to take the INM that we've used and create smoke, so let's go to Cash
Alembic, Cash, import Alembic and we'll use the Bifrost ATM here and I'll import now, if you remember
the tourists here and we can rename this to INM if we like, call it smoke.
It's probably pretty small, but now that it's an Olympic cache, we can scale it and it's going to
maintain this shape.
You can remember when we are scaling it in the previous lesson that it was changing because the shape
was moving through the texture.
But now we can scale down to zero if we want to check that out or before we can scale down the zero.
So that's why we need to do an Olympic cache.
So now that we have this, we can place this where we need it and we're going to scale it up.
So let's bring it over to basically where what I what I want to have happen is the smoke to pop out
when the hand comes through and then we can do it again when the guy busts out.
So it'll be two times that we're going to use this.
And if you notice, when I'm scrubbing through here, the the texture reformer or all that animation
that we had is not actually going through.
So what we can do is offset the Olympic cache.
So let's go into the attribute editor and go over to the Olympic node and we can offset this by one
thousand.
And so now when we scrub through, we should be able to see that it is indeed moving as we expect it
to.
So let's get this thing kind of where we want it.
Let's get under the ground here.
Let's go back to frame here ish.
So now we can kind of see it is under the ground that we've created and then we need to figure out what
frame that the animation starts.
So let's go to frame ten twenty, I believe, and let's scale this to zero so that it starts basically
off.
I will kiss like that and then I'm going to go to frame ten, twenty three so pretty quick and is going
to turn on oops.
Command at the wrong arrow button there you can see I'm typing up here.
So to get off of that I usually just select somewhere in the viewport or something.
So now we're on frame ten, twenty three.
So let's scale this back up to the size that we want it just type in a number here and then scale it.
I don't want it to be touching the top here because we're going to choose a couple of these pieces for
it to collide with and I don't want it to be intersecting that.
So I'm just going to choose something that is not intersecting that.
And I'm also going to bring this timeline down because we're not having to do pre roll for this.
So because it's happening kind of after the the scenes are going anyways and then I'm going to go to
ten thirty one and had a keyframe on his shift ared only keyframe the scale and then go to ten thirty
seven ish and scale that back down to zero.
So scaling to is basically going to turn the emitter off.
And so now we have this kind of effect where the emitter pops on at the same time that the explosion
happens here with his fist.
And because we haven't quite framed the position, we can kind of move this without having to worry
about, you know, affecting keyframes negatively.
And I'm going to go back to the beginning.
Just make sure I want to kind of max out the scale here.
So it looks like that's pretty good.
I might just move this down a little bit so I can scale it.
And the scale it up a little more here.
Cool, now that we have the INM done, we can add the Bifrost, so let's go to the effects tab and go
Bifrost Fluid's Arrow.
So last time we did Liquid, this time we're going to do Arrow.
So let's click that with the SM selected.
So now we get all of these kind of things were somewhat familiar with last time we did liquid.
Now we're doing arrow or smoke.
So it's a little bit different in the other main difference.
We want to keep in mind as scale again, something we keep coming back to.
So in our liquid example, the scale was we created our scene to fit the Bifrost scale.
But in this case, our scale is pretty huge.
And so we need to adjust Bifrost to fit our scene instead of the other way around, which we did in
liquid.
So to do that, we need to adjust the dynamic properties.
So gravity kind of what we did in the bullet solver stuff, we just need to do that here.
So we'll get to that here in a second.
But I'm going to hit the start frame, let's say, 10, 20, because that's where our animation starts
for the INM and turn on scratch cash.
I'm going to go over to the arrow shape on a turn voxels so we can basically shows the smoke a little
bit better.
And I think that's all we wanted to do.
And that tab going to go to the next tab.
And that's not what we want someone to go to the ATM and I want to turn up the temperature.
So this is kind of another thing back to scale and also just how I want this to kind of float up.
Temperature is going to affect how quick this rises.
So just imagine like a fire or something.
The hotter is, you know, maybe the the faster the smoke or the fire is going to go upward.
So it's going to change that to fifteen hundred.
And then I'm going to go to the Arrow tab over here, back to that.
And yeah, I've got voxel selected already.
So then I'm going to go to properties and scroll down properties.
And of course it's kind of deceiving this property.
Tab's you think it has nothing on it and then you scroll it down, has a million things here.
So this is where the scale factors.
Then, if you remember on the bullet solver, we did the same thing, which can increase the nine hundred
and eighty.
That's basically, you know, taking the centimeter to meter scale and then multiplying it by that the
master voxel size.
OK, this is where you can get into a ton of trouble.
We talked about a little bit last time about the liquid.
But here for this lesson, I'm never going to go below this.
Below means higher resolution.
If I take this number down for us, I want to keep this pretty high so we can actually see the simulation.
And also another little trick when the scratch cache, when you're testing stuff and you hit play and
the scratch cache isn't working or isn't letting you stop it.
So imagine, you know, it's taking like one minute per frame to calculate.
And you you know, here we already have the green stuff popping up from the scratch cache and that's
just taking one minute perforin to calculate and you can't cancel it.
You're like, OK, I don't like the way this is going.
Let me cancel.
You've got like two hundred more frames or it's going to be like ours.
So again, this is why you want to turn on playback one and you want to scale down what you're actually
viewing so that it doesn't go past where you want it to.
And the other little trick I found is if you're hitting escape and it's not working to stop playback,
if you switch to another window, at least this is maybe it's a Mac thing.
If you switch to another window and then switch back to my and then hit escape, it'll kind of recognize
that you were hitting a keystroke in the my window.
But for some reason, if I hit escape sometimes with Maya, you know, it won't it won't recognize it.
So I got to go, you know, go to Chrom or some browser window or find or something and then jump back
into Maya and then it'll accept any keystroke like escape.
So anyway, that's something to remember.
So so Masroor Boxercise, we're familiar with that now.
I want to keep this kind of higher so that we can actually test things.
The idea is you want to test at a very low resolution and low.
Does it mean.
No, actually means a high number for voxel size because you think about what this is.
It's, you know, the the three dimensional pixel.
So we want a bigger one because we wanted to represent a bigger area per pixel per voxel.
And so we want this to be a bigger number, which will mean lower resolution.
And that's how we want to test our smoke.
And then once we like it, we can decrease the voxel size and then.
Hash it out so it'll have a lot finer detail, but let me tell you just real quick, this might break
your all's machines.
I don't know what kind of computer you're working with.
This is the stuff that's very, very, very, very computer intensive, especially if you have this
voxel size set, too small and too much of a high resolution instead of at a higher number and a lower
resolution.
So we want to keep this at one point five, at least for this scene scale.
It seems to work pretty well.
So let's just hit play and see what we get.
So now that we have this simulated, we can take a look at the shape of the smoke and you can tell it's
very kind of uniform bulb, like very rounded and it doesn't look super supernatural.
So we can affect that with a turbulence field.
And Bifrost kind of has their own thing.
So with it selected, we can go to Bifrost fluids and it has its own you know, you can find turbulence
field under the motion field.
So this is where you're going to want to go if you want to add some noise.
So I'm going to click motion field.
And now we have all these different options to affect the Bifrost simulation.
So I'm going to turn off direction and I'm going to turn on a little bit of drag.
That just means it's going to kind of have resistance to whatever motion is going on.
And of course, that's kind of a physically accurate thing in nature.
That's what happens when I turn on turbulence.
And because the scale of our scene, I'm going to crank these way up, I must say something like 5000.
So these numbers will be different every time, depending on your scene and how you want to affect the
simulation.
So I'm going to remember this on frame ten, thirty five and I'm going to redo the scratch cash up to
this frame and see if we can't break up this very rounded look and make it a little more disturbed and
wispy and more smoke like instead of like this kind of rounded look.
So I'll see you in one second.
So now that our scratch caches is done there, we can take a look at frame ten, thirty five and I did
a little screen shot here so that we could compare.
Take a look at this section here.
Now, on this section, you can see there's a lot more bumps to it, right.
How this was totally smooth.
And now you can see a lot more texture here internally.
There's all these little bumps and then different things going on.
And then same thing with back here.
This was just one big kind of mushroom cloud.
And now there's a little more texture to it here.
And so it'll just add to the believability.
So the next thing we can do to add to that believability is to add colliders so that the smoke will
have to wrap around things and flow around different things.
So let's choose a couple of pieces in here to add as a collider so that it'll add some believability
and dynamic kind of interaction to it.
So I'm going to select the Bifrost arrow in the outliner and then I'm going to go in here and click
shift, click on a couple of pieces here.
When I choose some of the big ones that are going to be kind of in the main kind of area, that's going
to block the smoke coming up.
So it'll have to go around it.
So I can go to Bifrost Fluid's ad collider.
Then I'm going to select the Bifrost Arrow again and just do that another time here.
Just going to select this big piece and choose Add Collider.
And I choose the Bifrost simulation again and choose this big piece and say add collider.
And of course, every time we're doing this, this is going to increase the computational kind of time
that it's going to take to simulate, but it's going to add a lot of believability of it interacting
with the scene here.
So I'm not going to choose every little piece that's in the way, but I just wanted a couple.
So it'll give kind of the effect of of being affected by the scene and the pieces here.
So I think I'm just going to choose maybe that one.
It's going to be the last one.
And of course, you go crazy and choose all of these if you wanted.
But I think it will be an education and learning the limitations of your computer.
So I'm going to do a scratch cache again and then we can compare again with what we've seen already.
OK, now let's take a look at what we've created here now that we've added a few colliders, it's really
changing the look of the smoke.
Let's take a look at our screen shot here.
Now, you can really see it's almost totally different now, you know.
Let's see if I can't get in a similar camera position here.
I think I was maybe down a little bit.
And in general.
I think this thing, it's just not getting as high as fast, you know, here you can see it's already
up to the point of the flags and here it's definitely not reached there yet.
So it's it's kind of creating all this drag and it's changing the shape of it here.
And look just how much more jagged these edges are.
Everything is much more organic looking.
And it just it just looks a lot better than this kind of very, very simple shape of this smoke.
So adding colliders, adding emotion field is really going to change the look of the smoke.
So now that we see that our smoke is looking pretty good, let's create one more simulation when he
busts out.
So when I scrub, I don't want to try to be calculating.
So I'm just going to disable the kind of a Bifrost Arrow container here.
So it's not going to simulate.
So now I can scrub and you can see the green stuff isn't trying to catch up.
So I'm going to grab the emitter smoke and I'm just going to go to frame 11 09 here.
So I'm going to drag this back out and I think this is going to be the first frame here, so I'm going
to copy paste these.
I'm going to shift drag select copy the key frames here.
I'm going to go to something like 11 09, I think, and then paste.
And then we should be getting.
The ammeter coming back on now might move that in time just a little bit, because I want what we're
going to do is create his head and his vest as an emitter, sorry, as a collider.
So we want the head to go straight through the emitter.
And in so doing, it will take a lot of smoke with it, so one option would be you could just make the
head in a minute.
But what you're going to get is it's going to be emitting from the volume of this thing.
So you won't you there'll be smoke in the front of the head as opposed to like kind of the head pushing
through smoke so that the way we're going to do it is use the head as a collider.
So it's going to be pushing through smoke.
Another way could be to create the head as an emitter.
But I think that is going to look too wonky and it would actually be way more time intensive.
So instead, we're going to create this is a collider.
So we want to make sure that it's actually going through the emitter so that it can drag some of the
smoke with it as it's coming through.
So let's just click the emitter again and see if we can probably just turn off the smoke here a lot
sooner.
So I'm going to bring down these.
KeyFrames.
So that looks pretty good, so now we just need to add the head and the vest as a glider, so with the
Bifrost are selected, the head selected, I'm going to say Cleide and then do the same thing for the
vest just because these are kind of the two biggest pieces of his body that are passing through.
And we don't want to go overboard just like every single bone.
And that would take forever for it to collide.
So we just want to stick to the big pieces that are going to be most noticeable and now we can cash
this out.
So how you cash it out?
Let's get this thing all the way to the time.
Slider here.
We want to turn off scratch cash.
OK, let's enable the simulation again.
Let's go back to frame one on one.
And we want to turn off scratch cash because we don't want to cash to disk, meaning saving it to your
computer.
And this, which is the cash, cash and scratch cash, meaning kind of temporary.
We don't.
And that happens on memory.
So we don't want them happening at the same time that your computer will blow up.
So it won't blow up.
But, you know, I mean, you can turn off scratch cashier and then you can also it should already get
rid of it.
But if not, you're going to Bifrost fluids and say flush scratch cash.
So it'll get everything out of the memory.
And now we can focus on just the caching to disk.
OK, so open up Bifrost fluids, go to the option box here and we can set all of this stuff.
And if you have your project set properly, this should be, you know, looks similar.
It should be in the cache folder.
It's already populating that for you.
And now we can call this ground smoke.
And I'm going to say, oh, one, just in case I want to do it.
Another simulation later when I say time, slider.
And so I may hit create and.
It should run through.
And create the simulation, but what I found in this could just be my version of Maya is it doesn't
do that,
but it does set up the file structure.
So we can just use that window here, use this to set up the file structure so that when we go into
the Bifrost caching, it'll already be set up.
So let's go down to zero cache here.
You can see it's this little tab under the properties.
So have properties selected.
I'm down here and an arrow cache.
And also I found it's nice to set the air temperature kind of higher, too.
So all the air around the smoke is also going up.
So I'm going to add a zero here to temperature.
And let's see, I'm also going to have the smoke dissipate.
So this says how fast the smoke disappears, essentially to add a zero to that, too.
And I'm also going to randomize the velocity, which is very nice to.
It'll also add some texture and noise so that the velocity of the voxels and smoke emitting is going
to be randomise a little bit.
So I'm just going to add like a one here, you could do 10, you know, just play around with these
numbers.
It really depends on your scale and the look you're going for.
And this is why it's really important to, again, work with the lowest master voxel size resolution,
lowest resolution, meaning high.
No work with that as much as you can because it'll allow you to iterate very quickly so you can play
with these numbers, do another scratch cache, but keep this number high, meaning the resolution low
so you can play with this stuff.
So because we're caching, I'm going to maybe take this down, you know, whatever, a little bit,
you know, one point three this time instead of one point five.
So we'll just get a little more detail and the cache.
And so because we already did the arrow cache thing from this menu here, compute and cash to disk,
this set up all the file structure here.
But technically, it's supposed to run the the cache.
You can see we have a blue mark here now and the blue means cache to disk.
The green means scratch cache.
So it tried to cash the disk here, but yeah, it didn't do it.
So we need to run it again.
So the main thing to notice here is cache control.
There's a number corresponding to each one of these.
So let me show you it in the documentation cache control zero.
Recompute the simulation, OK, one which is already set to reads cached frames because we clicked it,
it thought, you know, a cached it.
So now it's going to read what a cache but only cache this one frame we can see that's blue over here
and if we hit play, it's not going to actually cache anything.
So we need to change this number to two.
It says creates user files for each frame.
That's what we want.
We want to create when we're done creating the simulation, we want to turn it back to one so that every
time we're playing back, it's not overriding our cash and rehashing for no reason.
Right.
So we want to do this on two.
So we'll set it to two over here.
So it'll actually write and cache this out when we hit play on the play back button here.
And after it's done, we can turn this back to one and it's going to read the cache files from this
location that we've set.
So I'm going to hit play and it's going to start caching.
And I'll see you here in a second.
Thanks.