Announcement

Collapse
No announcement yet.

Is ~200k triangles per character too much?

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

    Is ~200k triangles per character too much?

    ...if I plan to have a max of 5-6 characters on the screen at a time?

    Or is geometry not that important anymore and draw calls are the main drag on performance? Or is it both?

    I'd like to provide 60fps at 1080p on a reasonably high-performance PC, i.e. GTX 970 level. Does anyone have any experience or wisdom to share? I'm not sure how to go about profiling performance bottlenecks...

    #2
    It depends™

    I certainly dont want 200k triangles for a single character to be rendered every frame when I am playing, but it's a different case for Cinematics.
    There are several Tools built-in in Unreal. Use "ProfileGPU" or "stat scenerendering" if you want to see what part of rendering is causing a bottleneck.
    The GPU Profiler also has the function to record a session, so you can have a detailed view over multiple frames.

    https://docs.unrealengine.com/en-us/...erformance/GPU

    Comment


      #3
      If you have reasonable lods for characters 200k might be doable. Some AAA games has around that much detail for main character.

      Comment


        #4
        Ok, thanks for the info!

        Comment


          #5
          Originally posted by Raildex_ View Post
          It depends™

          I certainly dont want 200k triangles for a single character to be rendered every frame when I am playing, but it's a different case for Cinematics.
          There are several Tools built-in in Unreal. Use "ProfileGPU" or "stat scenerendering" if you want to see what part of rendering is causing a bottleneck.
          The GPU Profiler also has the function to record a session, so you can have a detailed view over multiple frames.

          https://docs.unrealengine.com/en-us/...erformance/GPU
          Originally posted by Kalle_H View Post
          If you have reasonable lods for characters 200k might be doable. Some AAA games has around that much detail for main character.
          Do you know if 200k includes the clothing of the character?

          Comment


            #6
            I was including everything in my planned budget, clothing + hair + character.

            I've been reading that the main character in Horizon Zero Dawn has 100k triangles for her hair alone. And some other large character has more than 500k triangles. Of course I'd guess that not many such characters would be on screen at the same time. But this is for PS4, which I think has an equivalent of something like a GTX 660.

            I think materials will play a bigger role in performance, probably.

            Comment


              #7
              200K polygons is a lot sure... But some people need to finally understand that the amount of polygons is usually not the problem when it comes to performance issues, of course that doens't mean you should go totally crazy... Use what you need but keep it reasonable.

              Here is a list with polygon amounts used in AAA titles for characters... Horizons zero dawn, thunderjaw character had about 500K polygons beside 100K polygons for only the hair model of the main character Aloy, all this on just a console.

              https://polycount.com/discussion/141...n-games-thread

              Comment


                #8
                Originally posted by A-J-K View Post
                200K polygons is a lot sure... But some people need to finally understand that the amount of polygons is usually not the problem when it comes to performance issues [...]
                It's the easiest issue to prevent.
                Your vertices need to be transformed for every shadow casting light. which will sooner or later become a bottleneck.
                If you have a Directional Light with 3 Cascades it will mean your character's vertices will be processed atleast three times, which will result in 600k polygon transformations in the case of an initial 200k poly model.

                Comment


                  #9
                  Originally posted by Raildex_ View Post

                  It's the easiest issue to prevent.
                  Your vertices need to be transformed for every shadow casting light. which will sooner or later become a bottleneck.
                  If you have a Directional Light with 3 Cascades it will mean your character's vertices will be processed atleast three times, which will result in 600k polygon transformations in the case of an initial 200k poly model.
                  Cascades are culled individually. Only very big actors affect more than two cascades.

                  Comment


                    #10
                    Do you ever really see the full 500k triangles anyways or is that a bolstered triangle count for a lod0 that'a only visible when the actor takes up 300% of the screenspace.

                    Comment


                      #11
                      Originally posted by NotSoAccurateNo1 View Post
                      Do you ever really see the full 500k triangles anyways or is that a bolstered triangle count for a lod0 that'a only visible when the actor takes up 300% of the screenspace.
                      Alloy's LOD 0 is probably for cinematics only. As for Thunderjaw, an important thing to remember is it isn't just for polys per character, but size of the polys on screen. Thunderjaw is huge, so even though the polycount is very high, each on on screen poly shouldn't be that small, thus avoiding a lot of poly overdraw costs.

                      Of course for anyone making a game the real first question is what platforms are you targeting? PC, to what scale? Which consoles? Are you going to scale all the way down to Switch? Are you building to split between PS4/XBO and The PS5/Xbox... uhm, Eulers number?

                      Hopefully the missing Skeletal Mesh LOD tool will pop back up in some update, so you can make 250k poly character model and more easily LOD it down for lower spec platforms. But until such time as LOD is nigh invisibly easy, the above is a highly relevant first question.

                      Comment


                        #12
                        Originally posted by Raildex_ View Post

                        It's the easiest issue to prevent.
                        Your vertices need to be transformed for every shadow casting light. which will sooner or later become a bottleneck.
                        If you have a Directional Light with 3 Cascades it will mean your character's vertices will be processed atleast three times, which will result in 600k polygon transformations in the case of an initial 200k poly model.
                        Like i wrote before, triangels are no longer a real issue as long you stay reasonable, modern engines can handle them easily, the time of 8 sided barrels are over.
                        I gave you examples of a 500K triangle charcter that is used in a open world enviroment on a PS4, the game is using full dynamic lighting and it still runs over 30FPS. The biggest problems when it comes to performance issues, is the draw call amount, very complex "expensive" shaders, your vram, dymanic lighting and some other things.


                        If your barrel has 1500 triangles or 2500 triangels makes no more a difference, here on the forum is somwhere a article from a developer who told his experience about trinagles amount these days, for optimization purpose he cut out around one million triangles out of his scene and gained like 1 to 2 FPS more...

                        And again, have a look on how much poyls are used on current charcters in AAA titles, even on console. So there is not really much more to say....
                        Last edited by A-J-K; 02-16-2019, 10:34 PM.

                        Comment


                          #13
                          Originally posted by A-J-K View Post

                          Like i wrote before, triangels are no longer a real issue as long you stay reasonable, modern engines can handle them easily, the time of 8 sided barrels are over.
                          I gave you examples of a 500K triangle charcter that is used in a open world enviroment on a PS4, the game is using full dynamic lighting and it still runs over 30FPS. The biggest problems when it comes to performance issues, is the draw call amount, very complex "expensive" shaders, your vram, dymanic lighting and some other things.


                          If your barrel has 1500 triangles or 2500 triangels makes no more a difference, here on the forum is somwhere a article from a developer who told his experience about trinagles amount these days, for optimization purpose he cut out around one million triangles out of his scene and gained like 1 to 2 FPS more...

                          And again, have a look on how much polys are used on current characters in AAA titles, even on console. So there is not really much more to say....
                          Why exactly do levels with lots of foliage (trees/grass) seem to have such an impact on performance/FPS?

                          Comment


                            #14
                            Originally posted by tapirtoon View Post

                            Why exactly do levels with lots of foliage (trees/grass) seem to have such an impact on performance/FPS?
                            I mean this can have a few reasons, first of all... of course you could overblow your level with triangles, like i wrote before it's not like you can use ARCHVIZ like vegetation or models in your game scene without getting an impact on your FPS. If you have 100 chairs, each 180K triangle strong beside many other high poly models in your game scene, of course this wont work.

                            Second reason, draw calls but aslong you're using the veghatiation tool which should instance your vegetation clusters you should be fine, also in combination with LODs.

                            But the biggest problem beside draw calls is the opacity/Trasparecny on the vegation textures/shaders. There is a 80LVL article which explains how you get much better FPS using more trinagles or your vegetation cluster models instead of using big opacity/traslucency areas with low poly clusters .

                            Quote from the Article
                            "Due to the low shader complexity and low quad overdraw the performance compared to other grass foliages is higher, even with the higher vertex count."

                            https://80.lv/articles/creating-next-gen-grass-in-ue4/


                            https://www.youtube.com/watch?time_c...&v=UZH4vZ0NDAw
                            Last edited by A-J-K; 02-18-2019, 12:29 PM.

                            Comment


                              #15
                              It's not a problem if the game is a corridor simulator like RE2. But the amount of triangles aren't the issue, the problem is overdraw when the models are far away, and to solve that you will have to create a lot of LOD versions of your characters.
                              | Finite State Machine | Auto-Save Plugin | USQLite Plugin | Object-Pool | Sound-Occlusion | Anti-Cheat Plugin | Property Transfer Tool | Magic Nodes |

                              Comment

                              Working...
                              X