Fixing Particle Clipping
12:28
2 ай бұрын
Advanced Fresnel Techniques
15:01
3 ай бұрын
Growing Roots with WPO
31:27
6 ай бұрын
Free Course!  and January Sale
1:53
Portfolio Review  - Mateus Ferreira
1:17:57
Variable Rate Shading in Unreal 5
10:54
100th Video Black Friday Sale!
1:09
Animated Material Smearing Fix
6:10
Пікірлер
@nimitverma3460
@nimitverma3460 2 күн бұрын
Hello sir> hello can u send me link of file where blueprint and niagara particles are added preset for easy use directly> i want to use it for videos with alpha channel >added as material to a plane> and want to emit particles only from RGB channel of plane material
@nimitverma3460
@nimitverma3460 3 күн бұрын
Thnakiuu alot
@visualfinesse7445
@visualfinesse7445 4 күн бұрын
I was really hoping you would show us how you did the triple -color gradient. I've been working on this for a while now and can't figure it out.
@tharlevfx
@tharlevfx 3 күн бұрын
@@visualfinesse7445 you basically just do the same thing twice! So gradient between colours a and b, and then again between the output of the first lerp and colour c
@duckonquacks1436
@duckonquacks1436 10 күн бұрын
Is there a way to scale the whole system rather than just the particles?
@tharlevfx
@tharlevfx 10 күн бұрын
@@duckonquacks1436 yup - do the distance calculation in niagara and then use that to scale the spawn value and size of the particles
@domehnic
@domehnic 10 күн бұрын
super helpful stuff! thanks
@baryafe
@baryafe 11 күн бұрын
if i want to do it on an enemy? does it matter how i warp it around the object?
@tharlevfx
@tharlevfx 11 күн бұрын
@@baryafe it depends if how dynamic you want it. Easiest thing would be to have a pose the enemy goes into when rooted and then use a static mesh using this technique.
@baryafe
@baryafe 10 күн бұрын
@@tharlevfxRocks!!!!!!!
@haydenbailey2184
@haydenbailey2184 15 күн бұрын
Awesome Video! But I do have a question. What if you want the particles to reduce in size as the camera gets further away? Also is there a way to reduce spawn rate as the camera gets further away?
@tharlevfx
@tharlevfx 15 күн бұрын
@@haydenbailey2184 same logic - just do a distance check and then scale the particles down at far distance
@Acydos
@Acydos 16 күн бұрын
Nice! Not sure if you talk about in any if your courses, but would be awesome one about custom modules of niagara, is hard to find stuff related
@tharlevfx
@tharlevfx 16 күн бұрын
@@Acydos yeah we make quite a few custom modules
@WilliamFaucher
@WilliamFaucher 17 күн бұрын
So eloquently explained, thanks so much!
@tiagoandrade605
@tiagoandrade605 18 күн бұрын
good stuff! this is a 4year old video.. are there simpler ways of achieving this material blending in UE5?
@tharlevfx
@tharlevfx 18 күн бұрын
@@tiagoandrade605 not really I’m afraid. There’s not been much change in that part of the engine since then
@tiagoandrade605
@tiagoandrade605 18 күн бұрын
​@@tharlevfx thanks for the feedback! I have been checking other videos and its interesting that this topic is not really being covered on most of the yt tutorials regarding landscape material setup (even the most recent ones).. very intriguing tbh as this is a key element trying to achieve more realistic landscapes with "cheap" configurations. I cant stand seeing textures fading out as part of this transition to a second texture hehe! thx again :)
@felixstief7830
@felixstief7830 20 күн бұрын
dosent work on my foliage for some reason, it takes the whole foliage as one obj
@tharlevfx
@tharlevfx 20 күн бұрын
@@felixstief7830 foliage is an instanced mesh so it will do as you say. If you check out my video on the vertex interpolator you can get the instant position with that and then do your gradient calculation
@Hudson1615
@Hudson1615 25 күн бұрын
how long the course will be?
@tharlevfx
@tharlevfx 25 күн бұрын
@@Hudson1615 all 4 parts of the materials course and 3 parts of niagara come to about 55 hours I believe
@Hudson1615
@Hudson1615 25 күн бұрын
@@tharlevfx I just bought Part 1 and I'm loving it!!! For an aspiring environment artist, is Part 1 enough? P.S. You rock man.
@jean.alexandru.scenes
@jean.alexandru.scenes 29 күн бұрын
Bought te tool!Good job bun man plz make it beginer friendly you are speaking like you are high..
@nindyatisa2759
@nindyatisa2759 Ай бұрын
how about optimization WPO?
@tharlevfx
@tharlevfx 24 күн бұрын
what do you mean by optimisation WPO? world position offset is by its nature quite an efficient way of animating compared to skeletal meshes so it's unlikely that any WPO animation would be a bottleneck that needs optimisation.
@kmtsvetanov
@kmtsvetanov Ай бұрын
Make sure Emiter "Local Space" is off And the --- Shape "Box Size" is two times the size of --- Keep to Box "BoxSize"
@Not_LiveGameStorm
@Not_LiveGameStorm Ай бұрын
Even after 4 years this still works! Thx man for the help!
@mohanpugaz
@mohanpugaz Ай бұрын
why dont we have a simple ramp node that takes greyscale and outputs colored ramp, isnt this very basic thing that is missing?
@sleuthman864
@sleuthman864 Ай бұрын
Is there a way to use more than R G B A in the painting. I am using RGB for tint colour and Alpha for the 2nd layer blending, I've run out of channels, any way to get more for things like dirt etc?
@tharlevfx
@tharlevfx Ай бұрын
So yes and no. You can’t add more channels of data but you can use the same channel for more than one thing. You have to do a bit more math in your shader but you can divide a single data channel down to be 0-0.5 dirt and 0.5-1 wetness for example. Generally I wouldn’t use full rgb for a tint. Just use a single channel and two fixed colours. So 0 would tint red, 0.5 no tint and 1 tint blue for example. This gives you less control but does free up two channels for other uses. Hope that makes sense!
@DanRickmanMedia
@DanRickmanMedia Ай бұрын
Absolutely OP tutorial!
@gendalfgray7889
@gendalfgray7889 Ай бұрын
Best engone in the universe Don't have simple color ramp
@tharlevfx
@tharlevfx 24 күн бұрын
turns out it does - you can create a curve asset and use that instead of the imported texture gradient and then keep all the functionality in the engine and dynamic. also i think you're thinking about this as a rendering engine, and not a game engine - colour ramps like this are powerful but they're an additional cost compared to static colours, so the way the engine would handle a "simple colour ramp" such as you might see in blender or maya, isnt going to be the same as those pieces of software because the final output is designed for realtime rendering.
@gendalfgray7889
@gendalfgray7889 24 күн бұрын
@@tharlevfx Isn't engine supposed to bake procedural textures automatically? I will try making color ramp.
@tharlevfx
@tharlevfx 24 күн бұрын
@@gendalfgray7889 that’s a very new feature - baking textures in engine. I don’t think it’s even out yet.
@sat.chid.ananda
@sat.chid.ananda Ай бұрын
I wish I could see you in real life so I could kiss you, you mad, mad man
@ryanmcmahon6043
@ryanmcmahon6043 Ай бұрын
Thanks! Idk why Unreal decided to stop flagging the Niagara usage by default for me.
@BucketKingu
@BucketKingu Ай бұрын
Do you think we could get a tutorial like this but specifically with eroding/dissolving? It'd be a huge help.
@tharlevfx
@tharlevfx Ай бұрын
I cover a niagara dissolve as the last example of my intro to niagara course
@swiftyrrr
@swiftyrrr Ай бұрын
Hello Im trying to make a material that fully disapears when you get close and enlarges when you walk away and then fully disapears after a certain distance however im having troubles tweaking this to work my material is also translucent and I would like it to be a sprite too if you could help that would be great I can pay if needed
@tharlevfx
@tharlevfx Ай бұрын
Have you taken my materials courses on Gumroad or udemy? I cover all that and more in detail.
@darkhummy
@darkhummy Ай бұрын
Thanks, that looping bit was something I got stuck on for triggering another emitter on collision. So unintuitive.
@kickheavy8982
@kickheavy8982 Ай бұрын
Do you have a video showing how to spawn particles on an animated texture without using the g buffer? I can't find a simple, straight forward explanation on how to do it.
@tharlevfx
@tharlevfx Ай бұрын
Sadly it’s not a simple or straightforward thing to do.
@kickheavy8982
@kickheavy8982 Ай бұрын
@@tharlevfx That's unfortunate. I'm new to Unreal and I can't believe how tedious and complicated these setups are. In Cinema 4D, I can set this up easily with a few clicks. Unreal requires far more steps and a mathematical approach. I'm hoping 5.4's motion design tools will expand to make tasks like this more intuitive.
@tharlevfx
@tharlevfx Ай бұрын
@@kickheavy8982 basically you would need to recreate the animated texture logic in the niagara system and then use the particle spawn position as the uvs. It’s doable but not necessarily simple.
@kickheavy8982
@kickheavy8982 Ай бұрын
​@@tharlevfx Yeah trying to get the logic in the scratch pad to match my animated material is exactly where my brain starts to melt lol. I'm doing a dissolve material that uses a cheap contrast node to keep the edges soft. It's the simplest material setup my brain can handle but the scratch pad doesn't have a cheap contrast node to match it so it falls apart. I'm gonna try to find a workaround. Thanks for the reply man.
@tharlevfx
@tharlevfx Ай бұрын
@@kickheavy8982 cheap contrast is just a function so you can open it to see the math iirc
@grzesiekb9562
@grzesiekb9562 Ай бұрын
Thank you :)
@artvfx1117
@artvfx1117 Ай бұрын
Interesting stuff, and my feedback is nice beard
@tomtawadros
@tomtawadros Ай бұрын
Audio's a bit low on this one but otherwise another good video. One thing I want to point out/correct is about using curves to control the distribution of random numbers. Around 10:15 you start showing how to do this, and you explain that the first example of a line gives the same result as no curve, meaning a uniform distribution. That's true and makes sense. The next example uses the template cubic curve that we use all the time in VFX with 0 on either end and 1 in the middle. You say that with this curve, you're much more likely to get values in the middle (where the curve peaks) as opposed to the ends. However, by this logic you would expect the line in the first example to produce many more values at the high end of the curve than at the low end. In the third example you then set the curve to 0 for most of the range, and explain that this will produce an output of 0 most of the time. This is of course true, but it contradicts the logic of the second example. The curve that's used to define the distribution here is not the actual distribution of the results. It makes intuitive sense in the first and last examples as you explain, but I think the second one causes confusion because it looks like a bell curve and we (myself included) initially make the assumption that it actually represents the distribution. In reality the distribution of values for the second curve looks like a U, with many values around 0 and equally as many around 1. The distribution is bimodal. If you only want values to cluster around 1, then the ends of the curve need to drop sharply. If you couldn't tell I've spent a good bit of time digging into this lol. I've wanted to learn how to redistribute random numbers in Niagara for a while now, and this video gave me some great insight and motivation to dig deeper. I haven't yet figured out how to visualize the actual distribution give an IO curve in Niagara, but I'll post here when I figure that out.
@tharlevfx
@tharlevfx Ай бұрын
Yeah, you’re right - a normal distribution of results would be a sort of flattened S shape curve wouldn’t it?
@tomtawadros
@tomtawadros Ай бұрын
@@tharlevfx Yeah something like that. Interestingly I'm finding that using sufficiently strong weighted tangents produces incorrect values when the index is high (near 1). The output values start dropping sharply to 0, which messes with the distribution of course.
@ameliamorrison7265
@ameliamorrison7265 Ай бұрын
THANK YOU! You are a lifesaver for this video!
@ABentPaperclip
@ABentPaperclip 2 ай бұрын
would this work with a landscape RVT? ie) if you were using an RVT to create a mask for a burning forest, could you sample the mask to spawn smoke and embers?
@tharlevfx
@tharlevfx 2 ай бұрын
Yes. You can sample an rvt just the same as you can sample any texture. I’ve used sampling an rvt heightmap for all sorts of cool fx
@RadiantCHN
@RadiantCHN 2 ай бұрын
While searching for agx tonemap for unreal, I came across your "gt tonemap" video. While reviewing your other videos, I found a treasure that I have been looking for for the last 3 months. In the games I reviewed (Cod:waw and Fallout 4), when rain particles entered the interior, they did not become transparent, they collapsed! I knew that this was done with Worldposition and that it was simple, but I could not find a solution. Thank you very much. :)
@ImaginaryCreation-jm4xf
@ImaginaryCreation-jm4xf 2 ай бұрын
9:08
@AllesLatte
@AllesLatte 2 ай бұрын
hey mate, lighting artist here, first off i want to say thank you, i really like your tutorials, love the pacing and deep knowledge. dont subscribe to channels too often, but yours definitely "deserves" it. i was wondering if you could answer a question/problem i couldnt find a solution for. as a lighting artist, i often quickly switch between cameras in my scene. what im looking for, is a way to create a shortcut to jump to the next placed camera in the scene, or just in general create a shortcut to switch to any given camera. i know about bookmarks, but they dont apply to a selected camera, so i dont see the scene with possible lens settings, post processing applied to the camera actor etc. i also know how to lets say create a blueprint to let me change cameras in-game, but i want to do so in the editor. there doesnt seem to be an appropriate keyboard shortcut in the editor settings either. im pretty surprised there doesnt seem to be an obvious solution to this, any help/insight on this would be highly appreciated.
@tharlevfx
@tharlevfx 2 ай бұрын
So bookmarks or blueprints is what I was going to suggest - beyond that you’re looking at custom engine changes probably I’m afraid. You might be able to do something with editor utility widgets but I don’t really have much experience with that either.
@AllesLatte
@AllesLatte Ай бұрын
@@tharlevfx thanks for the quick reply, not the answer i was hoping for but the one i expected... kind of silly they dont have this feature. maybe im just gonna create a sequence with all the different camera actors added to switch between the views, but it seems like an overcomplicated solution for such a simple feature. well this is game dev in a nutshell i guess ;) keep those awesome tutorials coming!
@julche12
@julche12 2 ай бұрын
Your course seems interesting. Is there a way to make a material that interacts with light? I would like it to measure the illuminance of the surface (in lux) and when it exceeds a certain threshold (e.g. 0.4 lx), it changes color. Is something like this possible and can I learn something like this in your course?
@tharlevfx
@tharlevfx 2 ай бұрын
So short answer is no unfortunately. Basically the material code is all processed before lighting can happen, so you can’t use lighting information to drive parameters in the material. You can take the light data into the material directly via blueprints but it might not be exactly what you need
@julche12
@julche12 2 ай бұрын
@@tharlevfx Thank you for your answer. Too bad that doesn't work. But if the main problem here is only the interaction with the material i can maybe find a workaround with displaying something in the user interface. For me the more important part is measuring the illuminace on the surface.
@tharlevfx
@tharlevfx 2 ай бұрын
@@julche12 you could make a light probe blueprint that traces back to the directional light? But reading the lighting values on a surface is just something that only happens late in the rendering pipeline so it’s not efficient to expose for real-time. Custom engine code could do it for non realtime applications but it would require engine changes
@julche12
@julche12 Ай бұрын
@@tharlevfx Thanks man, i really appreciate your efforts and help. im interested in using unreal engine to simulate, test and model some lighting scenarios, like testing low beam ies files in traffic scenarios. For these scenarios its essential that the illuminace that reaches the front windows of oncoming cars is under a certain threshold. So i dont really need it to be in realtime (at the moment, maybe later...) And because somewhere in the engine these values have to be i hoped there is a relative easy way to read them, but if this is something that cant be done easily and needs engine changes maybe i cant do it by myself and need to reach out to someone who is way more familiar with unreal engine than me.
@houseofvultures582
@houseofvultures582 2 ай бұрын
bro whats with the volume of your video.
@GSB343
@GSB343 2 ай бұрын
Amazing dev diary, I'm seen this process now and I can undertand things that I cant one month ago, because I'm doing your classes, thanks for sharing this process
@TOMAvatars
@TOMAvatars 2 ай бұрын
Hi! Thank you very much for your great content. It always helps me. But I don't understand something here: when I use negative values multiplied by the Vertex Normal WS it doesn't shrink, it grows.
@theman7050
@theman7050 10 сағат бұрын
Inside out.
@N3.1Kryuk
@N3.1Kryuk 2 ай бұрын
Great stuff, Tom! Thank you for sharing! I have a question regarding the waterfall. How did you get the base mesh for it? Thank you.
@tharlevfx
@tharlevfx 2 ай бұрын
Great question - Will built the base of the rocks in unreal then I exported the whole thing to Maya. Then I used a combination of quad draw and transfer attributes to project a water mesh onto the rocks
@RodolfoSilva_Artist
@RodolfoSilva_Artist 2 ай бұрын
Been loving these breakdowns Thomas! keep them coming! 💪
@zachbollon7247
@zachbollon7247 2 ай бұрын
Any way of lerping more than 3 colors in a gradient without using a gradient map? E.g. 10, 20 or 30 gradient color points?
@tharlevfx
@tharlevfx 2 ай бұрын
Not without some crazy complex math. If you want that level of control you can use an engine curve asset and import it into the material
@zachbollon7247
@zachbollon7247 2 ай бұрын
Is it possible to expose the color curve asset key/gradient stop values in parameters to set the values dynamically through blueprints?​@tharlevfx
@AllesLatte
@AllesLatte 2 ай бұрын
super nice! thanks for sharing the knowledge. im wondering if that technique could be applied to a spline mesh, so you could even generate the mesh in-engine and maybe even modify on runtime. definitely gonna check that out!
@tharlevfx
@tharlevfx 2 ай бұрын
Yup. All those things are possible with this technique
@WhiskeyDogNonsense
@WhiskeyDogNonsense 2 ай бұрын
Thank
@kkaayynniinnee
@kkaayynniinnee 2 ай бұрын
Extremely helpful as always, thank you!
@mmassari
@mmassari 2 ай бұрын
Great tutorial! Helped me a lot! Tks
@Clazzid
@Clazzid 2 ай бұрын
You can sort of get it to work with instances, using a VertexInterpolator after the Object position you now get the position of the instance, but no idea how to get the scale or bounds
@shannenmr
@shannenmr 2 ай бұрын
Apparently UE5.4 has expanded Tier 2 VSR based on the Gears Tactics implementation but there is basically nothing online talking about it outside of 2 lines in the Change log. (Also software VSR r.VRS.EnableSoftware)
@Cazaq
@Cazaq 4 күн бұрын
Software VRS works on hardware without Tier2 VRS support
@gmaximuz
@gmaximuz 2 ай бұрын
This is definitely getting more and more interesting.
@werti4894
@werti4894 2 ай бұрын
legend
@S-I-T
@S-I-T 2 ай бұрын
This may not be the place to ask this question but here goes. Embergen renders out really nice depth maps for flipbook renders. Is there a way of using these to essentially "Push and Pull" pixels in screen depth buffer in UE5? Hope the question makes sense. I'm very new to UE5 (propietry engines and whatnot in the past) and your Udemy videos have been a godsend. thank you :)
@tharlevfx
@tharlevfx 2 ай бұрын
What would be the result you’re hoping to get? You could certainly use the depth texture with depth fade for a nicer intersection - check my latest video from yesterday