Experimenting with a novel technique to create 2D wind in UE5

แชร์
ฝัง
  • เผยแพร่เมื่อ 27 มิ.ย. 2024
  • Wind system project is available as a Tier 2 reward on my Patreon (DOESN'T INCLUDE THE REALISTIC GRASS ASSETS): / ghislaingir
    Twitter: / ghislaingir
    Mastodon: GhislainGir@mastodon.gamedev.place
    Links:
    God of War GDC Tech Talk: • Interactive Wind and V...
    Creating Wind in Ghost of Tsushima GDC Tech Talk: • Blowing from the West:...
    Alan Wake 2 Blog Post: www.remedygames.com/article/h...
    Easing Functions: easings.net/
    0:00 Wind System Overview
    1:50 Realistic Grass Series
    3:00 Local & Global Wind Systems
    4:57 Simple Grass Wind
    7:20 Noise Texture
    10:05 Wind Sprites
    11:45 Tiled Textures
    12:31 Tiled Particles
    15:45 Wind Manager Blueprint
    18:13 Wind Particle System
    20:53 Simple Wind Application
    23:21 Ghosting
    26:33 Push & Turbulence
    27:50 Performance
    28:45 Custom Particle System & Renderer
    33:14 Wind Intensity Presets
    Hey there! I'm back with another experiment :) Hope you'll like the video! Cheers :)
  • เกม

