Sign in to follow this  
pierdek

Performance requires more love

Recommended Posts

Hi,

5a56460e9f8a0_CreateNewTopic-EscapefromTarkovForum-GoogleChrome.thumb.jpg.b62b6607b863dc35220f0a3f8cc33daa.jpg

I was playing customs in offline mode, framerate on this map and the other maps where there are buildings (especially spa zone on shoreline) is not very good.

I'm playing on this computer:

Intel I9 7920X , ZOTAC GTX 1018, 32 GB RAM

the average fps on max settings is around 45 frames, I would expect stable 60, I do not have problems with GPU performance, but with CPU performance. I'm not talking about occasional hitches when scav is spawning or joining I'm talking about frame drops where you looking with the scope sitting or watching building areas.

 

Then I've decided to analyze single frame on customs in RenderDoc, this is a useful tool to debug timings and draw calls came to GPU. 

 

Prof that renderdoc is working fine, compare final scene with the screenshot below:

valid_rendering.thumb.png.fbbca7abd650f46505dbe0e4afb46c5e.png

 

As you see the game is rendering some part of AK47.

 

Then very bad examples:

 

bad_rendering1.thumb.png.3a23cabde885d5d2ebce7edb8751eeca.png 

 

Garbage at the end of the map, why this thing is rendered at all?

 

bad_rendering2.thumb.png.f9003283617598a9d2fbf34285d37866.png

 

Some sort of weapon that is on the other side of map, on the right side of screenshot you can see how it looks on the screen.

bad_rendering3.thumb.png.7eca802f1e9bcf44ceba944cf0538c3e.png

My candidate train cart ;)

 

I'm not here to laugh at you, I'm here to point some problems how the maps are built and what land on the GPU. Sooner or later you will finish this great game, but if game need uber computer it will not sell well.

So:

  1. Do not render small non related to gameplay geometry - golden rule if you don't see it don't render it;
  2. Make lods for complicated models;
  3. Merge geometry, especially in building areas this will save CPU power in order to compute visibility;
  4. Use some sort of engine mechanics to cull objects that are behind other objects: https://docs.unity3d.com/Manual/OcclusionCulling.html

 

Regards

Pierdek

 

 

 

 

 

Edited by pierdek
  • Like 1

Share this post


Link to post
Share on other sites

While the advice is on point, I feel like there's still time for optimization. I find it to be the last step in a game making for a reason. Still, those might be the things the devs just missed, so great job ;)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this