BOOST Foliage Performance In Unreal Engine

Поделиться
HTML-код
  • Опубликовано: 31 июл 2024
  • When foliage causes massive drops in your frames per second this is the fix.
    🔥BECOME A PATRON - for exclusive content and credit on new videos
    🔗bit.ly/3pcBuBn
    ---------------------------------------------------------------
    😁 Subscribe to Joshua M Kerr
    🔗bit.ly/3l4U9wo
    ---------------------------------------------------------------
    🎦 JOIN THE NEXT GEN FILMMAKERS DISCORD
    🔗bit.ly/3kUzqvj
    ---------------------------------------------------------------
    👀WHAT TO WATCH NEXT..
    📺 An Unreal Engine Short Film In Three Days
    bit.ly/3DwvPtI
    📺 The Smallest Virtual Production Studio
    bit.ly/3WW3KCY
    📺 Virtual Production Playlist
    bit.ly/3HnUeDe
    ---------------------------------------------------------------

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

  • @rabellogp
    @rabellogp Год назад +395

    There is actually a parameter in the foliage type for that. It's called "World Position Offset Distance". You can set a distance value there and any instance actor beyond that distance will have WPO disabled for performance. Landscape Grass Type also has it.

    • @JoshuaMKerr
      @JoshuaMKerr  Год назад +67

      This won't give you the same increase as disabling within the material unfortunately. Trust me, I've been over those settings.

    • @rabellogp
      @rabellogp Год назад +4

      @@JoshuaMKerr that's interesting... Good to know, thanks!

    • @TGADB
      @TGADB Год назад +12

      @@JoshuaMKerr use a distance blend between 0 wpo to wpo complex which mega scan uses. Speed tree also have this issue, so basically, wpo from these are very complex. Ideally we want to have branch wpo for mid range , and no wpo to long range. This problem occurs if you just drag and drop without knowing what those asset comes with , this is very basic mistake as for some reason people think , just drag and drop gonna work, but it won't unless one use their own brain

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

      @@JoshuaMKerr well, lets be honest this is a extremly poorly optimized tree. what u want to do is creat ur own proper trees from scratch and have them be optimized. also the mat is way to insain.

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

      @@JoshuaMKerr whats the delta between the increases? are we talking about editing the material gaining an extra couple frames? or are we talking double digit percent?

  • @Clazzid
    @Clazzid Год назад +50

    There is a setting in the foliage which removes WPO at a certain distance, it's called "World Position Offset Disable Distance"

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

      Yes there is. It definitely should do the job but I may have something funky going on with my project. Might try with a clean project next time.

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

      I was just going to suggest some kind of distance based WPO but I didn't know there was an actual function for this.

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

      @@unrealdevop It exists. Just not sure about the gains. Will do more testing

    • @res0lve
      @res0lve Год назад +4

      @@JoshuaMKerr I'd like to see the difference between this video and the WPO distance, do a comparison video maybe :D

    • @JoshuaMKerr
      @JoshuaMKerr  Год назад +4

      Think I may have to

  • @user-ss6et8jt5l
    @user-ss6et8jt5l 6 месяцев назад +9

    You also can turn on mask calculation only in Depth Buffer (Project Settings - Mask Material Only in Early Z Pass). It works much faster on high masked overdrawed scenes (forest for example )

  • @ThreeTreeDog
    @ThreeTreeDog Год назад +42

    Trees with nanite are best fully modeled, white space is a killer on any mesh in masked on large scale. You can distance blend the opacity from 0-1 to decrease the cost on masked at further ranges, thereby making the trees fully opaque in the far field. Also unchecking collision and ray tracing in the material. That with using the wpo distance variable and simplifying shaders nets great results at ~60fps

    • @Fafhrd42
      @Fafhrd42 6 месяцев назад +2

      The masked materials, especially with nanite, are definitely a killer, and it's really annoying that the megascans trees haven't been updated to have fully cut out leaves and opaque materials for usage with nanite because it's tedious as hell to do it manually.
      Though WPO cost also goes up with vertex count, so it can be a complicated tradeoff.

    • @AlenHR
      @AlenHR 4 дня назад

      @@Fafhrd42 yea, I just finished converting all our vegetation from masked to opaque. Luckily, I managed to automate that task using Houdini shenanigans so it was a few-clicks solution. Huge gains in performance.

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

    I was pretty shocked at how expensive WPO was, considering how nearly every asset creator turns it on for trees, foliage, and grass. But very few of them will make LODs that disable WPO with distance.

  • @Podolstein
    @Podolstein Год назад +39

    I think you could make the workflow more scalable by switching the material based on LODs in just one mesh asset. If you switch to a different LOD in the mesh viewer or click the "Custom" tickbox in the LOD Picker section you can specify different materials for different LODs. I hope that helps!

    • @JoshuaMKerr
      @JoshuaMKerr  Год назад +6

      That is interesting and I've definitely never tried it. Thanks for the suggestion.

    • @lethaldumpster2699
      @lethaldumpster2699 Год назад +4

      @@JoshuaMKerr Yes I use this method too, its incredibly effective. But stops being so effective if using Nanite. But then again, I'm not a fan of nanite to begin with due to its limited performance on very old hardware.

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

      Ah this might be tricky then, I use nanite a lot unless I plan on pathtracing.

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

    Very insightful ! Thank you !

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

    Invaluable tip for performance!

  • @user-oc7ot4ee5l
    @user-oc7ot4ee5l 7 месяцев назад

    i love your lessons!

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

    What if we were to instead set up 2 camera volumes in place of the single one and adjust the clipping planes so we have a 'close' frustum and 'far' frustum, and only use the WPO-enabled material when drawing the 'close' volume? You'd have to do some deep magic to make the shadows and nanite occlusion culling work, but my intuition says that it could improve performance

  • @sarahs.9634
    @sarahs.9634 7 месяцев назад

    Huge thanks, this helped me with my final project!

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

    SOOOO HELPFUL

  • @marceloaanascimento
    @marceloaanascimento Год назад +4

    For a non destructive workflow, one thing you can do is using a static switch operator in you master material that enable or disable the wind accordingly your material instance. I think it may work instead of creating two master materials, then you just duplicate the instances

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

      Could work and definitely worth a shot. But (unless you've tried it) I am finding that these sorts of workarounds may not actually give the same performance back.

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

      @@JoshuaMKerr Sadly I have not tried yet so I don't know how it will affect performance. Someone commented here that the materials will be compiled in the same way, I don't now how it works in this case but at least it still could be useful on a more flexible approach.
      Anyways, I am following the comments because the tips are being pretty useful!

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

      @@JoshuaMKerr I use static switch parameters all the time and it never gives performance issues. It will just be compiled again. That said, unreal can be a bitch when it comes to performance. Not just ue5 with (or without) its new fancy features, but compiling a material or changing a parameter can negatively affect the performance for a few minutes. Heavy raymarching can even trigger stuttery fps drops after some time in full screen mode. I almost hope something is wrong with my pc

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

    why dont you use a switch node in the base master material to toggle between the original wind and the WPO?

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

    Thank you very much for sharing this. I wonder if you could also lower the lightmap resolution for even better performance. I do that in darker scenes. Great stuff! 😊

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

      I can certainly try that too.

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

      It’ll make a smaller difference, but a difference nonetheless. I love your content, by the way. Bravo!

  • @officialauspecs1285
    @officialauspecs1285 Год назад +4

    I am working on an open world bushcraft survival game with hundreds of thousands of trees and have been using the "camera depth fade" node to lerp between my world position offset wind effects and "0". This works well but am just discovering the world position offset distance bool in the foliage type properties and wonder if that would be better in terms of performance.

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

      world position offset distance deffinitely does something but even on a blank project I get better results just turning it off in material. Haven't tried a lerp though, good idea.

  • @rafaelskiarteportfolio1098
    @rafaelskiarteportfolio1098 22 дня назад

    you are a life saver!

  • @mpattym
    @mpattym 11 месяцев назад +1

    I've only recently started playing around with landscapes in UE and naturally downloaded the same mega scans tree. I just thought my old machine was just becoming a toaster. I never accorded to me that the WPO was what was tanking my FPS. It always seems to happen when my RHIT goes through the roof. At least now I know what causes it so thank you. :)

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

    Wouldnt it be easier to just turn off wind when you paint the bulk? And then turn it back on when you paint the other? Or would it switch it for all of them?

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

    It shows very quickly the increase in frames, thank you very much

  • @LucydDev
    @LucydDev 7 месяцев назад +3

    I just use camera depth fade and lerp between the Wind MF output and 0 (plug the depth fade into the alpha.)

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

    great video!

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

    or with the camera distnace use could've use lerp to disable the animation when in certain distances, and if the camera gets near then the WPO will play.

  • @Funny_mustache_guy
    @Funny_mustache_guy 5 месяцев назад

    you are a god, a legend sir

  • @joonasmansikka2482
    @joonasmansikka2482 Год назад +4

    I wonder why UE5 doesn't take some sort of nanite approach to material properties. If a tree moves in a forest, but nobody is close enough to see it, is it really worth moving?

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

      Haha I love that. But yes I can see that being useful. I'm sure it's on their radar because the wpo performance kinda defeats the point of the gains you make with nanite.

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

    interesting solution!
    but isn't there a more dynamic solution? for example making trees use the windy material near camera and no wind when away from camera instead of manually placing them?

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

      As far as I'm aware there is a more dynamic solution in 5.2 which uses the new procedural tools. But in 5.1 I've had a lot of trouble getting anything like that working.

  • @fran.fndz.techart
    @fran.fndz.techart 8 месяцев назад +1

    As people say there’s WPO offset distance + set the shadow map update to static at the instance group level (keep shadow with performance)

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

      For some reason, this method hadn't worked for me in my last project, but then started working again in my next one. Go figure

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

      How do I do the second part, where are the settings?

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

    Original solution. And it definitely works, thank you!

  • @user-by2tj8uv1j
    @user-by2tj8uv1j 11 месяцев назад

    OMG Thanks bro !

  • @Ready_Fire_Aim
    @Ready_Fire_Aim 6 дней назад

    Any updates on wpo and nanite? 5.4.3 , nanite increases my landscape performance in editor (i turn off during edit) but can't use wpo on landscape as it breaks camera move

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

    Cant you also just use the new model and materials as LOD?

  • @DreamTitanGames
    @DreamTitanGames 11 месяцев назад +2

    Perhaps this is caused in combinaation with virtual shadow maps requiring a recalculation with movement

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

      Yes that would make sense.

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

    I am working on 1 scene with alembic cache character build with the grass on the landscape, The problem is while rendering the shot its consuming too much of time around 2, 2:30 hours
    Can you help me with this. Is there any setting in material or in grass attribute which can help to reduce the render time?
    Thanks. :)

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

      Thanks fo rthe comment, without looking at your scene/project settings it's really hard to tell. Perhaps you could join my discord and post in the support forum. At least that way you can post pictures of the problem.

  • @xaby996
    @xaby996 11 месяцев назад +5

    The best way is to use a plugin which has 2 trees for each "tree". one is moving with no shadow. and the other is not moving, but invisible, while rendering just the shadow.

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

      Hi mate. Yeah I've heard of it. Super useful

    • @syedhs
      @syedhs 10 месяцев назад

      What is the plugin name?

    • @dr_j0nes
      @dr_j0nes 10 месяцев назад

      ​@@syedhsUE5.3 has this feature now built in

    • @joelbartor
      @joelbartor 10 месяцев назад

      He says that but don’t say the name of the plug-in , Jesus 🤦🏻‍♂️

    • @JoshuaMKerr
      @JoshuaMKerr  10 месяцев назад

      You need to search for Foliage Shadow Imposters. There's a github page for it.

  • @2BRE-
    @2BRE- Год назад +1

    hey, thanks for this tutorial, but you use the editor.... what about the build? is there much difference in FPS/performance on the build too?

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

      Sorry, I've no idea. I use Unreal for virtual production filmmaking. I don't make games.

    • @2BRE-
      @2BRE- Год назад +1

      @@JoshuaMKerr i will check and let you know

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

      @2BRE- Thanks man

  • @raphaelmillies-lacroix570
    @raphaelmillies-lacroix570 Год назад

    How much the simplewind version help with performance in this case ?

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

      I'm not sure, I haven't tried. My feeling is it wouldn't help much.

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

    Genius!

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

    Cant you do like the trees withinf your radius start moving and when its outside the radius it stops? You can use thwt for openworld games

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

      There is a setting for this but I see no performance difference. I have to unhook the wpo in the master material to get the fps back up.

  • @VDGames_Studio
    @VDGames_Studio Месяц назад

    Why not disable WPO in the material depending on the player's camera?

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

    Hi Joshua, loving the vids. You've got me wondering if there's a more flexible way to do this say by parenting a post process volume to the camera. Everything outside the volume has the offset off and everything inside has it on. That way, simply moving the camera around adjusts the offset on or off depending on it's proximity to the camera. Same effect but allows multiple shots to be set up without repainitng the foliage. I have no idea if this is possible by the way!

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

      Or perhaps a custom bluepint?

    • @wobbledaggerfilms
      @wobbledaggerfilms Год назад +2

      "Utilize the Camera Position material node as an anchor for your masks. For example, if you pair it with the Absolute World Position, Camera Direction Vector, and the Sphere Mask nodes, you can mask out a consistent location based on the forward vector of the camera in world-space.
      This masking method is helpful for adjusting the World Position Offset of foliage, fading out walls when the character is behind them, etc."
      Maybe this?

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

      I like the idea. Although I'm certain that the performance boost only occurs when it is disabled in the master material rather than by material attribute. So you would need to do the material switch via blueprint if that's possible. I'm not very good at blueprint though haha

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

      Maybe you could give it a go and let me know

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

      @@JoshuaMKerr It's definitely possible to change material during runtime using blueprints. You just have to create a node called dynamic material instance, and then you can switch between material instances by programming the blueprint the way you want to. I did it a few times when the client wanted some materializing effects for the scenario to show up from the infinite black background as a surprise, but the materialize effect was very heavy on performance. So one way I found to help me save some fps after the materialize effect was done, was to programmatically change the material instance to an identical, more simple material without the materialize effect hooked to it. I worked perfectly! Saving up fps and optimizing performance is the coolest thing ever!

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

    You are my hero. Just Now

  • @aegislighthammer7106
    @aegislighthammer7106 26 дней назад +1

    This is great for a fixed path through the trees, but what about wandering through an open world forest? Can't have some trees blowing and others not... So you use the player pawn's location to detect trees entering your vicinity and switch them to the blowy instance, and switch back when it leaves your vicinity. I think it's possible to switch to a low poly "tree blob" at far range to save triangles.

    • @IcarusTheEagle
      @IcarusTheEagle 3 дня назад

      I think this guy is more of a filmmaker with Unreal, so for his purposes, he will always have a fixed path. So I suppose this works for people who just want to set up scenes for filming rather than game dev

    • @JoshuaMKerr
      @JoshuaMKerr  3 дня назад

      @IcarusTheEagle Absolutely right

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

    There is also 1 very cool option - turn on RTX shadows in the direction light - it increases performance for me in almost each scene by at least at 50% buuuut it causes so many visual bugs and problems, so I would suggest using it only for dark scenes or where you won't see that problems)

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

      Fair enough. Thanks for the tip

  • @islandonlinenews
    @islandonlinenews 5 месяцев назад

    When I apply WPOD the trees just stop moving period. What is wrong?

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

      Without seeing your setup, it's impossible to tell. Maybe join my discord and post in tne support forum with images.

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

    i wonder if theirs a way to do this in blueprints where all the trees are static accept for the trees around u and when u move through the game it automatically enables and disables trees

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

      I'm sure there is but I don't do much with blueprints. I use unreal for filmmaking rather than building games.

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

      @@JoshuaMKerr ok thx a but of a random question so im learning ue5 im not sure if im going the game route or the film making route yet do u know of a good course that teaches ue5 for filmmakers (so lighting ,camera ,and sequencer and animation something like unreal senseis masterclass but for filmmakers or Evan something thats fully focusing on cameras ) will be much appreciated

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

    hm can be something done with making shadow of foliage to use less performance but still keeping and having shadows from trees, have ones cake and eat it too? I have noticed that shadows are causing my problem

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

      yeah same problem on my side, anyone have a solution?

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

      Its probably a mix of shadows and wpo. there is aparrently a setting in the foliage mode that allows you to cull the wpo by distance. try that.

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

    just use wpo evaluation distance and some kind of distance fade wpo function to hide the disable WPO moment

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

    Hi Joshua! Did you try path tracer with megascans trees in 5.1? There's no way to make the wind blow in pathtracer...tried everything. Do you know if in 5.2 its fixed? Thanks

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

      I haven't looked but may have to.

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

      @@JoshuaMKerr thanks for your reply. I find that wind doesnt work with nanite and pathtracer so have to deactivate nanite inside tree mesh to make it work. Cheers

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

      Aha. Good to know

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

    Is this still a issue in 5.2? turning off WPO is not practical in a real game.

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

      Culling would be better for games although my focus for the channel is cinematics and virtual production.

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

    Amazing Tutorial! Thanks!!!

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

    why not to switch off animation right in shader function by distance?

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

      I think it should work but there's something funky going on in my project so the gains aren't as much as if I unhook the node.

  • @jamesbrady1930
    @jamesbrady1930 5 месяцев назад

    is this applicable to a large map say 1.5km? meaning have a number of movable trees in the foreground? and the rest non-moving beyond that in the map?

    • @JoshuaMKerr
      @JoshuaMKerr  5 месяцев назад

      probably better off with some of the solutions people posted in the comments. Apparently, in the foliage tool, you can set the distance cutoff for world position offset.
      It just didn't work for me back when I published this video.

    • @jamesbrady1930
      @jamesbrady1930 5 месяцев назад

      pretty much what I did in the end with the distance offset. tried the other way, didn't do squat really.

  • @MrLarsalexander
    @MrLarsalexander 5 месяцев назад

    Why not add a material to a LOD that has WPO turned off?

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

    Is it problematic to put no WPO Material on distant trees using the LOD system which change the Material at LOD1 LOD2, LOD3... so at LOD1 it can use WPO, at LOD2, LOD3.. will use the No-WPO Material.
    Is it feasable? the probleme i see is that we have 2 Material. does it take a lots of performance?

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

      There must be an easier way. I'll see if I can figure something out.

  • @rifat.ahammed
    @rifat.ahammed Год назад +1

    Great

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

    Thanks a lot for your tips !
    Can we activate and disactivate the leaf movement of each tree when a player cross the forest ?

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

      I'm sure it's possible, but my channel is filmmaking and virtual production focused, so I'm probably not the best person to ask.

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

      @@JoshuaMKerr ok thanks for your reply Joshua !
      And congrats for your work !

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

      Thanks!

  • @TanukiSunGames
    @TanukiSunGames 10 месяцев назад

    What I found on the Unreal Learning website. I don't know if this is still the case.
    Currently, there are some limitations to Nanite. Some of these limitations may change with future updates. Here are some of the limitations:
    Materials for Nanite can’t have:
    Two sided materials
    Non-Opaque blend modes
    World Position Offset
    Pixel Depth Offset

    • @JoshuaMKerr
      @JoshuaMKerr  10 месяцев назад

      I think much of this has changed since I made this video

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

    Hello! very nice tutorial! Im'm running into an issue with my brushify grass - it is not showing with pathtracer enabled in viewport or on renders, but works in lit mode.. could anybody help please? I have no idea why it is happening but it was so nice to make levels fast with their materials and especially grass

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

      Interesting, I haven't come across this issue. Let me know if you solve it.

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

    I just recently found out that Unreal Engine got a "World Position Offset Disable Distance" for foliage types now. :) So no need for multiple materials any more.

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

      Is that not just part of the procedural content generation feature set?

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

    This is really strange. I haven't started using UE5 yet, but WPO shouldn't be affecting performance at all. That's the whole point of it. You get really low cost animation because you're simply moving the position of the verts. I wonder if it's something else that's actually tanking the performance.

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

      I'm sure it's some strange mix of WPO and virtual shadow maps buut I'm not sure. There's been at least two engine versions since then so maybe it's sorted.

  • @sanketvaria9734
    @sanketvaria9734 10 месяцев назад

    what if the trees are turned into LODs and let that drive the material swaping? Or alternatively maybe we can just animate the texture only at distance and not mesh to fool people into thinking it's a moving tree.

    • @JoshuaMKerr
      @JoshuaMKerr  10 месяцев назад

      I'll need to have another look at this, but when I tested it, I didn't get much improvement using other methods. Yours sounds like it would work

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

    4:45 would be simpler to have a material custom pin for those assets that only move on the actor with a tag. smart material.

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

    I am on a 1080 TI and my FPS are only 25fps with just 50 of these trees. At 150 trees I'm down to 10 FPS. How do you add so many trees and it's still smooth?

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

      Are you using nanite? Otherwise the GPU I'm using is the 3080, so maybe that.

    • @fullbars
      @fullbars 7 месяцев назад +1

      @@JoshuaMKerr Yeah I have other megascans assets from quixel bridge that work fine. But these trees from UE Marketplace kill my FPS

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

    why dont you multiply vertex offset by camera distance??

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

      I guess you could but im involved in cinematics and filmmaking. This works fine

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

      Ah, that makes sense

  • @Gamer-sv2mz
    @Gamer-sv2mz 8 месяцев назад

    hum . i have a problem . when i quit and i back on my scene , all the duplicated trees are gone ...

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

      That's very strange. I haven't come across that problem before

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

    THX FOR MIC NOISE

  • @skiobaldo
    @skiobaldo 22 дня назад

    Life Saver! s2 s2 s2

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

    I am surprised Unreal Engine is animating (wind) trees invisible to the viewer's viewframe.

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

      For sure.

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

      perhaps in case the trees cast a shadow that _is_ in the viewframe, or would significantly affect global illumination. I'm not sure what would be a good way to handle that scenario, but then again I'm not a game engine dev.

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

    Like other asset types the studios Ive worked for just use LOD's for the well... LOD's lol

  • @burov.a.4467
    @burov.a.4467 Год назад

    Thank you for a useful lesson! Please take a lesson on how to properly create a landscape and textures for it. Usually, when a landscape is created and the texture of the earth is superimposed on it, it looks stretched and not very detailed, it is interesting to find out how to make a landscape with textures of earth, stones, grass look detailed and realistic.

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

      It crossed my mind for sure. I'll see if I have time for some landscape material stuff.

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

    The ark devs should see this

  • @tirs0d
    @tirs0d 10 месяцев назад

    0:16 what are you right clicking here? its impossible to see you zoomed in on that menu way too hard

    • @JoshuaMKerr
      @JoshuaMKerr  10 месяцев назад

      Right click on any asset in content browser to see that.

  • @Cyberpunk_RZ
    @Cyberpunk_RZ 5 месяцев назад

    this is a half solution what if you build an open world?

    • @JoshuaMKerr
      @JoshuaMKerr  5 месяцев назад +1

      If you're in the game dev space, then yes, this isn't a solution for you. My channel is about virtual production, filmmaking, and cinematics.

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

    What you do is not the solution. World position offset drop fps because of VSM does not cache shadows. You cant close VSM, thats the only way of castig shadows on nanite. What you can do is disable cast shadows on nanite assets, make their duplicate, disable nanite on the new foliage, disable the imposter foliages visibility and enable its cast shadows. place the nanite tree and imposter tree on the same spor and orientation and size. Now you have cache shadows with nanite altho its not perfect its the only solution.

    • @JoshuaMKerr
      @JoshuaMKerr  10 месяцев назад

      I've seen there's a plugin that can do this.

  • @MichaelKocha
    @MichaelKocha 10 месяцев назад

    Yeahhh.... as long as your player character never moves, this is great. lol I guess if you needed performance on your title screen?

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

      I use unreal for filmmaking, that's what the channel focuses on.

    • @MichaelKocha
      @MichaelKocha 10 месяцев назад

      @@JoshuaMKerr That makes more sense. Sorry. I just stumbled across the video and didn't pay attention to the context.

    • @JoshuaMKerr
      @JoshuaMKerr  10 месяцев назад

      It's okay. I wasn't mega clear in the video:)

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

    Have you seen UnrealityBites solve similar problem using PCG in UE5.2?
    ruclips.net/video/9DY9Xe1KRW8/видео.html
    Not sure if this helps. But he has a good explanation on grass which should work with trees too.

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

      Yeah seems like a good solution if you're in 5.2 and using PCG.

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

    Thumbnail was clickbait, I came looking for a comparaison between low and high fps foliage. Skipping through the video shows no such thing.

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

      Sorry tha you feel that way. The video is about improving fps performance of foliage as mentioned in the title. I think the thumb tells that story.

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

    So your solution is ultimately, just to have less moving things... imagine that.

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

    Mean while every UE5 game launched have the worst performance possible and is absolute broken.

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

      Is that the case? I'm using UE for filmmaking mainly so haven't kept tabs on game releases.

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

    No like ??/ I cannot like it ??

  • @Vatk4LI
    @Vatk4LI 5 месяцев назад

    mate if you are here and trying to increase your projects performans just like me remember that the main problem is your system.

    • @JoshuaMKerr
      @JoshuaMKerr  4 месяца назад +1

      That's not always the case. Sometimes software can tank even the most robust computer. Optimisation matters

  • @marshals.
    @marshals. Год назад

    what why it's called european beech lol 0:12

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

    Damn it, thought this was for games until i got to the end. Waste

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

    It is irrelevant but I liked your face gesture while you are speaking. I couldn't help myself not to look at your eyebrows and your forehead. The way you use them made me lost my focus. But it was a great tutorial, though...

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

      Well that's nice. I didn't know I had hypnotic eyebrows

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

    nanite is garbage nothing help still sucks fps

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

      What's your biggest challenge with nanite

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

    THANKS for identifying this problem and finding a workaround. Lets hope EPIC will fix this soon, so that none of us have to fiddle around with the #megascans assets to address this issue...

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

      I really hope so. It's a pain really.