Introducing EasySnow for Unreal Engine 5

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
easy snow is your go-to tool for adding highly realistic snow to any level if you used niako before you'll know it can be a little overwhelming and tricky to Art direct I created easy snow with artists like you in mind making it a breeze to Art direct heavy snowfall light flurries or blizzards in seconds it leverages niagar particles and an elegant material function to add snow to your entire World conveniently controlled through a single blueprint you can place pockets of snow wherever you like in your level and art direct each one independently I spent time shooting and studying real world reference of snowfall in order to bring you this tool each snowflake is a 3D model based on real world snow clumps which get lit shaded and rendered in a realistic manner for you early birds easy snow is 30% off for the next week only you can download it on the Epic Marketplace link down below so let's get right to it let me show you why it should be a part of your toolbox how to use it and what you can do with it so there are lots of existing plugins out there that have weather systems but I found most of them to be a little bit lackluster when it comes to both how they look and the ability to control them the reason I went with a fully 3D model approach for the snowflakes instead of using Sprites which do get better performance is because 3D models will actually get shaded properly they cach to light and highlight and self shadow but also because of motion blur here's a slow motion example each snowflake is rotating oscillating twisting through the air like real snowflakes do and when motion blurred you get some more interesting texture when it gets rendered no two snowflakes look the same in the shot yes I absolutely am pixel peeping here but this is the kind of thing that gives your render that last little 5% realism it needs to go from good to great so with that said let's jump into unreal to see how it is used you'll find a demo level provided in the easy snow folder and this should give you a really good idea of how everything works so to get started with easy snow in your project all you need to do is to find the blueprint folder and drag and drop the easy snow blueprint right here like so you'll get started right away with having snow falling in your scene so now that we have easy snow in the level I'm going to guide you through the settings that you have access to so easy snow has a bunch of presets that you can use as a starting point you got light snow heavy snow one thing to be aware of is when you have a preset enabled it locks many settings in the blueprint right here any setting that has a dash suffix here means that it is locked when a preset is enabled the other setting that don't have a suffix can be adjusted even when you're using a preset so here's what I recommend you to do use a preset as a starting point and if you want to make additional changes to it you can then remove the preset by taking the little arrow here which preserves the values set by the preset from there you can make the changes you want you can also make your own personal presets by duplicating one of the preset files in the content browser here and adding your own values just be aware if your spawn radius and height values are set too small or too high preset results might look a little bit odd so if things are looking a little bit weird start off with default values in your scene and work your way from there to troubleshoot next we have the custom speed slider right here which you can use to adjust the global speed and this here is kind of a clear example so this blueprint has a custom speed of two while the other one that's slower has a custom speed of 0.2 this can help you get results for things that aren't necessarily snow things like ash or dust so on and so forth next we have the spawn radius and spawn radius height and I'm going to adjust these real quick and I set this to like 200 by 200 and as the name implies it's going to adjust what the radius of the spawn particles is going to be this is going to be really important for you to adjust accordingly when you're using the camera Centric checkbox here the camera Centric checkbox means that a particle emitter will always follow the camera no matter where in the world you are this can be a very helpful starting point if you're making a game or something or if your camera in your shot is traveling a very large distance over time because you probably don't want to be placing pockets of snow everywhere in a level or using huge radiuses with a colossal amount of particles personally I prefer to place the pockets of snow where I want in a level but sometimes setting it to camera Centric is needed for a given shot it's great to kind of combine the two next we have the spawn rate right here and like the name implies this controls how many particles you want do you want 100 snow particles or do you want 10,000 so just kind of go easy on the amount um you can probably murder your computer if you try hard enough next is the snow Lifetime and that is the total life duration of each snowflake in general I recommend keeping that value to as low a value as you can get away with because higher values can be a little bit more performance intensive and often very unnecessary next we have the air resistance Min and Max as you'll see here on the left we have no wind resistance and on the right we've got a value of 0.2 this is really an art Direction feature it gives you more control over the look sometimes in real life snow does fall in a straight line like that and other times it doesn't so I recommend avoiding values that are really high in general like it says here values between 0 and 0.3 are what I recommend you can also use this combined with the chaos slider for additional control next we have the near particle size Min and Max like the name implies this is going to control the minimum size and the maximum size of your particle system so if I can set this to like 4 and 10 something to be aware of this will only affect the size of the actual snow geometry that leads me to my next Point we've got distant particle size and what do I mean by that when the particles are far enough away from the camera they will revert to Sprites meaning they will no longer be actual 3D models and so if I move the camera back here you'll see the the the difference here that has to do with the LOD settings which we're going to look into again really soon uh so if you want to increase the size of the distant Sprites you have control over that right here at a distant particle size so if I set it to 10 you'll see they've gotten bigger I hope that makes sense you can also adjust a distant particle Alpha if you notice that in the very far distance your snow is not that visible you can increase the slider here and that should make them a little bit more visible in distance like I mentioned earlier I went with a full 3d model approach for the snowflakes that's where the LOD control comes in you can adjust the range at which each LOD changes and the L toggle here gives you a colorcoded visual indication of which one is which pink is high detail green is mid detail and blue is low detail Sprites next up we have wind and wind is a fun one and this is where you can really fine-tune the control of your particle system everything here is pretty well identified and pretty straightforward but turbulence here works together with the wind strength and this allows you to get a more wispy feel it breaks up the linear falling pattern of the snow and by adjusting its frequency you can get some really interesting visuals which are perfect for cinematics now we do also have Collision that you can turn on as well this uses mesh distance Fields so if your mesh does not have distance Fields you're not going to get any Collision if you want snow to accumulate even more then that's where the snow lifetime comes in handy and we can increase this let's say to 20 and the snow will start building up over 20 seconds if you you'll see already we're we're starting to get quite a bit of an accumulation here on the ground yeah just just be careful if you need to you can also adjust the material of the snowflakes right here so if you need to change the color here you want your snowflake to be a red or something you can configure the look of the material of the individual snowflakes by going to the snowflake material adjustments right here easy snow also has a drift option here that you can toggle to add a stormy windy foggy effect for additional art Direction purposes there isn't a set it in forget it mode for this you're absolutely going to need to tweak the settings to get the result to work well in your specific environment with your specific lighting but I've made this as easy to adjust as possible I do need to take a moment to talk about translucency if you have any experience with materials in unreal you might be familiar with the translucency lighting modes and unfortunately I cannot expose translucency settings through the blueprint so depending on your level and your needs you may have to adjust this in the drift material by default I have it set to volumetric non-directional as that seems to work pretty well in a variety of situations but you can get wildly different results based on this setting here things like particles being lit by local lights at a distance or getting a more volum like effect this is all dependent on that setting there like I said I can't expose that to the blueprint for ease of use so I wanted to make you aware of it there is no one- siiz fits-all setting unfortunately next we have the material function I was talking about the world snow material function is a crazy easy way to add snow to all of your models by plugging it into your relevant Master material all you need to do is this open your master material and in this case I've got the mega scans Master material that a lot of you are probably using you can add the following material function by drag and dropping it into the master material here and you might be a little bit overwhelmed by the amount of pins here but don't worry plug it in like this you'll see I have ma support which is short for material attributes and this is the easiest way to do it but if your master material does not have a material attributes approach you can simply plug in the relevant noes into the base color roughness normal displacement Etc from there plug the output pins into your material and you're done and once it's done I recommend creating a material instance of this material because that makes it way easier to Art direct your materials later because everything will be condensed into this and clearly explained from there it's all controlled through the easy snow blueprint itself you just need to go to world material settings right here and tick this check boox by default fault this will be turned off because I realize that on larger projects you might not want to have snow everywhere all the time so this way you have to manually turn on the snow if you want to use it be aware this is not a toggle uh once you set it it is set if you misclicked and realize you didn't actually want to set it don't worry just reopen your level and it will revert to default I'm working on a better solution for this so hopefully in a future update I'll be able to make this a toggle instead because that would be a lot easier to work with from there you can globally control how much snow you have the falloff the sharpness The Fading the displacement so on and so forth you do have the option to override the blueprint settings on a per material basis if you want more granular control over the look of the snow on a specific model this can be really useful if say the snow looks good on one specific model but not so good on another here is how you override that Global blueprint setting going to the material instance of your specific model and here you'll see a world snow group take the override blueprint setting check boox and that will reveal the same settings you see in the blueprint but your changes will only affect that specific material instance like I said that is going to be really handy for adjusting displacement because displacement might not look good on every single model which leads me to my next point this feature also supports nanite tation and displacement if you want this to work in your project you need to do the following following in your Epic Launcher right click on your project click on show in folder and go to the config folder here and open up the default engine.ini file you need to add the following two console variables here in order for displacement to work save that file and you'll be ready to go as of Unreal Engine 5.4 you will also need to enable testation in your master material for displacement to work and make sure that displacement is plugged in correctly in your material if your console variables had been set correctly you should see the displacement working in the provided demo level you'll notice something here if I add some wind to my snow particles it has an effect on the world snow material as I increase the wind strength you'll see that the snow builds up on one side of the model here and this is exactly how I was able to achieve a more directional snow builtup on the old Stave Church shot right here using wind strength and direction affect the world snow material bear in mind this can only be set once by one easy snow blueprint if you have a bunch of easy snow blueprints in your level and all of them are set to different strength and directions you might get unexpected results because the material doesn't really know which one to listen to so just be aware I recommend having one global wind direction and strength across all of your easy snow blueprints if you want to use this effect this effect as always can be overwritten in the easy snow blueprint right here or in the material instance as well if you don't want that wind buildup effect at all and or need multiple wind directions now sometimes with this kind of procedural snow material you might run into this issue right here maybe you have snow somewhere on a Model you don't want it to be and you want to hide it that is where masking comes in handy and I provided two ways for you to fix this the first way has a few caveats but it is by far the easiest way and that is by drag and dropping this provided mask blueprint into your and placing it wherever you want to mask away the world's snow material this also has the ability to adjust the blending properties to make the edge of the Mask softer you can break it up and adjust the breakup tiling but there's a couple of important things to be aware of here first off you can only have one of these in your level at a time unfortunately I'm currently working on finding a better solution for this uh that will allow you to have more than just one but that is the limitation I am currently running into so it's unfortunate but it is still nice to have secondly you can't rotate the Box projection here you'll see if I rotate it the actor rotates but the masking doesn't that's just how box masks work so just be aware it's not broken you're not doing anything wrong now the second way to mask a with a snow is with vertex painting first in the material instance of your model assuming you've created one be sure to have used vertex paint checked if you don't see this you need to have the custom snow masking checked as well next we need to vertex paint where we want to mask away the snow to do so you need to make sure you have the modeling tools plugin enabled by going here search for modeling and enable the following two plugins once you restart on real select the object you want to vertex paint on then you can navigate to the modeling tools tab by going right up here then go to the attributes Tab and select paint vertex colors this can be a little bit heavy sometime depending on how dense in vertices your mesh is by default unless otherwise specified on import all meshes usually have all vertex colors set to White across all channels which is fine all you need to do in order to mask away the snow you don't want is the following uncheck all channels except for the blue and your model should be blue here if you're not seeing blue uh just be sure to material mode is set to LIT vertex color set your paint color to Black and paint away the blue Parts whatever is blue is where there will be snow what is black will mask away the snow when you hit except you should see that your model now no longer has snow wherever you mased it there is one last little feature I want to showcase and that is glimmering I added this feature as a way to get some nice glimmering effect on the surface of the snow when the Sun hits it as you get in real life this can be set in the easy snow blueprint or as always overridden in the material instance the glimmering will only show up when you use a directional light and will only affect the mesh normal that are facing the directional light unfortunately there is no way to mask Effects by whether or not they are shadowed so you'll see here in this example the snow is clearly shadowed and should not be receiving any light and it doesn't but the glimmering still shows up that's just a limitation we have in unreal at the moment but I still wanted to make this effect available to you so when it comes to rendering I want to briefly cover some good practices when rendering with the movie render queue for best results add the anti-aliasing tab in the movie render queue set AA method to none and I recommend a minimum of 16 temporal samples if you don't have enough you may run into this kind of look you'll see a repeating pattern because you just don't have enough samples bumping it up higher to 32 or 64 samples will give you a much smoother effect on the snow temporal samples are all about motion blur quality and when it come to snow motion blur is everything oh uh one last thing in the anti-aliasing tab make sure you have enough warm-up frames because otherwise what's going to happen is the first I don't know 50 or 100 frames of your shot might not have that much snow in them so you need to have enough warm-up frame to get the snow particle to settle down into your shot before it actually starts rendering the frame so just just use this now something I want to be completely transparent about is this kind of thing you might see when you're rendering depending on your shot you might notice this kind of flickering or artifacts showing up dark spots or even flakes disappearing and reappearing this has to do with depth of field when you push depth of field in unreal to its absolute limits like I am in this shot that kind of thing happens you've probably noticed this yourself when you're trying to get a very shallow depth of field look or moving your camera very close to objects this is not an issue with easy snow this is a fundamental limitation in the depth buffers of real time engines this will happen in unreal Unity gdau whatever there's only two ways to avoid this and the first way is not really a fix but rather hiding it and making it less obvious by using a less pronounced dep of field a higher aperture value or moving the close subject a little bit further away from the camera the second solution is to use the path Tracer and enabling the reference depth of field checkbox in your postprocess volume because that way the depth of field becomes fully r traced and physically accurate I have however used every trick in the book to help mitigate this issue as much as possible so thank you so much for watching everyone if you have any suggestions for easy snow let me know down in the comments below I would love to hear from you there's a lot of things I want to fix and improve here so keep an eye out for free updates in the future I'll be sure to post news and updates about all of my tools easy fog easy mapper and easy snow on both Twitter and Instagram again easy snow is 30% off for the next week only so be sure to get it while it's cheap and as always folks happy rendering
Info
Channel: William Faucher
Views: 59,179
Rating: undefined out of 5
Keywords: Unreal Engine 4, Unreal Engine, Cinematics, UE4 4.26, UE5, Realtime, realtime rendering, rendering, CGI, 3D, 3D Artist, UE4, Unreal Engine 5, EasySnow, EasyFog, EasyMapper
Id: YU1auc6l8B4
Channel Id: undefined
Length: 19min 34sec (1174 seconds)
Published: Tue May 21 2024
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.