Rain Ripples Shader - UE4 Materials 101 - Episode 16

Поделиться
HTML-код
  • Опубликовано: 21 окт 2024

Комментарии • 252

  • @alejandrovillegas5110
    @alejandrovillegas5110 2 года назад +88

    If anyone is getting distorted ripples after replacing de textsample just open the texture details and change the compression texture to hdr ;) love u Ben! best teacher ever

    • @lawebley
      @lawebley 2 года назад +10

      Also, don't forget to set the texture itself to 'Linear Color' in the sampler type.

    • @martinroland8534
      @martinroland8534 2 года назад +1

      Just seen your comment and sorted problem out immediately. Thanks.

    • @topraktunca1829
      @topraktunca1829 2 года назад +2

      Thanks so much if I couldn't saw this comment I think I could waste a lot of time on it. Thank you so much.

    • @Bettercallsouls
      @Bettercallsouls 2 года назад +6

      I love you guys, the unreal engine community is literally something unique!!!!

    • @lululul1016
      @lululul1016 Год назад

      very thanks!!!!

  • @김두하-v7w
    @김두하-v7w 2 года назад +24

    To whom might concern the pixely look problem of the ripple texture : hit the reimport button on detail panel and then change the compression settings from default to Userinterface2D(RGBA). I solved the problem with this method!
    I really enjoy your videos, Ben! I'm looking forward the tutorials for UE5. It's kind of a big deal because there are so many stunning improvements!

  • @paracelsus_rose6934
    @paracelsus_rose6934 4 года назад +9

    How do we all buy you a few beers/burgers. You need to be given back something for all of this. Thank you so much, I couldnt grasp materials in any way then found this.

  • @KostasOreopoulos
    @KostasOreopoulos 3 года назад +9

    Thank you is not enough. This whole series made me look at materials and shaders with a new eye.

  • @doughtom
    @doughtom 4 года назад +13

    I have been watching some tutorials on how to make ripples, rain and puddle, however not many of those encouraged me to try. I feel really lucky that I found you and now I have my ripples! Thank you Ben, you are such a good teacher :)

  • @laurenzt3811
    @laurenzt3811 Год назад +9

    If anyone else is just rebuilding the nodes without listening to everything and wondering why the ripples are pixelated and the tips with the compression don't work. the node "SINE" in the ripple function has a value change to 6.283185 in it !

    • @reddd35
      @reddd35 7 месяцев назад

      thank you!

  • @unrealdevop
    @unrealdevop 3 года назад +3

    Great video, that's pretty epic. 16:28 He's like 'Now we could just leave it here....but nah were gonna take this to another level' XD

  • @turalmemmedov3648
    @turalmemmedov3648 4 года назад +3

    Another amazing tutorial. Thank you, after experimenting last tutorial at home, everything is crystal clear now. Never could imagine that, one day I will find tutorials this simple, this useful and free. You are awesome ))

  • @罗陆
    @罗陆 10 месяцев назад +1

    Ben Clowar My forever Shader GOD!🥰

  • @NorthernPixels1
    @NorthernPixels1 Год назад +5

    For anyone getting pixelated ripples in UE5, this is due to the new Supersampling AA, not so much texture compression. You'll notice that when you move the camera, the ripples clean up. It *shouldn't* affect your final output, depending on what kind of colours/contrast/etc you're using. If it turns out noisy, it will, if it's cleaner, it shouldn't really be too big of a problem. Annoying for debugging and whatnot, but. I was looking for some different techniques to create ripples, and stumbled on a bunch of comments here. I did run into a similar problem.

    • @Nugzilla
      @Nugzilla Год назад +3

      I had the same issue. Changing the Anti-Aliasing Method to Temporal Anti-Aliasing (TAA), in the Render settings-Default settings, seemed to do the trick.

    • @RusticRonnie
      @RusticRonnie 3 месяца назад +1

      Set MIp gen to Unfiltered and Compression settings to HDP High Precision (RGBA32F) [the highest settings] to make it stop doing this

  • @3diec811
    @3diec811 10 месяцев назад +1

    Ben, god of shaders this is what is was looking for !! thankyou

  • @BMWCoupe79
    @BMWCoupe79 3 года назад +1

    Just amazing Ben! Thank you so much for the rain shader tutorials. Nice and clear explanations! Im already excited to follow more of your other shader tutorials.

  • @Elmoman11able
    @Elmoman11able 3 года назад +3

    Ben! your tutorials are amazing! These are exactly what I needed

    • @andreabigatti3408
      @andreabigatti3408 2 года назад

      Mi mio
      Kit adesivi kk II i liiuunk
      Kkukuiikiiiu ik II immk
      Imlkkijuu mkmikjumiiii a

  • @DaMaximumPerez
    @DaMaximumPerez 3 года назад

    I have been following this series since first episode and I have to say it is the best series I have watched so far. I am learning a lot, and I want to try to do a lot of diferent things with all I have learned! Thank you so much, you do an amazing job!

  • @ridygames376
    @ridygames376 2 года назад +1

    the Rain Ripples file is imported all in pixels and the Ripples themselves turn out to be pixelated (and what to do?

  • @TheJakeblake
    @TheJakeblake Год назад +3

    For anyone not knownig how to spawn the "Input In (Vector 2)" Node here is the solution you click on the FunctionInput node that appears when you type Input, and then you click and on the side panel "Details" panel in the Input Type you choose the "Function Input Vector 2"

    • @b0rbLmao
      @b0rbLmao 8 месяцев назад

      thank you

  • @chlbrn
    @chlbrn 4 года назад +1

    Man, you are brilliant. This is way better than using ddx and ddy to calculate the ripple normal and it look much better. The method with ddx and ddy has some issues for instance pixelation at distance and wrong normal directions.

  • @eftorq
    @eftorq 4 года назад +1

    This tutorial is so valuable! Perfectly explained and all the used assets linked. Thank you!

  • @shakaama
    @shakaama 2 года назад

    After I just told my friend, oh this guy is so basic, you go and pull a stunt like this. I was just getting comfortable, and feeling my oats. LOL
    Love you, big guy.

  • @elmanhamdi
    @elmanhamdi 3 года назад +2

    one word: incredible

  • @kjoujkyll8548
    @kjoujkyll8548 3 года назад +2

    Thanks dude, you just helped an entire class of game artist for an mid-term exam!

    • @BenCloward
      @BenCloward  3 года назад

      That’s awesome! Thanks for letting me know.

  • @bloedkop5094
    @bloedkop5094 Год назад

    Hi great tutorial thank you so much. At 17:40, how do you "turn those nodes into a function" Do you just copy those nodes over into a blank material function or is there a key to do that? TY :-)

  • @lukepawelek799
    @lukepawelek799 4 года назад +2

    yes man. my new favourite channel!

  •  4 года назад +1

    Hello, could you tell me how did you get the normal? I generated normals in different ways and the channels RGB doesn´t match with yours. Which software did you use? Thank you for your video but would be perfect if you share the textures to follow the steps much easier or at least say how did you get there.

    • @BenCloward
      @BenCloward  4 года назад +1

      Here are some specific step to follow to generate the ripple normal data in Substance Designer:
      1. Open Substance Designer and create a new empty graph.
      2. Add a shape node to the graph and set the Pattern parameter to Cone.
      3. Add a Height to Normal node to the graph
      4. Connect the output of the Shape node to the input of the the Height to Normal node.
      5. On the Height to Normal node, set the Surface Size to 80 and set the Height Depth to 100. Set the Normal Format to DirectX
      6. Add a RGBA Split node to your graph and connect the output of the Height To Normal to the input of the RGBA Split.
      7. Add a RGBA Merge node to the graph.
      8. Connect the R output of the Split to the G input of the Merge
      9. Connect the G output of the Split to the B input of the Merge
      10. Connect the Output of the original Shape node to the R input of the Merge
      The output of the RGBA Merge node will now give you the texture that I show at 9:17 in the video. Save it out of Substance Designer and import it into Unreal.
      This will give you a single ripple. To create multiple ripples, just copy this object, scale it, and paste it into the scene multiple times.
      I got this technique from Sebastien Legarde's blog here: seblagarde.wordpress.com/2013/01/03/water-drop-2b-dynamic-rain-and-its-effects/
      He has shared the ripple texture in the middle of that page, so you could grab it from there. Just make sure to put the right data in the right channels.

    •  4 года назад +1

      @@BenCloward Thank u soooo much, it worked for me. That deserves a subscription :)

  • @cablekingtv6557
    @cablekingtv6557 3 года назад

    Awesome. I couldn’t download the textures and made me own. The rain drops are a little digital looking but I like the look for now. Dude you are the man, I am blowing through these videos. Rain Drips and Drops next 😁

  • @The0riginalDavid
    @The0riginalDavid 11 месяцев назад

    Don't know if anyone can help. I'vr created this in UE5 but my Weather Ripples function always seems to be flickering. Any ideas? Or is there an updated version of this that I'm not using?

  • @GuidoTondo
    @GuidoTondo 3 года назад +1

    I think that I love you. Thanks for this wonderful channel.

  • @markusbronst7942
    @markusbronst7942 4 года назад +1

    I was orginally looking for a tutorial for topic rain, but got carried away when I came across your puddle one. From that one I got to this one. Very impressed with how they look in your course. I do have an issue that my ripples dont look like ripples. Instead they look something like square boxes. I did download your rain_drop and rain_ripples. For both the same is happening. UE4 4.25.3. Ive done it till before you start with creating functions.
    I noticed that when I removed PI node, the ripple effect improved. But little squares move as well beside the rings.

    • @BenCloward
      @BenCloward  4 года назад +4

      The first thing to check is the format of the textures. Be sure that Compression Settings is set to UserInterface RGBA and that sRGB is not checked for both textures. Did that fix the issue?

    • @markusbronst7942
      @markusbronst7942 4 года назад

      @@BenCloward thanks! I’ll check tomorrow.

    • @markusbronst7942
      @markusbronst7942 4 года назад +2

      @@BenCloward Great! That improved it by a lot. I got an error when I made the adjustment to the rain_ripples texture. Changing from color to linear color.
      I removed PI, which somebody posted in here previousely as well. I reduced the multiply of 20 down to 9. The clamp is set to max 1.
      Thanks a million for your fast reply! Amazing how fast you could understand and pinpoint it!

    • @JamesPero
      @JamesPero 2 года назад

      @@BenCloward Could this comment be pinned for others who are having the same issue?

  • @kirashexenwerkstatt8289
    @kirashexenwerkstatt8289 Год назад +1

    Thx you for that amazing video!

  • @alexcipriano1996
    @alexcipriano1996 4 года назад +2

    Great tutorials so far! I was wondering if there was any way to slow down the speed that the ripples moved out, like slow down the movement of the ripples so they didn't spread as fast

    • @BenCloward
      @BenCloward  4 года назад +2

      To control the speed of the ripples, multiply time by a constant float of less than 1 before passing it into the frac node. Thanks for asking!

    • @uncimark
      @uncimark 3 года назад

      @@BenCloward Amazing tutorial, I have a similar question to the one above. How can I set the ripples to occur far less frequently. Like very light rain or perhaps a fish occasionally breaking the surface of the water. I figure it can be done by manipulating the Alpha of the rain_ripples texture but I can't make it work for me, any pointers much appreciated.

  • @princejohn8611
    @princejohn8611 2 года назад

    In material editor it's done but when I drop this material to plane it's just a black color. Why?

  • @MIKELENZTIPS
    @MIKELENZTIPS 3 года назад

    Really great tutorial - thank you - I am trying to create a dynamic concentric rings material - which I tried evolving from this tutorial - but the rings are not equidistant - I assume because of the sine calculation? How can I get it so that I can simply change a scaller to add more rings - The rings width can change on teh scaler and be defined by the bounds - just not distort - any pointers appreciated - M

  • @edoakutagawa9099
    @edoakutagawa9099 4 года назад

    Hey, Ben, thank you so much again for your tutorial! I have a question about the second material function. For the weight, why did you subtract four different values instead of multiplying them?

  • @InvasiveAlienPlants
    @InvasiveAlienPlants 3 года назад +1

    Thank you so much! what a perfect tutorial

  • @mindped
    @mindped 2 месяца назад

    curious... is this better for performance then a large scale texture atlas of animated ripples? Because this method in UE5 i lose between 5-15 fps.

    • @BenCloward
      @BenCloward  2 месяца назад +1

      You can control the cost by reducing the number of instances of the ripple material function. In the past, I've used 4 of them for high quality settings and just two or one for low quality settings. The problem with using a large atlas is that it takes up a lot of texture memory and has obvious tiling artifacts.

    • @mindped
      @mindped 2 месяца назад

      @BenCloward not really worried about memory if it saves on performance... ue5 performance is tough to get good with lumen.

  • @emrearslan9572
    @emrearslan9572 Год назад

    I cant find the Input Weight Scalar Node or the Input UVs Vector 2 Node. Did the names change in UE5?

    • @TheJakeblake
      @TheJakeblake Год назад

      I cant find them either

    • @TheJakeblake
      @TheJakeblake Год назад +1

      Found it!, you click on the FunctionInput node that appears when you type Input, and then you click and on the side panel "Details" panel in the Input Type you choose the "Function Input Vector 2"

    • @emrearslan9572
      @emrearslan9572 Год назад

      @@TheJakeblake Yeah, I know bro. I totally forgot to mention that I found it too haha, thanks for the answer. Maybe other people with the same problem can profit from your comment.

  • @TorQueMoD
    @TorQueMoD 4 года назад +2

    Holy crap this is awesome! I could never figure out how to do puddle ripples so I actually made a flipbook animation in 3ds max that I play on top of a mesh that I then paint onto my puddles using the foliage tool. This is much better though :P Liked and Subed.

  • @emirunalan1287
    @emirunalan1287 4 года назад +3

    The textures come in really low resolution :( is there a problem?

    • @BenCloward
      @BenCloward  4 года назад

      I've seen that happen sometimes. I'm not sure why it does that. The engine is getting confused about which mip level to load in. You could fix it by adjusting the texture setting so the texture isn't generating mip maps - but that's not the best solution. I bet there's a better way to fix it.

    • @Aguiar82
      @Aguiar82 4 года назад +10

      In the compression settings of the texture change to VectorDisplacementmap (RGBA8)

    • @TaylorReyland
      @TaylorReyland 4 года назад

      @@Aguiar82 nice timing lol. thank you!!

    • @TaylorReyland
      @TaylorReyland 4 года назад

      @@Aguiar82 i actually wanted to say thankyou again. this helped so much

    • @_Prometheus_Dev
      @_Prometheus_Dev 4 года назад

      @@Aguiar82 Thank you so much man

  • @TheDesknight
    @TheDesknight Год назад +1

    Back to it 2 years later, i noticed the texture download still work , but how did you make the last one ? , i fail to have the pattern randomised without overlap in SD and doing it by hand in photoshop would really be time consuming.

    • @SpasmAtaK
      @SpasmAtaK Год назад

      Hand place cone primitives within a square space in your DCC (Maya, Blender...) Then bake their normals onto a plane.

    • @TheDesknight
      @TheDesknight Год назад +1

      @@SpasmAtaK So basic yet functional i skipped over that possibility. i'm kinda disconnected from that 8 months later (i did complete a functional rain shader since) . But, i'm pretty sure that would work, thank you kind stranger.

  • @vitaliivanov3036
    @vitaliivanov3036 4 года назад +2

    Thanks for the great tutorial! A little hard to follow to recreate the functions but I managed. Also my (your) texture looks lower quality, it's from the compression, what compression should I chose to make it look like yours?

    • @BenCloward
      @BenCloward  4 года назад +8

      The rain_ripples texture should be using UserInterface2D(RGBA) - which means that it's uncompressed. You can use an uncompressed texture because it's a small one (256x256) and because it's going to be shared across a lot of different assets.

    • @JohnDowson100
      @JohnDowson100 3 года назад +1

      Hi @@BenCloward Fantastic tutorial! Compression Settings is a very interesting topic :) Do you discuss it more in depth in any other video by chance? I had the same problem then Vitali and I had no idea this was the solution until I read this comment.

    • @BenCloward
      @BenCloward  3 года назад +1

      @@JohnDowson100 I go over texture compression settings in this video: ruclips.net/video/h95X255NhOo/видео.html

    • @AndrewByrnes1
      @AndrewByrnes1 3 года назад

      @@BenCloward thank you so much for your reply ben you're a great teacher. if you ever release any more courses can't wait

    • @mcc2795
      @mcc2795 3 года назад

      @@BenCloward hi sorry i don't know what is the computefornormal material functions in the weather ripples material function is & i don't have it so please explain to me how to have this function thank you in advance!

  • @seansopata5121
    @seansopata5121 4 года назад

    Not sure what version of UE4 you're using, and I recently uninstalled my other versions. But I've noticed that your shader instruction counts differ from mine. Same nodes. Same values. Any ideas why? I haven't found any info out there on what could cause it.

    • @seansopata5121
      @seansopata5121 4 года назад

      Version: 4.25.3-13942748+++UE4+Release-4.25

    • @BenCloward
      @BenCloward  4 года назад

      I'm using that version now but I think I was using a slightly earlier version when I made this video. I wouldn't worry too much about the instruction count differences. Epic is doing that under the hood and it's not something you have control over.

  • @TheDarkstage
    @TheDarkstage 4 года назад +1

    That is really helpful and informative sir.

  • @marchermitte
    @marchermitte 4 года назад

    Great, great and clear tutorial. Thank you. I'm wondering, what if I want to simulate say, water drops falling from a cave ceiling and I'd like the drops to hold for a while before they fall again instead of falling continuously like they do here. How would you do that?

  • @fever2975
    @fever2975 3 года назад

    Amazing tutorial! For the last material function, why use appendMany node? Single float subtract vector4 ,the result should still be vector4 . Am I missing something?

  • @miguelbguaita
    @miguelbguaita Год назад

    Is it me or the Z component of the output normal will always be 1? Because the Z value obtained from the Weather_ripple is always 1 and the following function is lerping between a = 1 and b = 1 so it does not matter the value of the alpha... 🤔🤔🤔

  • @LoopSkaify
    @LoopSkaify 4 года назад +1

    Thank you very much, that helped a lot.

  • @henrettalee2781
    @henrettalee2781 6 месяцев назад

    i'm sorry ,i'm really confused about the sine part ,how does the sine work when 4:45 in the video ,,can someone explain a little please ,thanks!!!

    • @Saul_Goodman-
      @Saul_Goodman- 3 месяца назад

      We are at the stage where you can see your white circle propagating from the center of the surface outward. Your clamp allows you to adjust the number of circles that propagate. If you set the minimum to 0 and the maximum to 3, you will have three waves. If you set the minimum to 0 and the maximum to 5, you will have five waves. You can even test with 20; it seems like there really are 20 :)
      When we do all this, the period of the sine is 1 (in rad), in that case I think that you can use the clamp to adjust the number of waves. But in most software, the period is 2pi (6.2835 in the video), since sin(2pi) is equal to 0, you can also put the period to 0, youll have the same result. The fact that we see waves is because, over time, the time node will transform into 1 and then directly into 0 because it goes [0,1,0,-1,0], the only time we see white is at 1 because we can't see negative white (-1), it remains black. And combining it with our texture that goes from the center outward helps us do that. You can add another sine node right after your first sine and see what it does. Concretely, the period of your sine function changes the frequency of the function's oscillations, which directly affects the distance between the circular waves in your material. Daaamn its kindahard to explain but i hope that youll understand just a bit more
      Actually, Ben explains it more in detail in a future serie of his channel : ruclips.net/video/IFyZNSyjyFA/видео.html

  • @crzymlk
    @crzymlk 3 года назад +1

    Nice Tutorial but the textures can't be downloaded anymore right? or am I missing something?

    • @BenCloward
      @BenCloward  3 года назад

      The textures are available for download. Just right click on the link in the description and select save target as. If you get a warning about security, tell it to do it anyway.

  • @joefelixcg
    @joefelixcg 3 года назад +1

    Thanks for the great tutorials sir, i'm stuck over how you generated the rain ripple tiled pattern at 13:50, i tried some things on substance but i cant seem to get a not-overlapping tiled texture with the cone normals and don't have an idea on how to get it with photoshop but don't want to use the downloaded texture either. Help would be awesome! Thank you in advance.

    • @KRGraphicsCG
      @KRGraphicsCG 2 года назад

      I had a similar issue with the raindrop texture for the raindrops, and all I did was use a bunch of transform nodes and blended the textures together

    • @KRGraphicsCG
      @KRGraphicsCG 2 года назад

      Also if you have Substance Painter, you can paint them very quickly by importing the image as a texture and setting up your export to pack the texture

  • @kthm3d866
    @kthm3d866 3 года назад

    I follow everything but get different result. The ripples are square instead of circle. I don't know what is wrong. Every node and value are set the same as in the tutorial. Anyone have any idea?

  • @froggyworld
    @froggyworld 3 года назад

    Youre the best teacher out there!

    • @BenCloward
      @BenCloward  3 года назад

      That's very kind of you, thanks!

  • @Ruumablood
    @Ruumablood 3 года назад +2

    Not sure what I did wrong... it all looks great with the first material then soon as i switched it to the cone... I get a very blocky animation vs a smooth circles like i had before... Ill go over it again once i got time but if you think what would caused that, be sweet. At 9:00 in the video when i switch to that texture, the ripples look like blocks still round rings but in blocks refollowed exactly idk what to do with it.

    • @BenCloward
      @BenCloward  3 года назад

      It may be the texture settings. What type of compression are you using on the texture? I set mine to be uncompressed.

    • @Ruumablood
      @Ruumablood 3 года назад

      Okay ill check and see what its at. Thank you! Hey by chance you make a flowing lava material? Or is it same as water kinda.

    • @BenCloward
      @BenCloward  3 года назад +1

      @@Ruumablood I covered flowing lava a little bit in my GDC talk: ruclips.net/video/IjQWRjWZGn0/видео.html

    • @Ruumablood
      @Ruumablood 3 года назад

      @@BenCloward Thank you! I subbed your channel and so far. your the only person that actually explains how to organize inputs and outputs on functions.. Okay so I checked the compression setting and its set to Default DXT1.... Cant seem to find the setting thats messing it up. I cant find any other textures to use but these ones I been looking. I know your super busy. If you ever get a second, see if you cant dig in why its not working for me? its got to be some settings id imagen...

    • @Ruumablood
      @Ruumablood 3 года назад +3

      Hey so guys if any one else runs into this issue, the fix is to check the normal map setting it took a while to find what went wrong... Make sure its set to interface2D

  • @fatemekamali8204
    @fatemekamali8204 Год назад

    Hi ben ,do you have bubble texture?

  • @ahnthinkgood9013
    @ahnthinkgood9013 3 года назад

    My Ripple Effects are disappear at same time / How can i solve it?

  • @Ruumablood
    @Ruumablood 3 года назад +1

    Hey i know i been having issues with getting this one to work but just wanted to let you know i figured out the problem, My masks was wrong settings and through me off due to the error not sending me to the function that had the error if that makes since... So... But thank you so much for the videos!!!

  • @mindped
    @mindped 4 месяца назад

    where can i go to learn how to create my own rain ripple texture.

  • @markusbronst7942
    @markusbronst7942 4 года назад

    I got a new error in the last function: SM5 Fuction MF_weather_Ripple : (Node ComponentMask) Not enough components in MaritalFloat3(Local68.1.00000000); for component mask 0001
    The error pops up actually in Weather_Ripples, which is the last function. Though there is no error in Weather_Ripple function, which is odd. The weather_ripple function the material preview is completely red. Weather_ripples with no material (error here)
    The material expression materials I have set priorities since it was displayed in a different order than how it was displayed in your video

    • @markusbronst7942
      @markusbronst7942 4 года назад

      Correction. My bad. I made some wrong connections. At least now to the error is popping up at Mask (Alpha). My bad! TThe 4rd mask should have been (R G) and I had A. I guess from the rythm RGBA, my eyes couldnt see it.

  • @Sause760
    @Sause760 2 года назад

    Fantastic tutorial! I have the watter drops looking good and clean . However the whole sequence repeats itself to quickly ? I have been playing around with the time but don't see any real improvement. Thank you !

    • @BenCloward
      @BenCloward  2 года назад +1

      The intent of this effect it to give an overall impression of rain on a surface as seen from from a regular 3rd person camera and to do that as cheaply as possible. So it's not meant to be an exact replica of the behavior of rain - but rather to give the impression of rain on the surface from a medium distance. If you're looking for something that's better for close-ups that would probably require a different shader and would be more expensive.

    • @Sause760
      @Sause760 2 года назад

      Thank you Mr. Cloward ! I have a second question about this rain drop ripple shader and and the rain drop shader . After I'm all said and done the size of the rain drops or ripples in the viewport and on a water plane are massive as compared to what I am seeing on your example . What am I missing ?Any suggestions would be greatly appreciated . Thank you!

  • @AegisHelm
    @AegisHelm 2 года назад +1

    brilliant

  • @theochapon5479
    @theochapon5479 2 года назад

    Hello, I think my first comment got deleted because I linked some screenshots. But i have this error when i link my shader to a material.
    [SM5] Function RainRippleShader: (Node ComponentMask) Not enough components in (MaterialFloat3(MaterialFloat2(MaterialFloat3(Local23,1.00000000).b,MaterialFloat3(Local45,1.00000000).b),MaterialFloat3(Local68,1.00000000).b): float3) for component mask 0001
    All my functions are good I think, I can't find where is the problem, does this error ring a bell ?
    Thank you very much for your work Ben, your tutorials are some of the best i found on youtube yet.

    • @BenCloward
      @BenCloward  2 года назад

      That error is saying that you have a component mask node in your function somewhere that more channel boxes checked on it you have channels going into it. For example, if you have a set of UV coordinates that is a float2 data type, you've plugged it into the component mask, and then checked the red, green, and blue channels on the mask. So you're telling it to give you three channels out when you've only passed in two. So to find it, just look for a component mask node that has red, green, and blue checked.

    • @theochapon5479
      @theochapon5479 2 года назад

      @@BenCloward Thank you so much for pointing it out (and so fast

  • @delko000
    @delko000 9 месяцев назад

    Note to myself: there might be some afterglow/ghosting effect on the ripples in the material preview because of the renderer settings: temporal anti-aliasing TSR or TAA
    If changed for MSAA or FXAA the problem is resolved.

  • @hengxingzhang7415
    @hengxingzhang7415 3 года назад

    Sorry, I found that the texture in this video are wrong. Each size is less than 1M,Can you provide a link from write? Thank you very much

    • @BenCloward
      @BenCloward  3 года назад

      I'm not sure what you mean. What's wrong with the textures?

    • @hengxingzhang7415
      @hengxingzhang7415 3 года назад

      @@BenCloward I downloaded the texture provided under the video and found that the size is not the original size

    • @hengxingzhang7415
      @hengxingzhang7415 3 года назад

      @@BenCloward One of the pictures texture is only 16KB

    • @BenCloward
      @BenCloward  3 года назад +1

      @@hengxingzhang7415 At the beginning of the video, I use a radial gradient texture to illustrate the idea of making an animated circle. That texture is called rain_drop_gradient and it's only 16KB because it's a grayscale image that's only 128x128. You don't really need that one. The one you need to make the final effect is rain_ripples.tga. It is 256x256 and is 205KB. It will work fine. You don't need super big textures to make great-looking effects. :0)

    • @TY_Blender
      @TY_Blender 3 года назад

      check texture options

  • @mehranvaysee
    @mehranvaysee 2 года назад +1

    that was perfect

  • @elijahgames192
    @elijahgames192 3 года назад

    how do i get rip of the stupid texture artifacting that happens when i download the texture?

    • @BenCloward
      @BenCloward  3 года назад

      I'd like to help, but you haven't given me very much information to go on. A screen shot of the issue would help a lot.

  • @paulbaker6458
    @paulbaker6458 Год назад

    How do I get the Rain_Drop texture. It is not in your list.

    • @BenCloward
      @BenCloward  Год назад

      I linked it in a previous episode.

    • @paulbaker6458
      @paulbaker6458 Год назад

      @@BenCloward Found it. Thank you.

  • @gnisrotv9701
    @gnisrotv9701 3 года назад +1

    the textures are pretty pixelated besides that everything works fine. I think its because of the resolution can you upload a bigger resolution of the rain ripple texture (you could correct me on this)

    • @BenCloward
      @BenCloward  3 года назад +9

      256x256 should be all you need for this texture. I've never used anything bigger than that. Just make sure you set the Compression Settings to UserInterface2D(RGBA) so it's uncompressed. If you still think it looks bad, post a screen shot and I'll see if I can see what's wrong.

    • @gnisrotv9701
      @gnisrotv9701 3 года назад

      @@BenCloward yea read through the comments figured it out still thanks for the response :D

  • @umbrellacorptv1885
    @umbrellacorptv1885 3 года назад

    Hi ben how are you made this blue function? i dont have that 17:56

    • @BenCloward
      @BenCloward  3 года назад +1

      The blue node is a Function Output node. It allows you to pass data out of your function to use in the rest of your material. It's only available in a Material Function graph, not in standard material graph. So the first thing you need to do is create a material function. Copy and paste your nodes into it. Then right click on the graph and type "output" in the search field. Select the FunctionOutput node from the list.

    • @umbrellacorptv1885
      @umbrellacorptv1885 3 года назад

      @@BenCloward Thank you very much! Greetings from Bosnia!

  • @BIGTTSNORLAX
    @BIGTTSNORLAX 4 года назад +1

    Good stuff as usual!

  • @SirPanda47
    @SirPanda47 3 года назад

    Lovely tutorial, I have a problem tho, as soon as I add the sign function 5:07 , ripples don't appear at all. I made sure all the previous values and functions are done exactly like you did.

    • @BenCloward
      @BenCloward  3 года назад

      I'd be happy to take a look at your graph and see if I can find what's wrong with it. Send me a screen shot. ben@bencloward.com

    • @BenCloward
      @BenCloward  3 года назад +3

      Ah, I see the problem. You're using the "Sign" node when you should be using the "Sine" node.

  • @エレダー
    @エレダー 4 года назад +1

    funny enough there is missing a function for ripple only appear at top plane, else it's ripple everywhere

    • @BenCloward
      @BenCloward  4 года назад

      The mask for only applying the ripples on up-facing surfaces is in the next video - episode 17 - ruclips.net/video/7COoNjAGmAk/видео.html - at 8:20. I don't create an up mask in this video because the ripples are only one part of the puddles, and I want to combine all of the parts together before masking them.

  • @goodolddays90
    @goodolddays90 4 года назад

    Hi. I sub and watch all your video to see how you did this 17:40 and i couldn't find it anywhere from your video. Also this 19:20i really wanna make it but those nodes is so hard to find such as The CombineFourNormal. Please help

    • @BenCloward
      @BenCloward  4 года назад +1

      The CombineFourNormal node is a a material function that I created. I start describing it at 22:08. The weather_ripple node is a material function that I created starting at 1:05 through 16:27 and then converting it into a function. You can create a new Material Function, name it weather_ripple, and then copy and paste all of the nodes from the shader you created starting at 1:05. I describe the idea of converting the shader from a material to a function starting at 17:05. I didn't describe the process in detail, but I hope you can do it. If you need more help, let me know.

  • @Kiwi2703
    @Kiwi2703 3 года назад

    Great tutorials! But I have an issue with this one - my ripples have a sharp "dot" in the middle of every ripple, from which the normal is going. Hard to explain, but basically the center "flat" part of the ripple is not flat as in your video. Anyone knows what could be causing this..?

    • @zyu043
      @zyu043 3 года назад

      Did you multiply the Pi node?In my case, if Pi is not multiplied with clamp node and clamp value is too large, this will happen.

    • @Kiwi2703
      @Kiwi2703 3 года назад

      @@zyu043 I did.. I have everything exactly like in the video. That's why I don't understand it...

    • @zyu043
      @zyu043 3 года назад

      @@Kiwi2703 I watch the video agin then I found if the ripple's mask didn't multily with the normal,it will be this.

    • @Kiwi2703
      @Kiwi2703 3 года назад

      @@zyu043 I'm not sure what you mean..?

    • @zyu043
      @zyu043 3 года назад

      @@Kiwi2703 Sorry,my English is not very well……I mean : the result of Sine node multiply with 1-x node need to multiply with the unpack (*2-1)normal.But if you have everything like Ben,I really didn‘t know what happend……

  • @amaanstudio1510
    @amaanstudio1510 2 года назад

    thank u so much!

  • @nugear6971
    @nugear6971 3 года назад

    i have one question, why texture have so small resolution?

    • @nugear6971
      @nugear6971 3 года назад

      ok i did it. If you have this problem you can make new project in Photoshop with big resolution and move downloaded photo in this project and make it more big then save it like .tgs an import in ue4

    • @nugear6971
      @nugear6971 3 года назад

      ok i must choose good resolution otranimation when ripples appear in random time

    • @BenCloward
      @BenCloward  3 года назад

      Which texture is too small? What resolution is it, and what would you like it to be?

    • @nugear6971
      @nugear6971 3 года назад

      @@BenCloward all texture have small resolution two have 128x128 and third have 256x256 when you make big resolution ib photoshop texture don't have random animation so I must choose

    • @nugear6971
      @nugear6971 3 года назад

      @@BenCloward this resolution can be good but when you animate puddles here appears very big pixels so it looks very bad

  • @theoneand0nly874
    @theoneand0nly874 4 года назад

    How do you apply the ripple or splash on the character if he is outside

    • @chlbrn
      @chlbrn 4 года назад

      As far as I can tell, you might use triplanar projection with actor position UVW and mask out by angle to make surface that is facing up wet with ripples.

    • @BenCloward
      @BenCloward  4 года назад +1

      The ripples in this video are mostly for flat surfaces. I wouldn't use them on a character. I would use the drops from episode 14 and the drips from episode 15. As for outside vs inside, I would use triggers to turn the rain effect on or off. Episode 18 will show how to combine these effects together.

    • @theoneand0nly874
      @theoneand0nly874 4 года назад +1

      Ben Cloward glad your making a video on that I’m trying to make a rainy level where the drops hit the character just like I told before. If you if u can pull it off that would be sooo cool I’ll even donate to you if you allow it

  • @Donovann09
    @Donovann09 3 года назад

    Hello.
    I don't know why, but my ripple are completly pixelyzed !
    Your tutorial is not very easy to follow because lot of steps are skipped...

    • @BenCloward
      @BenCloward  3 года назад +3

      I would be happy to help you trouble-shoot your problem. The first thing to check is to make sure that your ripple texture UserInterface(RGBA) for Compression Settings and that sRGB is turned off. If you do need to change settings on the texture, you will also need to change the settings on the Texture Sampler node that's using the texture in your material graph. There is also a screen shot of the completed graph here: www.bencloward.com/youtube/rain_ripple.jpg for you to compare with yours. If you're still having issues after those, you're welcome to send me an email with a screen shot of both your result and your graph and I'll take a look and see if I can figure out what's wrong. ben@bencloward.com

    • @Donovann09
      @Donovann09 3 года назад

      ​@@BenCloward
      Thank you for taking the time to answer me.
      Indeed, the problem came from there ...
      A friend who did the tutorial a few months earlier and found himself in the same situation explained to me how to fix this.
      I haven't seen any indication as to whether these tutorials are intended for an intermediate or expert audience, but even following the videos "step by step", I'm still surprised to find that there are things that aren't explained.
      For example :
      When you create a function, you do not go into details, so we have to "paused" the video and we have to guess very carefully where the nodes must be connected, the same for some "constantvector" values.
      When we start the video, we see that it is 22 minutes long, but finally, it takes "3 hours" to do it because there are functions that you have already been created and we discover them in the middle almost at the end. end of the video.
      ..
      I imagine this is a way for you to save time, but for the viewer, it's a little discouraging to feel like you've come to the end and you have to add more and more missing elements...
      For the "weather_wind_ripples" function, I had to look for it in a tutorial that was not in the playlist ...
      It's not normal.
      I'm on episode 18, so the last one for the creation of rain, and I'm discovering once again that despite everything I've done before, it's still missing some features we've never heard of, and who the, are not even explained !!
      So yes, you have to look in the added comments to find the two jpg files, but you have to know that...
      When you expect to find everything in the video, it's very disturbing ...
      I don't question the quality of your work, because if I took the time to watch all these videos, it's because they are really very interesting, and I find that the result is of quality...
      Sound and image quality are great, and your ellocution is perfect for tutorials. (you don't have an horrible voice like some others persons that we have the impression they speak from their toilets)
      I just find it's too bad to invest in a tutorial and not be sure to be able to finish it for the reasons I mentioned.

    • @BenCloward
      @BenCloward  3 года назад

      This is really great feedback, Joel. Thank you very much for sharing this. I will use it to try to improve future videos.

    • @philpickett9593
      @philpickett9593 3 года назад

      I changed my compression to normalized and fixed it. thanks.

    • @philpickett9593
      @philpickett9593 3 года назад

      Didn't work with the offset so changed back to DTX 5 (Default) and now working.

  • @violetred4803
    @violetred4803 4 года назад

    Alright so I figured out the first problem; but I have another... I can't seem to figure out where to wire everything at 21:14 in the vid. I have the Combine four normals node but when I wire it all up the ripples look like this:i.imgur.com/fsY6ikV.png Help is greatly appreciated thanks!

    • @BenCloward
      @BenCloward  4 года назад

      The AppendMany node has R, G, B, and A inputs. The Intensity input needs to be wired into all four of them. Then create a constant vec4 with the values shown and subtract it from the result of the append many. Does that help? If you're still stuck, send me a screen shot of the combine four normals graph.

    • @violetred4803
      @violetred4803 4 года назад

      @@BenCloward I have done what you suggested, however it still did not work here is the combinefournormals graph: imgur.com/a/Q0rF2sJ Thanks for the help!

    • @BenCloward
      @BenCloward  4 года назад

      @@violetred4803 That one looks correct. Can you send me an image of the weather_ripples graph?

    • @violetred4803
      @violetred4803 4 года назад

      Closest I could get to it was this after troubleshooting the graph a little: imgur.com/a/Xmza6cZ Still does not look like ripples.

    • @violetred4803
      @violetred4803 4 года назад

      @Ben Cloward Here you go; its a little messy however: imgur.com/a/J52VZpu

  • @CreepyCyborg
    @CreepyCyborg 2 года назад

    Very good work. Nice tutorial. But I have a question. I also use your textures to learn the tutorial to avoid mistakes. The only problem is, with the two textures, Raindrop.tga and RainRipples.tga, how do you say it in English, I think artifacts are best. like extremely old computer graphics and worse. with you in the video it is not. I then recreated these textures myself, at least raindrop, with a resolution of 4K, but exactly the same thing happens there. what can be the reason? That doesn't happen with the Gradiant.

    • @BenCloward
      @BenCloward  2 года назад +2

      These two textures need to be set to an uncompressed format in the engine texture settings.

    • @CreepyCyborg
      @CreepyCyborg 2 года назад

      @@BenCloward Ah OK, Thanks

    • @BenCloward
      @BenCloward  2 года назад +1

      The reason the textures are low resolution is so they won’t use too much texture memory when set to uncompressed. Be sure you DON’T use your high resolution version set to uncompressed. That would be a large waste of memory.

    • @CreepyCyborg
      @CreepyCyborg 2 года назад

      @@BenCloward :D... Gimp has already warned me that I am about to create an extremely large image. I thought to myself that this could not be good. But I had to try something. I didn't really expect you to answer. ;)

  • @allenzhang1824
    @allenzhang1824 4 года назад

    Thanks, Man. I have some problem in the last part. In the final 'Ripples' test, i set the Intensity to 0, and all the normal become something strange. When i change 'Normalize' to 'Saturate' in the 'CombineFourNormsls', the problem solved. So i still don't understand why you use 'Normalize' in the final part of 'CombieFourNormals', instead of 'Saturate'. ))

    • @BenCloward
      @BenCloward  4 года назад

      I'm not clear on why you're setting intensity to zero. If you don't want the ripples to show, just disconnect them.

    • @allenzhang1824
      @allenzhang1824 4 года назад

      @@BenCloward ok, get it. thanks for reply

  • @violetred4803
    @violetred4803 4 года назад

    Everything was fine up until the rain drop color sample, it gives a pixelated center to the ripple while the rest is fine? HELP!

    • @BenCloward
      @BenCloward  4 года назад

      Need more information to be able to troubleshoot it. Can you send me a screen shot?

    • @violetred4803
      @violetred4803 4 года назад +1

      @@BenCloward I figured it out! Thanks anyways though your tutorials are amazing!

    • @edwardkeefner3540
      @edwardkeefner3540 3 года назад +1

      For those of you with this pixelated problem, go into the texture and change the compression settings to RGBA8 or VectorDisplacementmap.

  • @andytenshi
    @andytenshi 4 года назад +1

    isn't tripple ripple a flavor of sherbet?

    • @BenCloward
      @BenCloward  4 года назад

      Hah! It should be if it’s not already. :)

  • @曾强调说
    @曾强调说 4 года назад +1

    Hello, teacher. Thank you very much for your teaching and sharing. I am a student from China. I just started to learn UE4. I haven't found the teaching about water ripple for a long time. I am very happy to see this. Thank you very much^_ ^。 In addition, I want to know how to generate ripples by clicking on the water surface instead of automatically generating them? I don't know how to interact between the blueprint and the material. Can you tell me how to implement it?thanks very much.

  • @666nevermore
    @666nevermore 3 года назад

    Ben with the help of a friend I improved your ripple red channel. It’s been a month in working on this rain so I’m slowly improving each aspect. The total cost of this formula is 10% more instructions tho on the ripple itself.
    Instead of using the red channel, multiply , clamp , *pi and than sine pi. After the multiplication I use the red mask to obtain its boundaries with a one minus subtract by its step. Than I youse that black point in the middle as it’s central point of a ripple so I can determine where it starts and where it ends. I then use the power after that to create a decay, the higher the power, the more diffference of ripple waves sizes and distance it shows. The waves from the middle are larger now Thant the waves at the edges during the animation. I than use pi and sine pi.
    Now with this setup the multiplication determine how many waves a ripple has, the power determines the difference of wave shape between the central point and the edges point, and in the end the sine pi determines the ratio. This is way more realistic but the power instructions is adding this 10% more instructions compared to your default one. I couldn’t figure out a way to optimize this formula. Maybe you were interested in this I don’t know, if you want I can send screenshot if I explained myself badly and you are curious

    • @BenCloward
      @BenCloward  3 года назад +1

      I'm really glad to hear that you're experimenting and improving on what I did. One of my goals is to inspire people to take what I've done and run with it and it sounds like you're doing that. Super cool! One issue with making the ripple function more expensive is that we end up doing this function four times toward the end of the video - so anything you do to make the ripples more expensive actually gets multiplied by 4. If you could figure out a way to make your improvements without increasing the cost - that would be a big win! If you'd like to post a shot of your graph, I'd love to see what you've got.

    • @666nevermore
      @666nevermore 3 года назад +1

      @@BenCloward yeah I have everything on the rain, I have quixel implementation by working on their master masterial, I also have remade textures and all the switches to improve instructions. I also added some displacement read or vertex paint for the puddle creation, so u can choose if u wanna use displacement/height mask, vertex paint or noise for your puddles. In the end it was around 270 instructions all on, 300 instructions with my new ripple formula. Now my last step would be to refactor the math. But it’s been one month almost full work and I’m getting tired. You inspired me a lot Ben, I’m loving all you do

  • @planetarta
    @planetarta 4 года назад

    This was awesome to watch you make such good looking ripples but i was sad when you showed 'here's one i made earlier' because you showed us what you made and explained what it was but not how you made it. Like ive never made a function before and have no idea how you made half of these things.

    • @BenCloward
      @BenCloward  4 года назад +5

      Are you talking about the rain ripple texture? You can download that in the description of the video. Alternately, here are some instructions for how to make the texture in Substance Designer:
      1. Open Substance Designer and create a new empty graph.
      2. Add a shape node to the graph and set the Pattern parameter to Cone.
      3. Add a Height to Normal node to the graph
      4. Connect the output of the Shape node to the input of the the Height to Normal node.
      5. On the Height to Normal node, set the Surface Size to 80 and set the Height Depth to 100. Set the Normal Format to DirectX
      6. Add a RGBA Split node to your graph and connect the output of the Height To Normal to the input of the RGBA Split.
      7. Add a RGBA Merge node to the graph.
      8. Connect the R output of the Split to the G input of the Merge
      9. Connect the G output of the Split to the B input of the Merge
      10. Connect the Output of the original Shape node to the R input of the Merge
      The output of the RGBA Merge node will now give you the texture that I show at 9:17 in the video. Save it out of Substance Designer and import it into Unreal.
      Let me know if that works for you or if you run into issues.

    • @paracelsus_rose6934
      @paracelsus_rose6934 4 года назад

      @@BenCloward You are an amazing person.

  • @PhenomzQC
    @PhenomzQC 4 года назад

    17:38 so you just thought it wasn't necessary to actually show us how to do it? Thanks!

    • @BenCloward
      @BenCloward  4 года назад +1

      Yes, that's correct. Sometimes in the interest of time, I leave things out and just say that I did them rather than walking through everything step by step. In these cases, I make the assumption that the audience is smart enough to figure out the missing steps. Converting a material to a material function involves the following: 1. Make a new material function asset. 2. Copy and paste the nodes from the material into the material function. 3. Instead of a root node, create output nodes for each of the types of data (in this case it's only the normal) that you want the function to output. 4. If there is any data that you want to be able to pass into the function, make input nodes for those. (In this case, I'm passing in a Weight scalar, a Time scalar, and UVs). Here is a screen shot of what the final graph looks like to help you create it: www.bencloward.com/youtube/rain_ripple.jpg

    • @PhenomzQC
      @PhenomzQC 4 года назад +1

      @@BenCloward Thank you, i already made everything from pausing your video.. I just thought it could get confusing for people like me who is a beginner still. Good tutorials nonetheless my man! Thanks ^^

    • @BenCloward
      @BenCloward  4 года назад +1

      @@PhenomzQC Thank you for the feedback. I added the link to the screen shot of the full material function to the video description. Hopefully it will help people who get stuck on that.

  • @views-re2om
    @views-re2om 3 года назад

    please do rain drops effects on camera

    • @BenCloward
      @BenCloward  3 года назад +1

      Oh, that's a good suggestion - thank you!

  • @SenEmChannel
    @SenEmChannel 3 года назад

    i dit it, thank you but i cant not replicate it by myself, because it too complex to me and i bad at math. if even i can, it will took me many hours or days if i dont watch your tutorial. try to get my brain cell around.

  • @胡书恒-h7k
    @胡书恒-h7k 2 года назад

    师傅!!!

  • @blevi2695
    @blevi2695 3 года назад

    the bgm is too noisy

  • @AndrewByrnes1
    @AndrewByrnes1 3 года назад

    can i subscribe twice

  • @kenalpha3
    @kenalpha3 Год назад

    Ben did you delete my comments on this vid or did RUclips? I watched your series since yesterday and posted on Ep14 (a thank you), 15 (question), and 16 (a question yesterday, solution today).
    Now today, my posts on EP 15 and here - were deleted after I posted a 2nd time, a day later!!!!!!
    I spent an hour coding, fixing an error that other people did not see. I made a picture, posted an Imgur link like everyone else does. But in 2023, my comments from yesterday (no link) are auto deleted for my post today?????????????????
    I feel robbed and my time wasted - not knowing who is deleting me or why. I was trying to help your community, and give you a link to post in your description (part of the code is hard to see for CombineFourNormals). I am also worried because I had questions from yesterday, that I was waiting for you to see. Now I dont know if youll even see them, or in your spam folder, or auto deleted by YT?
    YT made it so frustrating to communicate for education in 2023. They took away Private Messages and now delete for comments.

    • @BenCloward
      @BenCloward  Год назад +1

      I have not deleted any comments. I do get a lot of comments and I’m not able to reply to everyone, but I do reply when I can. I’m not sure what happened to your comments. Sorry about your lost work.

    • @kenalpha3
      @kenalpha3 Год назад

      @@BenCloward Ty for your confirm :)
      So it was their AI. Can you confirm that when they hide/delete my comment, do they put in it your Spam folder - so you can override if you see it? Or are my 2 comments not shown in your spam?
      Here's part of my original msg, without exact link:
      I made you an updated Image of the CombinedFourNormals Function - to make clear a mistake that someone else made (I saw you helping them) - hard to see Alpha line.
      [ imgur /a/LUmkuCo ]
      Gave you credit. You can put it in your descript. (Yesterday's comment asked if you could post a PNG of this code, or upload to BluePrintUE.)
      But now I made the code, would you like me to also post it to BluePrintUE as non public (with credit to you in the Comment) - then you can put the link in your description - and new people can just copy/paste the code into UE??
      Reason: When I first started UE, I was bad at coding and needed to see exact examples that I could move around/click, which YT vids often do not give as files.
      Now I know coding, but your Functions are complex or may be hard to see the exact line-paths at certain overlaps. So I'd think it would be easier for new people to learn from your vid, then get the correct code from the link/graph.

    • @BenCloward
      @BenCloward  Год назад +1

      @@kenalpha3 I do see one comment that you made in Episode 13 and another that you made in 14, but this is the first I've see of what you wrote above, and no it's not in any sort of spam folder. I wonder if RUclips doesn't like them because they're too long?

    • @kenalpha3
      @kenalpha3 Год назад

      @@BenCloward Ty. I believe it was due to links to imgur then.
      In 2020, people could post links. In 2023, the AI is too strict and assumes Im a spammer - even tho I replied to a thread where the person posted Imgur 5 times.
      Anyways, did you see my fix? [imgur /a/LUmkuCo]
      And do you want me to post it on BluePrintUE to show you? (Not sure if they had this site back then, but it's pretty cool/easy to show people what code is correct.)

    • @BenCloward
      @BenCloward  Год назад +1

      Yes, I looked at it. It looks good. The only thing I might do is use a multiply node instead of a lerp at the bottom where you’ve made the A note. It does the same thing but might be a little cheaper.

  • @squidliu2110
    @squidliu2110 3 года назад

    8:57 texture with normal

  • @squidliu2110
    @squidliu2110 3 года назад

    17:20 组合