Create beautifull VFX in Unreal Engine 5 - beginner tutorial

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
foreign effects in today's video we're going to create little butterflies it's a perfect effect to add life in a natural or fantasy environment we'll be using Unreal Engine 5.1 and Niagara to make those cute butterflies we'll create models inside unrul engine make a simple 3D mesh using blender edit free to use textures using Photoshop and play around with Niagara emitter's modules so let's get started people [Music] as usual we start the tutorial by taking some time to have a clear overview of the effects components we got butterflies trials and soft particles to make our butterfly effect we'll need help you guessed it butterflies so we start by making this component before creating anything we need to figure out how butterflies moves around this will highly influence which technical solution we are going to use to simulate some movement and we got this perfect video from the sense magazine YouTube Channel showing us in slow motion the movement of a butterfly's wings and or each ring bit affects air around it the result of this observation is that butterflies rotates our bodies with each Wing bit see swaggle movement makes them move up and down depending on the Tilt angle and waggle movement strength this is the core component that makes the movement quite erratic that's quite interesting so are we going to replicate this complex motion well as usual there isn't only one way of doing things in VFX for this tutorial will explore a solution based around a model that will simulate the erotic local movements of a butterfly on a 3D plane and a particle system that simulate a butterfly's Behavior with random variations inversity and direction however it would be quite difficult to exactly replicate all butterflies actually moves so we'll do what we usually do in real-time environment we simplify things and keep in mind the core features of the effect in the case of our butterflies what makes us feel the motion pattern and behavior of a butterfly are its wing bits and its erratic motion alright we know what we need to do now we need to know what we are going to do exactly how can we make these features in our Shader we can rely on a Shader feature called vertex offset or vertex displacement this feature allows us to move around vertices of 3D meshes we will animate the board of vertices of a 3D plane where the wings will be located to First animate the wing bead of a butterfly and after that offset randomly the entire plane up and down to simulate the erratic motion with some random Direction and velocities that will be applied in our Niagara emitter this will do the trick just fine so to summarize to make our butterfly component we need an alpha blend transparent model with vertex offset features a custom 3D plane a butterfly texture and Niagara emitter to better visualize what we'll be doing when creating a butterfly Shader we'll first create a butterfly texture and CD plane of the butterfly texture we need a symmetrical back view of the butterfly you can either end paint it yourself or use an image on the internet that is under a Creative Commons license in my case I'll pick this picture of morphoditious spark a picture taken by TJ disco available on Wikipedia after I've downloaded this texture I need to make few adjustments to it to make it work in our Shader later on specifically keep the interesting use variations in the RGB channels and have an opacity mask of the butterfly stored in the textures Alpha Channel in Photoshop create a 512 by 512 document import and resize your butterfly texture to make it fit inside the canvas right after that right click on your new butterfly layer and select a rasterize layer to be able to edit it we'll use the magic wand tool with the tolerance around 15. to select and erase the white background first step we reselect the entire image with a magic wand tool right click in our canvas and click on select inverse to invert a selection to get the shape of a butterfly in the channel window create a new channel paint your selected butterfly shape in white with a brush tool and paint in Black undesirable elements such as this little note that we don't want in a texture sets are opacity mask now you can export or butterfly texture in div with the alpha Channel export option ticked and import it in our unreal project we got our texture done now we switch to blender to create our city butterfly plane first add a 3D plane to you soon then with a loop tool insert an edge loop at the center of your plane on the x-axis and bevel it this part of the mesh will be the body of the butterfly the part that is that moving during the ring bit animation in this part the wings of a butterfly these parts will be moving up and down thanks to the wing bead animation we're going to make in our Shader in a moment swing beat animation synthetics offset might looks a bit stiff with just a simple quad for wings if you want you can smooth it up by adding a net Loop near the outer edges of the plane for each wing and finally to get the right orientation of a texture on our plane we'll go to the UV editing Tab and apply a minus 90 degree rotation on the y-axis on our entire UV Island we cannot export or mesh from blender to Unreal Engine okay we got our texture and a 3D mesh time to create a butterfly material after we've created and opened your model in the material editor window in the detail window set the blend mode to masked and the shading model to unknit we choose masked as our transparency type because it is a light transparency type performance wise we don't have partially transparent part in our texture remember we only got opaque Part White and transparent part black now in between with gray gradient also we don't want our particles to be affected by the lighting of our Scene It will make our model even lighter performance wise and since we want to be able to see our Butterflies from every site we'll need from both front and back faces of our mesh to be rendered so we'll take the double-sided option we need to reference our texture first so drag and drop of butterfly texture from our content browser directly in our graph window we then right click on the texture sample node and select convert to parameter being a parameter this node will allow us to reference if we want a different butterfly texture on each metal instance that we might want to create later on we want to be able to tint our patio's color while keeping a texture space color use variations so we'll add a particle curl node to a graph to control the crow of our particle we'll connect the RGB Channel output of the particle core node through a multiply node to the RGB output of a texture simple node and Link the result to the emissive input of the master node to apply the opacity mask of your texture to all particles we connect the alpha output of the texture sample node to the opacity mask input of the master node all right we got the basic stuff done now we want to add a preview of the model on our 3D mesh directly in our preview window for that in your content browser select your butterfly 3D plane and back in our metal editor window click on this icon we should have now a preview of our custom 3D plane with our butterfly texture applied on it now we'll go to the real challenge of this material the multiple vertex offset features we first work on the up and down movement of the entire plane we'll call it the erratic movement for short and then on the wing beaked animation or the erotic movement we need to make a looping animated sine wave that will push all vertices of our plane alongside the normals since we are working on a plane with default normals this means vertices will be pushed up or down on the z-axis in unwind engine we also want to control through Dynamic parameters in our Niagara emitter or strong and fast the up and down erotic movement will be same thing for the win bit animation so we'll first set up our Dynamic parameter node after we've added the dynamic parameter node will take the time to rename all outputs this will be helpful when we'll edit the values in our Niagara emitter later on the wing bit animation we got the red output it will control the same wavelength or Oslo or fast the wing bit animation is we'll name it Wings animation multiplayer and the green output it will control the vertex offset intensity all of our vertices of our plane will be pushed we'll name it Wings offset intensity all the erratic movement animation we got the blue output just like the red output it will control the sine wavelength or Oslo or fast the up and down erratic movement is we name it position type multiplayer and finally we have the gray output just like the green output it will control the vertex or set intensity are strong the up and down movement of our entire plane is we name it position offset intensity alright so let's first make the looping animated sine wave this will be the base of vertex offset feature add a type node and multiply it by the blue output of the dynamic parameter node link the result to assigned node and this is our basic animated sine wave with its wavelengths controlled by the blue output of the dynamic parameter node Bell to push off vertices along sides are normal add a Vertex normal node and multiply it by our animated sine wave node setup multiply then the results to the gray output of the dynamic parameter node to control the offset intensity later on in on your particle system emitter if we correct this group of node to the word position of set input of the master node we can see our mesh being entirely pushed up and down nice we got our erotic movement set up done it's quite slow at the moment but would be able to play around the intensity and speed of this feature directly in our particle system emitter later on we can select the entire node group right click on the Node and select create comment from selection above our setup grouped into a comment box this will allow us to easily identify each feature we are going to make in our Shader we got our erratic movement setup done with now continue on with the wing bit animation setup and look at ifas it starts off with a simple than the erratic movement a looping animated sine wave pushing of vertices except in the middle part of a 3D mesh where the butterfly body is supposed to be displayed we need this part to stay static we can already copy and paste the entire node setup we used for the erratic movement feature and replace the blue and gray outputs of the dynamic parameter node by the red and green ones they will respectively control our fast and strong the wing bit a movement will be we got the basic looping sine wave ready now we need to make the center part of the 3D plane static the center of the mesh and of our UVS is where is displayed the body of a butterfly the parts that need to be static we just make a reflective gradient with a black part at the center we set the offset intensity of the center of our plane to zero and thus made this part of the mesh static to make this mask add a text code node mask out the green Channel add minus 0.5 multiply its by properties that will control the softness of the Mask multiply the results by itself and saturate the output of the last multiply node to constrain the values between 0 and 1. and that's it you should get the nice centered linear graduate mask in the saturated notes preview window all right we'll now apply this mask to our animated sine wave by multiplying both node setups to check if everything's working try to connect the result to the what position of set input or the master node we should be able to preview our butterfly with its Little Wings animated going up and down to the initial horizontal position and now to add the erratic movement to the anteriorx offset setup just add the erratic movement setup node to the wing bit vertex offset animation setup and Link the result to the what position offset input or semester node and that's it we made our butterfly Shader our butterfly should be moving up and down with its ring animated we got everythings ready to create our negro system and our first emitter we want this Editor to continually spawn our 3D plane with variations in size lifetime velocity and direction in the system overview we right click and select add animator by chance we already got a good template close to what we want in terms of particle's behavior the ending particulates template so we'll choose this one we'll have to tweak some parameters to fit on it so first we delete any unnecessary modules so let's get rid of the scale color scale Sprite size aerodynamic drug and windforce modules then let's focus on the visual rendering of a butterflies it is a Sprite render module and replace it by a mesh renderer module instead in the meshes parameter assign a custom 3D plane is the enable override metal option and assign our butterfly material we made a minute ago set set the facing mode to Velocity to make our butterflies particles aligned with the directions they are adding towards into initial Sparkle module we'll apply two random colors to our butterflies to have view variations and we are going to make it through the use of custom user parameters that way we don't have to create multiple integral systems in our content browser to have different tinted butterflies particle systems we can directly set different colors for each instance of a particle system and event edit these values in blueprints to do that we set the Chrome mod to random range and go to the user parameter stage of a Negra overview node this is where we'll add our custom user exposed to color values click on the plus icon and select linear color we need two of these you can select two different colors to tint are already colored butterfly texture feel free to choose any color value depending on your preferences and the rest color mode is being quite bluish I go for greenish and reddish tint we know drag and drop those user parameters values directly from the operator window to a color minimum and maximum parameter we'll be able to edit these Colors by selecting any instance of our Negra system under the user parameters category we can also set the mesh sizes of our particles right there a random high range of uniform value should looks good with small and big butterflies I Assurance is a key factor here it is important here to note that all values that I'll be using during this video are related to my 3D mesh and level size and mode so feel free to address those to fit your needs in the shape location module you can choose any shape primitive you want it's up to you and your needs in the spawn rate module we edit the spawn rate value accordingly to our shape location radius to avoid having too few or too much butterflies on screen in the particle update stage we'll add a scale mesh size module to make the spoon and despawn our butterflies muscle we'll set the scale factor parameter type to Vector from curve make a nice table holding bridge that way our butterflies will grow up and shrink down quickly and maintain 100 of the size for most of the lifetime before tackling the behavior of a butterflies we set up the strength and speed of our vertex of such Shader features by adding in the particle of that stage the dynamic model parameters module here we'll want all predators types to be random range floats and tweak values to our Earth content to find the right range for the intensity and speed of the wing bit animation and erratic movement of a butterflies once you are done with it it's very time to make our butterflies move for that in the particle of that stage you can either add a Vertex velocity module to make your butterflies fly around a single or multiple axis noise Force to make them fly in random Direction in our case let's add the vortex velocity module in this module we'll set the velocity amount parameter type to random range float to have a lot of variations after trying out different values we should have a starting point for butterfly particle system emitter where our butterflies are flying around and facing the direction they are adding towards one final touch to our Niagara emitter for upcoming components such as thread of fairy dust we need to have access to our butterfly status like the crow or position in the particle object stage we'll add a generate location event module we'll also go to the emitter property stage and tick the request pass instance IDs parameter this will be useful later on and with that done after renaming our battle emitter we got our main components done isn't it beautiful already we'll continue this tutorial video by making these Trails left behind by little butterflies to create this strategy component we'll reuse the basic Alpha blend module we've made in previous tutorials if you want to see the step-by-step creation process for this material you can check the Spark's spiritual video at 1 minute and 42 seconds we'll also need to create a very simple Trail texture in Photoshop and to make a single Niagara emitter that will generate set trails and Link the emitting starting point to the position of a butterfly's we'll start by making the trail texture when making Trace texture there are multiple things to take in account specifically will the texture be stretched or tiled over the entire Trail and where is located The Head and the tail of the trail on its texture in our case our texture will be stretched over the entire Trail we want this Trail texture to be soft with no art cut at the top and bottom of the texture the end of the trail will be on the left side of the texture and the end of it on the right side so we'll paint our gradient's is value on the left and make it gradually fade when it starts to lean to the right a 512 by 512 document use a simple soft brush apply one big stroke on the left on the canvas and use the Eraser tool with a soft brush to erase part of the left top and bottom of the texture and that's basically it after we've imported our texture we'll be able to assign it in our Alpha blend motor instance alright we got our transparent Alpha blend module instance with our track texture applied onto it time to get back into our near grass system we want this emitter to spawn a trail such as the same clothes as our butterflies and to emit set trays from the current location we'll add animator in the system overview next to a butterfly emitter and choose an empty template first let's get rid of the spread renderer module and add a ribbon renderer instead we'll assign our custom train material in the metal slot you won't see our Trace right away for particles need to be moving to generate set trails so we'll just quickly set up the link between our trays and our butterflies positions before tweaking anything related to our Trace visual rendering go to the emitted property stage tick the request persistent IDs parameter and then click on the plus stage icon and select event handler in this new event endless stage we'll add a receive location event the event handler properties will Source the location event over butterflies set the execution mode to spawned particles and set the spot number to 1. now we should be able to see Trace emitted bind our butterflies we want those trays to have the same colors on our butterflies or should I say to be tinted by a custom user exports properties we made earlier so we'll go to the receive location event and in the color parameter we set apply an antique Alpha where we set specific Alpha values for Trace later now let's custom the visual rendering of our Trace in the initial spartacle module we'll set a standard lifetime value to let our choice exist long enough that we can see them but not too long to avoid having too much strings displayed on screen we set a uniform value in the ribbon width parameter to control the size of our Trail in the particle of that stage we can add the scale ribbon with and scale column modules in the scary bandwidth module we set the ribbon with scalparator type to float from curve and click on the smooth stream done curve template to have archways add at 100 of its size and its tail at zero percent finally in the scale column module we set the color and Alpha of our Trails we want our Trace to add the same color as our butterflies with the same U variations we set up earlier with our custom user exposed color properties to do that we need our choice base color to be close to the color of a butterfly texture that way each Trail will have a color close to its perfect particles color including teeth variations all thanks to the received location event module specifically the cross parameter that will apply the tint variation we made for butterflies tour trails so we'll set the scale RGB parameter type to make Vector from linear color RGB and register a clock close to a base per flight texture in my case some kind of light blue and we want this Trace to be quite subtle so we set a low Alpha value and that's it we got our thread emitter done don't forget to rename your emitter now we'll focus on making this little soft dot buckles Pine or butterflies to spot our effect just like the thread component is quite subtle and secondary to make these soft dot particles we set production time once again by using the alpha blend module we used for the tread component and reuse a soft dot texture that we add the opportunity to make in previous tutorials if you don't know how to do such texture you can check the Sparks tutorial video on the channel at 3 minutes and 47 seconds you'll find all the details on how to make such texture in no time so we'll just duplicate the trail model and register the soft dot texture in it once it is done don't forget to rename the metal instance back into on your grass system we want our soft.parkle emitter to continually spawn multiple moving particles by our butterflies we'll add animator in the system overview and select an empty template we start by editing the visual rendering and behavior over soft particles before linking them to a better place position and color to see our particles temporary in the emitter update stage We'll add a spawn rate module with a small spawn rate value we'll delete it later when we link our soft dot particles to our butterfly in the Sprite renderer module we'll assign a soft dot model instance in the model parameter in the initial particle module we'll be able to edit and give a lot of variations to our particles we'll set a i lifetime range to drop particles to make some last a long time and some not so much we then go to the Sprite size parameter select random uniform and register or I range spread size values to have big and small soft dot particles then in the particle update stage we'll add the scale column module just like we did for trials the base color of a particle should be closed to color over when butterfly texture before getting tinted by your ex post color properties or particles should have similar corals without trails and butterflies we'll make our soft dot particles flicker in the scale Alpha parameter for that set the Pareto attack to float from curve add a bunch of keys and make some goes up and other goes down this effect will reinforce a certain fairy dust bordery aspects to our soft dot particles the visual rendering over particles is done we'll get to the Behavior now in the particle spawn stage add a ship location and add velocity modules in the Alvera CT module will fix and map dependencies issue by clicking on fixed issue we'll set the velocity mode to from point and set a small speed value to allow our particles to be slightly pushed away from the spinning point in the shape location module we set the sphere radius to a very small value the goal would be to have a series to be a bit smaller than the butterfly's body such way of particles will be spawned around the body of the butterfly instead of being spawned only at the center of its body alright now we got to link our particles to our butterflies positions for that we'll first go to the emitter property stage and check the request plus instance IDs parameter and then click on the plus touch icon and select event enter in this new event under stage we'll add a receive location event in the event handler properties we saw the location event over butterflies set the execution mode to spawned particles and set the spool number to 1. and boom we got our little dot particles emitted behind our butterflies now we want those particles towards the same colors and our butterflies so we'll go to the receive location event and in the color parameter we set apply Alpha since we already set our flickering Alpha effect through the Scarecrow module we cannot delete our spawn rate module we've used arbitrary values until we've created all our emitters so now will be the perfect time for you to trick some of your emitter's values such as particles or Ribbon sizes on color Dynamic parameters range shape locations radius or number of particles being emitted to better fit your need for your overall don't forget to rename your emitter and we got our last particle emitter Dawn we know of cute little butterflies flying around leaving a trail and some dusty fairy powder behind them and that conclude this video I hope you like this tutorial and I see you in the next one bye [Music]
Info
Channel: Pierrick Picaut
Views: 17,829
Rating: undefined out of 5
Keywords: blender3D, modeling, shading, rigging, B3D, p2design, sculpting, digital, animation, cartooning, rendering, CYCLES, tutorial, Pierrick, Picaut, Pieriko, 3D, Computer, Graphic, blender, eevee, VIDEO GAME, rig, animate, stylised, best, Blender, art, digital art
Id: xDD1bfwr6iQ
Channel Id: undefined
Length: 34min 57sec (2097 seconds)
Published: Mon Apr 17 2023
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.