Vai al lettorePassa al contenuto principale
  • 6 ore fa
Epic ha rilasciato un nuovo video per spiegare come l'Unreal Engine 4.0 gestisce gli effetti visivi. Guardatelo perché è molto interessante.
Trascrizione
00:00www.infiltrator.com
00:08www.infiltrator.com
00:08Hello and welcome to part 3
00:10in our series on the visual effects of the Infiltrator Tech demo.
00:12Today we're going to take a look at the fireball effect that was seen about halfway through that demonstration,
00:17and joining me is senior visual effects artist Francois Antoine.
00:20Hey Francois. Hey Zach, how are you?
00:22Doing well. So why don't you start by telling us a little bit about yourself?
00:25Sure, so before coming to Epic I worked in film visual effects for 10 years,
00:30and I'm excited about this demo today because we're going to be showing an explosion
00:34which uses some of the same techniques that we use in film visual effects.
00:41So can you maybe give us a kind of an overview of what's so special about this effect?
00:47Well, we had to create this explosion with a new technique called the volume texture,
00:52and it's basically a texture that's three-dimensional.
00:55And that, in combination with GPU particles, allowed us to create what we call our volume explosion.
01:01Traditionally, sprite-based explosions don't have that cohesive feel,
01:06but the volume explosion kind of overcomes those limitations
01:09and gives the impression that it's really rolling through the geometry and expanding.
01:14So the first step was to create the data for the volume explosion,
01:18and for that I went into 3D Studio Max and used the FumeFX plugin to generate a 3D fluid simulation.
01:26And you can see that here we imported the geometry from Unreal Engine and using FBX.
01:32It actually saves the placement of all the geometry and also allows you to import camera
01:36with the camera angle and the different lens settings.
01:39Which I imagine would be useful here where you kind of need to wrap a fluid simulation around that.
01:43Yeah, absolutely. Actually, having the camera allows you to really customize and animate to the camera,
01:48which can be a big time-saver so you don't waste time animating things that won't be seen on the
01:52camera.
01:53Once we have the explosion going, what I did is that I rendered 10 cross-sections of the fluid simulation
01:58from a top-down point of view. And you can see that each of these cross-sections is represented by
02:02the volume
02:03between each of these planes. So these are now rendered out, and one of the cross-sections looks just like
02:10this.
02:11And you can actually see inside the explosion right there, because this is a middle cross-section.
02:17Alright, so once I had all these cross-sections rendered out, I brought them together inside After Effects.
02:24And over here you can see on the left here, I have all 10 cross-sections stacked on top of
02:28each other.
02:29This was just a way to test to make sure that there were no rendering artifacts or shadows from one
02:34layer onto another,
02:34and it was to make sure everything was properly sorted before bringing that information into Unreal Engine.
02:41So now we're going to import each of these slices as a sub-UV texture.
02:46So this is one of the bottom-most layers. You can see the cross-section for each of the frames
02:51of the render.
02:52And I imagine this would be one of the lower slices.
02:54That's exactly right. As the explosion moves up, it just leaves behind smoke.
02:57So what we could do is look at one of the higher-level fireball slices.
03:02And you can see here that you have nothing in the beginning, because the fireball hasn't reached that area of
03:07the fluid simulation.
03:08And then the top cross-section is right here.
03:11So the next step is to recreate the information between each of these slices.
03:16So here we are inside the material that we wrote.
03:20You can see here there's a node called the volume texture sample, and this is where we create the 3D
03:24volume texture.
03:25It is also a function. As you can see, it's highlighted in blue.
03:29A function is basically a network of nodes that can be reused very easily, kind of like a snippet of
03:34code.
03:34And this was created by artists. You didn't have to bring in a coder to write this.
03:37That's right, yes. And that's where the power of Unreal is, is that we can actually prototype these kinds of
03:43features using artist tools.
03:45So you can see right here, we have more functions.
03:48And each of these functions reference one of the slices that we rendered out earlier and brought into Unreal Engine.
03:54You also see there's also extra parameters here that artists can set, which is like the XY size of the
03:59volume and the slicing between the space between each slices.
04:04So a little bit of further customization if you need it later.
04:06Yes. And because these are parameters, then they will be exposed to the material instance, which we'll plug in later
04:12for the explosion.
04:13Very nice. Okay, so you've got your material at this point. What's the next step?
04:17So the next step is to actually be able to display that volume texture.
04:22Typically, a way to display volume texture is to ray trace it.
04:26But that is very expensive, so we didn't want to use that approach.
04:29So instead, what we're using is a point cloud of particles.
04:33And what's going to happen is that each of these particles is going to look up a certain point in
04:37space of the volume texture and display those color values.
04:40So I noticed the particles aren't moving. We're looking at this in wireframe right now.
04:44So I guess each one of these is kind of like a static monitor?
04:47That's exactly right, yeah. The motion is not in the particles. It is in the texture that is actually animated.
04:53So we basically just need a lot of tiny little billboards that will sample that texture and display it.
04:58So they're not moving for that reason.
05:00So right here, we have about 500 GPU particles, which is our GPU particle system.
05:05That's the right amount when we're kind of far from the camera.
05:08But here, because we're looking at the explosion pretty closely, I'm going to increase that count just for the sake
05:13of visualizing the explosion up close.
05:16So 2,000 particles are still very cheap by GPU standards.
05:20So now we can see the explosion happening.
05:22And if we go to the top view, which is where our camera is for the shot.
05:26Oh, that is amazing. You can actually feel it like creeping up at the camera.
05:30Yes, and that's exactly the feeling we wanted.
05:32That's something we don't traditionally get with regular 2D sprite explosions because they don't have that coherence between each other.
05:40And they don't have this kind of growing volume.
05:43Very nice.
05:44So because it's made of slices, if you switch to the side view, you'll be able to see what our
05:48material is doing.
05:50You can see each of the 10 slices in effect here.
05:52And you can see our material is creating interpolated data between each of these slices.
05:57So in effect, we're recreating the explosion accurately from the top down by using more efficient interpolated data where we
06:03don't need the detail.
06:05Right. So it's not going to be perfect from all angles, but you've still got a wide range of visible
06:10areas and a lot of motion and depth in the overall effect.
06:12Exactly. If we needed to see this explosion from the side, we probably would have increased the quality, the number
06:17of slices, or used a different technique altogether.
06:20But for what we need, which is some subtle parallax and that rolling motion, this is just the right fit
06:27for that shot.
06:28Awesome.
06:30So you can see here on the output of our volume texture node, we're plugging into the black body node.
06:35What's special about the black body node is that it takes in a temperature in Kelvin and returns a color.
06:41And in effect, this allows us to color explosion in a more realistic way.
06:44No more, I guess, having to fight and figure out what the best color for fire is.
06:48Yes, that's right.
06:49Awesome.
06:50Okay, so the next step is to get it into the cinematic so we could see it.
06:53So I created a number of tracks in the cinematic tool, which is matinee.
06:58You can see I'm triggering the explosion using the toggle track for the explosion.
07:02And that's just going to turn on the explosion and that's all?
07:05That's great.
07:05That just triggers the explosion and has it running.
07:07But because we want it to sit better in the environment, I create also a track with lights.
07:15And this is called the explosion light and that just creates light right here.
07:19And it kind of blows out the environment so you really get the feeling that there's an explosion going off.
07:23And on top of that, you can see there's a layer of distortion right there.
07:27And the distortion is just a sheet that has a distortion material applied to it that sits on top of
07:32the explosion and moves up with it.
07:34So as it gets closer to the camera, you start getting that feeling of heat and heat shimmer.
07:39So if we run through the cinematic, we can see the completed effect.
07:45Tell me, how did Unreal Engine 4 enable you to make this effect?
07:49Is this something you could have done previously?
07:50It would have been hard to do previously because we're using custom material functions in the Material Expression Editor.
07:56And on top of that, we need to use GPU particles.
07:59Well Francois, thank you very much for your time and thank you for joining us.
08:03We will catch you on the next Inside Unreal.
Commenti

Consigliato