ความคิดเห็น • 63

  • @will3d657
    @will3d657 4 หลายเดือนก่อน +6

    Been waiting for this one! Amazing stuff as always!

  • @shannenmr
    @shannenmr 4 หลายเดือนก่อน +10

    Have you seen the GDC talk from EPIC on how they did Grass in Fortnite because of performance bottlenecks with WPO and Nanite and they used a Texture with a manually created MIP for their Wind system to be able to blend between the MIPS for control ? Its called "Battle-Testing UE5 Next-Gen Systems with Fortnite | GDC 2023".

    • @ghislaingirardot
      @ghislaingirardot  4 หลายเดือนก่อน +3

      Yes, a great talk and using mipmaps is smart! But its actually Epic that drove me away from using Nanite =p I'm a maniac when it comes to WPO and I'm not ready yet to make sacrifices when it comes to vertex animation, even in the distance :p and I don't use VSMs so good old meshes still do the trick just fine for me

    • @OsaReza
      @OsaReza 4 หลายเดือนก่อน +2

      If you have the link to that talk, can you please share that here?

    • @shannenmr
      @shannenmr 4 หลายเดือนก่อน +2

      @@OsaReza Its shared on the Unreal Engine YT channel with that specific name. They also talked about to better do foliage with nanite etc.

    • @ghislaingirardot
      @ghislaingirardot  4 หลายเดือนก่อน +3

      @@OsaReza just have to google "Battle-Testing UE5 Next-Gen Systems with Fortnite | GDC 2023" th-cam.com/video/05FCjQR--Sc/w-d-xo.html

    • @OsaReza
      @OsaReza 4 หลายเดือนก่อน +1

      @@ghislaingirardot I apologize, I did not read the whole text. I was very eager to know more about that conference. I am new to technical art and am constantly gathering more information to learn more about it. thank you for the wonderful content you produce.

  • @AidanDesigns
    @AidanDesigns 4 หลายเดือนก่อน +3

    The results are simply phenomenal!

  • @swrcPATCH
    @swrcPATCH 4 หลายเดือนก่อน +1

    AMAZING!!! Please continue like this!!!

  • @fabthtelgato4683
    @fabthtelgato4683 4 หลายเดือนก่อน +1

    Merci, je regarde tout cela avec intérêt ce week-end 👍

  • @AzguardMK
    @AzguardMK 4 หลายเดือนก่อน +1

    ... AMAZING RESULT !!! absolutely the best in-depth videos on UE ...

  • @Cazaq
    @Cazaq 4 หลายเดือนก่อน +2

    You had to overcome so many insane things to get this working. Delaying the render capture in Niagara is a really creative solution. Respect!

  • @brunocandia9671
    @brunocandia9671 4 หลายเดือนก่อน +1

    I love this great job! THX

  • @now_ever
    @now_ever 4 หลายเดือนก่อน +4

    It's like watching "Insane engineering of Boeing" or something like that. Crazy stuff :)

    • @ghislaingirardot
      @ghislaingirardot  4 หลายเดือนก่อน +5

      Hmmm Boeing are not doing too great atm, engineering wise... What does that say? =p

  • @VMP666
    @VMP666 4 หลายเดือนก่อน +1

    You are an absolute GOAT. Thank you!!!!

  • @VisualTechArt
    @VisualTechArt 4 หลายเดือนก่อน +1

    Good stuff! :D

  • @christophegirardot6313
    @christophegirardot6313 4 หลายเดือนก่อน

    It's amazing !

  • @ButtercupVisuals
    @ButtercupVisuals 4 หลายเดือนก่อน +1

    Too good!

  • @williamlacrosse9389
    @williamlacrosse9389 4 หลายเดือนก่อน +1

    Mais dis moi, c'est une grosse tuerie ce machin!

  • @vembdev
    @vembdev 4 หลายเดือนก่อน +1

    professional

  • @Dhieen
    @Dhieen 4 หลายเดือนก่อน +1

    Yees finally

  • @Ziboo30
    @Ziboo30 4 หลายเดือนก่อน +1

    Awesome. Sure you know, but Grid 2d collection let's you sample the last frame value too, could be used for your motion vectors I guess :)

    • @ghislaingirardot
      @ghislaingirardot  4 หลายเดือนก่อน

      Oh, I had completely forgotten about that tbh :D! Thanks, I'll update it

  • @MaximeMegeYthierPyrath
    @MaximeMegeYthierPyrath 4 หลายเดือนก่อน +2

    When he said :"Buckle-up! ".. but I was already tightly buckled up... and I had nothing else to buckle up to ! 😰
    Mec, t'es une legende!

  • @OMYOGofficial
    @OMYOGofficial 4 หลายเดือนก่อน +2

    Best grass I have ever seen :)

  • @yonjuunininjin
    @yonjuunininjin 4 หลายเดือนก่อน +2

    And in the next video I show you how I throw everything away, because I want the player to interactive with the grass, so I used a fluidsimulation on top of this system. Then I realized how little impact this system had compared to the fluidsim and I replaced the default grass behavior with a simple sine way. Well, that's what I did at least, I'm curious how you handle player interaction. I did try the God of War technique and created some interesting textures in substance designer that took into account that grass bends faster when the wind blows and moves back slower when getting back. I'm very curious if you will come to the same conclusion with your technique when it comes to player interactivity!

    • @ghislaingirardot
      @ghislaingirardot  4 หลายเดือนก่อน +2

      You should be able to benefit from both worlds. The fluid sim should in principle be quite limited in space to have enough resolution and only be the cherry on top, so a fallback solution is always kinda required imho, and it should be complementary to the fluid sim in a way that doesn't make one or the other system be completly redundant/useless. And reverting back to simple sines sounds... meeehh :p. But maybe I'm wrong, this is just an experiment after all. Time will tell I guess haha

  • @void9853
    @void9853 4 หลายเดือนก่อน +1

    Thanks! If I use procedural noise for wind, will it have the same problems as textures?

    • @ghislaingirardot
      @ghislaingirardot  4 หลายเดือนก่อน

      Depends on the way that noise is generated & mapped, but most likely, yes.

  • @pubudu781
    @pubudu781 3 หลายเดือนก่อน +1

    Awesome video, thank you so much, however this may be totally unrelated, but what's your VSCode theme ? Looks really cool.

    • @ghislaingirardot
      @ghislaingirardot  3 หลายเดือนก่อน +1

      Thanks. It says "Material Community Darker" :shrug: I don't even remember changing the theme tbh :D

    • @pubudu781
      @pubudu781 3 หลายเดือนก่อน

      @@ghislaingirardot Ohhh thanks ☺. Another question, i actually really like working on shaders like this mainly, i'm familiar with basic math and thigs i need for that, recently i thought of improving my skills further and trying out HLSL, got any recommendations about that ? any course of anything else i should learn before that ? My plan is to become a technical artist one day, hopefully I'm on the right path. again, thank you very much for sharing your knowledge with everyone.

    • @ghislaingirardot
      @ghislaingirardot  3 หลายเดือนก่อน +1

      ​@@pubudu781 There's no need to take a course to learn HLSL honestly. It's probably the simplest scripting language out there with GLSL and you'll realize that soon enough if you give a try. It may seem daunting at first but there's not much to it really: float, float2, float3, float4, for loops, texture samplers (UE specific), sin(), cos(), floor(), ceil(), round(), saturate() and you can build pretty much any shader you want👍 Try converting simple maths you made with nodes with a custom HLSL node first and go from there.

    • @pubudu781
      @pubudu781 3 หลายเดือนก่อน

      @@ghislaingirardot Oh wow, that's really good to know, Thank you so much for your advise.

  • @pharos5414
    @pharos5414 4 หลายเดือนก่อน

    This is amazing and it looks really good! But what about a tree with 1 million polygons for example? If I want to animate it with your wind system, what would the performance be like? And can VSMs be applied to it? Thank you.

    • @ghislaingirardot
      @ghislaingirardot  4 หลายเดือนก่อน +1

      My system changes nothing to the cost of rendering millions of triangles and the huge cost of constant VSM invalidation with WPO. Keep in mind my system just outputs a texture in 0.05ms, that's it. It's up to you to sample that texture in your vertex shader however you like and create your own tree animation. A 1M tri tree is going to be expensive, period, regardless of wind animation or no wind animation.

  • @duffydan26
    @duffydan26 4 หลายเดือนก่อน +1

    would this effect be possible and plausible using something like leaves on trees?

    • @ghislaingirardot
      @ghislaingirardot  4 หลายเดือนก่อน +1

      Sure. Applying wind to tree is a bit more complex though but 2D wind is just that... 2D wind. Up to you to be smart and make decent branches/leaves motion from that data

  • @drinorkastrati8824
    @drinorkastrati8824 หลายเดือนก่อน

    Salut! Ou trouver les assets d'herbe que tu utilises ? Ou un tuto qui permettraient de faire quelque chose de ressemblant. Merci beaucoup!

    • @ghislaingirardot
      @ghislaingirardot  หลายเดือนก่อน

      Bonjour! Je les ai fait moi même sur Blender. Je ferai une vidéo sur mon process un jour ou l'autre mais tu peux probablement déjà trouver des tutos qui expliquent le procédé.

    • @drinorkastrati8824
      @drinorkastrati8824 หลายเดือนก่อน

      @@ghislaingirardot honnêtement ton herbe est merveilleuse si tu peux me donner les assets ou faire un tuto ça me sauverait la vie 🙏🏼🤠

    • @ghislaingirardot
      @ghislaingirardot  หลายเดือนก่อน

      @@drinorkastrati8824 Merci! Les assets sont dispos sur mon Patreon en T3 reward

    • @drinorkastrati8824
      @drinorkastrati8824 หลายเดือนก่อน

      @@ghislaingirardot ok! Et ya quoi d'autre dans le T3?

    • @ghislaingirardot
      @ghislaingirardot  หลายเดือนก่อน

      @@drinorkastrati8824 Tous mes travaux

  • @chaosordeal294
    @chaosordeal294 4 หลายเดือนก่อน

    If you added a small selection of tiled filters randomly, it would break the repetition.

    • @ghislaingirardot
      @ghislaingirardot  4 หลายเดือนก่อน

      Not sure what you mean :) Tiling isn't that obvious anyway imho, not really an issue the way I see it. Plus you can always distort UVs with another map and break the tiling easily.

  • @davidtamaslaszlo4922
    @davidtamaslaszlo4922 4 หลายเดือนก่อน +1

    Well this tutorial is really not for begginers. I tried to follow it but its quite frustrating that you didnt show part of it(Like begining and the end of the construction script.. also whats in the NS scratch pad named set initial velocity and more.. ). So if I dont understand completly theres no way to follow it. Too bad i really needed something like this in my game.. :(

    • @ghislaingirardot
      @ghislaingirardot  4 หลายเดือนก่อน

      The beginning & end of the BP construction script is irrelevant, ignore it. Just something I tried on my end for something else. Ignore the scratch pad as well.
      I never said it was a tutorial nor that it was beginner friendly. It's just not the audience I target. There are plenty of videos out there that explain the basics, no need for me to reinvent the wheel.
      Feel free to check out the project files if you're having troubles re-implementing this, it's available for 10 bucks :shrug:

    • @davidtamaslaszlo4922
      @davidtamaslaszlo4922 4 หลายเดือนก่อน

      Hey thank You for your answer.. Can you drop me a link where i can find the project files? Is the whole project included in that.. with all the texture maps and the grass mesh as well? @@ghislaingirardot

  • @KahramanlarMeydani
    @KahramanlarMeydani หลายเดือนก่อน

    Nothing makes sense. If you want to teach something, explain it step by step from the beginning to the end in a single video. Even if you made a blade of grass in Blender, explain how you did it. This way, nothing makes sense. You would only satisfy yourself.

    • @KahramanlarMeydani
      @KahramanlarMeydani หลายเดือนก่อน

      Personally, I am a novice and I didn't understand anything, my friend. Even idiots like me need to learn.

    • @ghislaingirardot
      @ghislaingirardot  หลายเดือนก่อน

      @@KahramanlarMeydani Learn the basics first :) This is clearly an advanced topic.

    • @KahramanlarMeydani
      @KahramanlarMeydani หลายเดือนก่อน

      @@ghislaingirardot teach me from the basics

    • @ghislaingirardot
      @ghislaingirardot  หลายเดือนก่อน

      @@KahramanlarMeydani Sure, I'll do a 40hrs long series on graphics programming and 3D modeling, starting from how circuit boards work and how electrons can be harnessed to build logic gates and create bit-operations.

    • @KahramanlarMeydani
      @KahramanlarMeydani หลายเดือนก่อน

      @@ghislaingirardot If you publish the work you did in this video in its raw form from start to finish without editing it with editing programs, people would understand much better what you did and how you did it. It would be like being in a classroom. This is exactly what is being asked of you. There's no point in joking about doing a 40-hour course. I am 30 years old. I have been developing high-level projects with Unity for 15 years. Now, I want to do something with Unreal, but since I am unfamiliar with the interface, everything remains unclear. Is it stupid or ignorant to want to see everything in this video in detail? Or should I go and spend four years at university just to make a wind effect?

  • @plasid2
    @plasid2 4 หลายเดือนก่อน +2

    when water simulation?

    • @ghislaingirardot
      @ghislaingirardot  4 หลายเดือนก่อน +1

      I've done enough water stuff. See my older videos :)