Performance Optimization for Environments | Inside Unreal
ฝัง
- เผยแพร่เมื่อ 13 พ.ค. 2024
- Join us as we dive into a work-in-progress Quixel sample scene and learn tips and tricks to improve your environment's performance. We’ll cover how to diagnose performance problems affecting your environment, how to resolve them, and how to ensure your environment is staying as performant as possible throughout production.
TIMESTAMPS
00:00 News
06:00 Performance Metrics Overview
09:20 Fps and MS breakdown
13:01 Scene performance breakdown
13:42 Launch apposed to play in editor
15:19 Unreal Insights
20:30 Console commands for stats
22:10 Performance blueprint
25:55 Performance analysis
26:42 Cascade Shadows
31:00 Distance Field Shadows
32:55 Basepass & Prepass
33:45 Dynamic Mesh Instancing
35:49 Occlusion
36:24 Draw Distance
40:53 Render Doc
45:37 Quad Overdraw
46:29 LODS
51:05 LOD groups
51:40 Bulk Edit
53:40 Foliage Grass Type
57:55 Frustrum Culling
1:00:40 Bulk Edit Property Matrix
1:04:10 Texture Groups
1:12:00 Construction without affecting visual quality
1:14:23 Merging Actors
1:22:19 In level blockout prototyping
1:23:30 Z Pass
1:32:15 Post Process & GPU vis
1:35:20 Material analysis
1:39:46 Performance budget
1:45:10 System scaling for different platforms
1:53:25 Q&A
2:28:07 Stream wrap up
TRANSCRIPT
epicgames.box.com/s/stimqr8ji... - เกม
Interested in additional questions that were asked? Check out the forum post for Performance Optimization for Environments: forums.unrealengine.com/unreal-engine/events/1825312
Want to join the conversation and engage with the Unreal Engine Community? Here are some links to get you started...
Unreal Engine Website -
www.unrealengine.com/
Unreal Engine Forums -
forums.unrealengine.com/
Unreal Online Learning -
www.unrealengine.com/onlinelearning-courses
Unreal Slackers Discord -
unrealslackers.org/
Communities Unreal Engine -
communities.unrealengine.com/
Documentation for topics mentioned in the stream:
Unreal Insights:
docs.unrealengine.com/en-US/Engine/Performance/UnrealInsights/index.html
RenderDoc:
docs.unrealengine.com/en-US/Engine/Performance/RenderDoc/index.html
View mode:
docs.unrealengine.com/en-US/Engine/UI/LevelEditor/Viewports/ViewModes/index.html
LODS:
docs.unrealengine.com/en-US/Engine/Content/Types/StaticMeshes/HowTo/LODs/index.html
Virtual Texturing:
th-cam.com/video/fhoZ2qMAfa4/w-d-xo.html
docs.unrealengine.com/en-US/Engine/Rendering/VirtualTexturing/index.html
Visibility and Occlusion Culling:
docs.unrealengine.com/en-US/Engine/Rendering/VisibilityCulling/index.html
Performance and Profiling:
docs.unrealengine.com/en-US/Engine/Performance/index.html
GPU Profiling:
docs.unrealengine.com/en-US/Engine/Performance/GPU/index.html
Actor merging:
docs.unrealengine.com/en-US/Engine/Actors/Merging/index.html
Project Settings:
docs.unrealengine.com/en-US/Engine/UI/ProjectSettings/index.html
Rendering and Graphics:
docs.unrealengine.com/en-US/Engine/Rendering/index.html
Post Process Materials:
docs.unrealengine.com/en-US/Engine/Rendering/PostProcessEffects/PostProcessMaterials/index.html
Post Process Effects:
docs.unrealengine.com/en-US/Engine/Rendering/PostProcessEffects/index.html
Hierarchical Level of Detail:
docs.unrealengine.com/en-US/Engine/HLOD/index.html
Source Control:
docs.unrealengine.com/en-US/Engine/UI/SourceControl/index.html
th-cam.com/video/JxXydvG4mlI/w-d-xo.html
Spyder: From Day Zero to Post-Launch | Inside Unreal -
th-cam.com/video/TRVmRtMrsGg/w-d-xo.html
For changing cameras, you could’ve used a node call skip next frame (or something like that) to avoid that blurry frame
when i modify the coordinates of one material in its blueprint it modifies the coordinates of every material in my map, for example if i modify the coordinates of the material of my terrain, it also modify the coordinates of the tiles texture on my walls, why is that? ps im new to ue
This is actually a gold mine. Finding a easy to follow guide that is as compressive and informative as this is vary rare for a game engine
Thanks so much for covering almost all the topics! Very useful!
47:37 - I couldn't agree more, the autolod feature is a massive gamechanger. A lot of people dont use it because they doubt its power. For 95% of static meshes it works perfectly.
Used it for my project to fix bad lods of some free assets. Saved about a few days of my lifetime.
Oh Joe is here xD
Hey guys, Joe Garth here.
Works even with characters without breaking animations :)
Really Helpfull, managed by that to get my scene from 50ms to 15-25ms!
Very informative.
Also way cool you guys're going to hook us up with all the assets to follow along with this!
Cheers from Sweden! Very good info. I will be waiting for the source you guys promised. Peace and keep up the good work.
Quixel guys are always a gold mine of knowledge. thank you.
Damn that intro was trippy asf
Wow you guys are a whole different level... Fascinating!
Was watching this live earlier today, but had to leave midstream to attend class. Glad that this was posted as the subject is of great interest to myself and my team project!
Thanks for the video: very interesting idea here especially the one behind the material. Thanks again
Thank you guys! This helped me a lot.
Thank you all! Very cool!
Thank you for these videos, also I really do not understand the complaints about a long video, performance is a pillar of game making and has many different topics (As shown in the video). So thank you for this amazing lecture :)
@@nbd4130 if you're being paid this is already second nature to you
Ah, homework! Thanks, Epic!
Perfect timing as I will be working on environment for the next part of my Medieval co-op action adventure story-based game
when i modify the coordinates of one material in its blueprint it modifies the coordinates of every material in my map, for example if i modify the coordinates of the material of my terrain, it also modify the coordinates of the tiles texture on my walls, why is that? ps im new to ue
this was so much fun, though i know most of it and still get less fps LOL
but it was just so much good to hang out with these amazing guys, im 2 years late but it still felt like im present there
Thank you for this amazing helpful video!
Holyfuck the stat RHI is so fucking usefull. My 8kmx8km landscape with procedural foliage was 17FPS, with changes to the max draw distance per foliage type am now running at 42fps 23ms.
Went from a like 15million + tris to 6million tris, 2700+ drawcalls to 1500+ drawcals!
Have at least tried to like this video about 3 times in various periods in time 😆 thanks a lot :)
Thank you very much for this stream I appreciate it.
when i modify the coordinates of one material in its blueprint it modifies the coordinates of every material in my map, for example if i modify the coordinates of the material of my terrain, it also modify the coordinates of the tiles texture on my walls, why is that? ps im new to ue
Super helpful lesson!
Thank you so much, and it is very well explained!
when i modify the coordinates of one material in its blueprint it modifies the coordinates of every material in my map, for example if i modify the coordinates of the material of my terrain, it also modify the coordinates of the tiles texture on my walls, why is that? ps im new to ue
Thank you so much this video is really useful for me
So incredibly useful video. Thank you!
when i modify the coordinates of one material in its blueprint it modifies the coordinates of every material in my map, for example if i modify the coordinates of the material of my terrain, it also modify the coordinates of the tiles texture on my walls, why is that? ps im new to ue
Awesome! Thanks for sharing your knowledge ... now i have to install the 4.25.4 Source, reproduce your steps and get my 60 FPS back haha :D
great video! one thing though is not the entire BP_PerfAnalysis setup was shows, I would like to create this blueprint for my own project so I was wondering if there was another video out there that shows how to set the whole thing up? I followed along for everything that was shown but some of skimmed over
This was terrific. Trying to transition from physical set design to virtual art prod., this was crucial to understand in building out levels. Cheers gang.
Where can I download this project from Epic? I thought they said in the video it would be available free after the stream at some point?
Thanks for making this. Very useful tips! I had a question about lighting though. We're making a VR game in UE4 which has a persistent level, a start screen level (pick character, load game, etc) and then a handful of game map levels that stream in/out depending on the player location. The map levels are varied environments, so have different sky spheres, weather, etc. In terms of lighting, should we have seperate lighting settings (post process, lightmass importance volume, etc) for each bit of map (with only a skylight in the persistent level, since you can only have one per world)? Or what exactly do you put in the persistent level for a VR open world game?
when i modify the coordinates of one material in its blueprint it modifies the coordinates of every material in my map, for example if i modify the coordinates of the material of my terrain, it also modify the coordinates of the tiles texture on my walls, why is that? ps im new to ue
Thanks guys I’ll be watching tomorrow before I get to work on more of my game
I have a hard time digesting all the info in these long-form videos. Maybe someone at epic could timestamp them?
Pen & paper it. ✍️ Like you're in school. 😝
@@Kridian01 what you mean?
The timestamps, as well as further documentation for topics mentioned, have now been added to the video. Apologies for the delay in these!
@@UnrealEngine btw. i am vegan
@@bestboy007 bruh
you guys rock!
Does the virtualtexture sample parameter work with 4.26? In 4.25 we couldn't use landscape material instances for multiple rvts. Which made rtvs only usefull for non worldcomposition projects
I wonder where I could find the project for downloading and checking out the landscape material since you mentioned that would be possible. Cheers
Hi, very useful video, first thanks for posting.
My question is: how do I handle cull distance when I look through binocculars? The distance from foliage and camera stays the same, but it should be rendered, when looking through the binocculars. Is there a chance to change cul distance with blueprints?
when i modify the coordinates of one material in its blueprint it modifies the coordinates of every material in my map, for example if i modify the coordinates of the material of my terrain, it also modify the coordinates of the tiles texture on my walls, why is that? ps im new to ue
oke this is going to take some popcorn :)
1:26:40 you used quad overdraw and the cloud complexity is shown. this doesn't work for me. In fact one of the optimization viewports show the volumetric clouds. How do you show them ?
great video
I recently had a transition from unity to unreal and I find this very helpful thanks!
when i modify the coordinates of one material in its blueprint it modifies the coordinates of every material in my map, for example if i modify the coordinates of the material of my terrain, it also modify the coordinates of the tiles texture on my walls, why is that? ps im new to ue
HI^, thanks for everything Unreal! Can you please elaborate about debugging the hitch problem? Victor mentioned something about statStartHitch or something? If nothing else, maybe I could try async loading(about to dabble), but I was hoping to have a better understanding.
I think that lead me to the Output Log which clues me to most of my problems.. Haha! Still open for better understanding. Much appreciation!!!
If you enable stat dumphitches we should output files to the Saved folder with information about those hitches.
Amazing check here also
For the insights, I can't get the start/stop to work. When I launch the game with the commands (-trace=gpu,cpu) - it's a continuous recording. I use a very similar blueprint to record fps/snap shot/switch cams. You can name them too which is nice. But I can't start/stop this trace. I'm not using a source built project, could that be the problem?
I think I forgot to mention that trace.start/stop is new in 4.26! Sorry!
Does anybody know what [unaccounted] includes?
Has the sample scene for this been made public yet?
So when i tried the merge actors at 1:16:40 my numbers didnt change. What could cause this?
1:32:16 140 asset editors were open when the editor was last closed. Would you like re-open them?
-Sure, why not ¯\_(ツ)_/¯
at 13:33 When he talks about setting up his cameras for profiling, is there any tutorials or explanations to do this step?
@C. A. Husted Thank you so much! So much of this is just learning and finding the names of concepts to follow
For those (like me): Comparing apples to apples means comparing things that can reasonably be compared, while the phrase apples to oranges often is used to represent a comparison that is unreasonable or perhaps impossible.
when i modify the coordinates of one material in its blueprint it modifies the coordinates of every material in my map, for example if i modify the coordinates of the material of my terrain, it also modify the coordinates of the tiles texture on my walls, why is that? ps im new to ue
😍😍😍😍❤️❤️❤️
When I rendered 10 seconds of a scene with .jpg output, the result came out with noise, how to solve this?
where can I find the whole blueprint shown in the movie (from screenshots)
It will be available on marketplace for free (whole project from livestream).
@@igorkoniaev1540 i know, but when?
@@patrykleveldesign same question. Ping me when you know pls
Max performance boost
Everything in your level should be set to static if it's a mesh or something you can't interact with... Turn off cast shadows on everything that doesn't need it.. Newspapers on the ground... Floor meshes... Distant scenery... Etc...blueprints that don't need to update should have tick enabled turned off... Use merge actors for prefabing groups of smaller actors... The less actors the better, that's why you use merge... Lights should only be set to movable if they need to move... If you only need to adjust intensity they can be set to stationary... Otherwise set them to static... The less blueprints you use the better performance...
Only use get all actors once in your entire game.. Give every actor you need to get a tag.. Get all actors with tag.. Give them another tag and use the second tag to sort them and add them to arrays for usage...
Recycle your single trace... Sweep instead of using multiple traces...
Pls vfx and texture tutorial
1.What impostor baker did they talked about? Do we have any inside engine?
2. Will this scene be available for download?
wow, dense juciy smoothie
Start Benchmarking Cameras - ke * startperf
Set Specific Camera - ke * setcam 2
This is a great companion piece for Joe Gath's Unreal Environment courseee
www.learnsquared.com/courses/unreal-environments
dude... thank the lord i found this
3:06 this was when Victor took it personally after Matt tried doing his job lol
@@ethanwasme4307 Lmao
changing z pass killed my framerate. it added about 10ms.
Can anyone suggest a good PC setup to build quite graphically demanding games?
"stat gpu" is unusable for me. it makes the editor runs at 4 fps and the first thing eating all performance are "GPUSceneUpdate" and "VisibilityCommands"
Can anyone explain to me why all this is important if you can migrate your project to ue5 once it’s released ?
10:55 Matt I need a mentor \^_^/
My fps still goes from 120 to 20 fps as soon as I place a landscape and a light in a scene. That's my fault, I see too large and shouldn't use AAA concepts like lights, materials, meshes, rendering, programmation
or you computer is as powerful as a toaster
I see a deluge!
Your community manger is about to hit the EDM / synth wave
scene.
Please support them 💞
toggledebug camera stat gpu stat RHI (control + shift + comma
25:59 dont mind me
15:28
Can they remove dust particles in fortnite
do you like fortnite do you like fortnite ?
@@pro.giciel9084 yes
i learned as soon as i started making games is that the reason games run poorly is grass... freaking grass...
Perforce is just so awful to use. I wish there was some competition in that space.
never assume that we arent gonna be up in the sky looking down. cheap shortcuts are immersion breaking and come off as lazy regardless what the reason is. If theres no roof on the building I'm going to end up seeing it and be disappointed
53:00 I'd leave my wife for my mistress but I'd never leave my PC
i wish you guys would just show us a huge detailed city scenes with grass trees highly over scaled texture quality and lights that are really close together with shadows turned on and then show us what to do in under 30 min to optimize all of it! thats all the human race needs all this other stuff is to much!!!!!!!! just open that shader complexity option and stat fps and show us how to get to all green fast and close to 60 frames on large very detailed scenes!!! this is so frustrating and once we as people usual figure it out it could have been explained in a few min!! so what gives Human Race??
I'm racist I hate Human Race
Unreal engine crash's all the time, its the one thing that i hate about it, ive even had it crash on new project before i even did anything to that new project lol
"and that has all of my perf cams in it" haha xD Am I the only one getting the joke? :P
🤍🖤
we also need short and concise videos ...20 mins max. Your welcome.
You are free to go buy these elsewhere :)
hey
These are waaay too long man, timestamps or editing would be so ideal
They mentioned in this livestream that they'll add transcripts for this video, also in different languages. So once they did that you can download the transcript and search in the document for your desired keywords. anyway, timestamps would make it much easier.
Apologies for the delay in the timestamps. They have now been added! :)
Зачем это показывают, если через 2 месяца выйдет Unreal engine 5?
Ну вышел, и что? Так же повыходило много лагающих игр на этом движке. Наниты, dlss и прочие штуки нифига не помогут, если забить болт на оптимизацию
Before I waste 2 hours of my life, is this video any helpful or I should just skip it?
28:05 Lies. That is a bit over 30 000 units away
Poor dog I liked my own commet how sad.