Hi forgive me if this is a dumb question but I'am getting major lag and slow down with my scene, I've just upgraded from a 2Gb GPU to a 1070 8Gb card as I was experiencing major lag half way though the project, this initially fixed the problem but I'am again experiencing severe lag when the majority of the scene is loaded, the models are all fairly low poly and the textures all 2K looking at my computer specs I shouldn't really be experiencing these problems, all settings like global illumination etc are all low and I've even tried working in 50% resolution but still its slow, is there something really obvious that I'am missing?? It's my final year project at University which was actually due in last week but due to a death in the family I've ben given an extension and I'am in fear of missing it and essentially wasting three years at Uni, any suggestions would be most welcome... cheers
Replies
Polygon count is a factor as well, total polygon count is more important than per object, so if you have an average of 20k triangles per mesh, but you have 100 meshes, that's 2 million triangles. Having many dynamic lights and many (even if each is relatively low poly) will be an issue was well. For instance, if you have 100 objects at 5k tris each, that's 500k triangles. Each light that hits those models basically has to draw them again, so if you have 20 lights hitting your 100 objects, that's roughly equivalent to 10 million triangles.
Texture size generally doesn't make a difference to performance. The exception here is if you have so many textures loaded that they no longer fit into video memory. For instance a 2K texture isn't a problem, but 100 2K textures may be.
Certain shaders are more expensive than others as well, for instance a material that uses the skin shader or anisotropic shader will be take a significantly bigger performance hit than a standard shader.
If you can provide more information about the details of your content, and the way your scene is set up, I may be able to give you more advice.
You've got a video card with 8GB of ram, so you should probably shoot for something more like 6GB max of VRAM usage, to leave memory for the textures + shadow maps and other rendering stuff.
Unfortunately we don't have a feature to manage max texture resolution inside of Toolbag, so you would need to resize the textures manually.
If you check the task manager, you'll see system ram usage. 30GB is indeed very high. I have what I would consider a complex scene here, with over a million triangles and about 85 textures around the 2K range, and I'm seeing system RAM usage at about 2.8GB.
For video ram (the amount of RAM your video card has), there is no easy way to check the usage, but we can estimate with the equation from my post above.
If you're seeing 30GB of system RAM usage, there is likely some sort of problem with the program, or you're simply trying to load more data than your computer can handle. For instance, if what you meant was that you had 100 materials with 2K textures, assuming 4x textures per material that means something like 400 textures and 48GB of video memory.
Without having a look at your scene, there isn't much further advice I can give. If you would like us to debug it, you can package up your scene and send it over. The easiest way to do this is to go to file -> export -> scene bundle, then zip up the .tbscene and /assets folder and upload it to a service like Dropbox or Google Drive. You can PM me a link to that or send it to joe@marmoset.co