EClark1894 opened this issue on Mar 24, 2020 ยท 40 posts
Warlock279 posted Thu, 30 April 2020 at 4:31 PM
LuxXeon posted at 4:17PM Thu, 30 April 2020 - #4387701
This is a very interesting point, and very true. Textures are one of the biggest killers to resources, especially GPU rendering. Most of the time geometry isn't much of a concern by comparison. I think this is from years and years of learning the opposite mode of thinking in the gaming community that we have always been taught to lower poly count rather than worry about texture sizes. This was true when CPU rendering was the driving force behind most rendering engines, but now that GPU has taken over and CPU power has increased exponentially, the real concern is limited VRAM and "draw calls" to the GPU.
Triangles from a mesh are sent to the GPU as a draw call each time a new piece of geometry is encountered in the scene. It is much faster for a GPU to transfer a million tris all at once than it is for the GPU to transfer 100 triangles 1000 times. Each draw call means the GPU has to stop, hold, and wait for the slower CPU to transfer scene information to it. This is time-consuming if you have 1000 draw calls happening in a scene. So it can actually be much better to have one object with many triangles than many small objects with fewer triangles of the same overall total when it comes to GPU rendering, and large image textures are usually the main limitation on lower-end cards.
Very true! Draw calls hold for textures as well, if you have a bunch of small textures that are always used together, you might be further ahead to combine them into a single sheet; kind of like a "detail" or "trim" sheet. You'll almost certainly hit resource limitations with textures [LONG!] before you'll hit them with raw polygons, especially when it comes to static meshes. Dynamic meshes, stuff that's being deformed, can get a little resource intense but that's more of a processor task than it is a memory sink, and RAM is what you'll likely eat up first anyway.
Core i7 950@3.02GHz | 12GB Corsair Dominator Ram@1600mHz | 2GB Geforce GTX 660
Lightwave | Blender | Marmoset | GIMP | Krita