Hello everyone,
I have done few 2D games. I have a solid understand of most of the techniques that are used in 2D games. But I haven't worked with 3D yet. I'm wondering, How do game engines deal with loading so many textures without running out of VRAM?
So lets say you have a 100 models. each model have a 4k texture. Now each texture size is roughly around 67MB (4096x4096x32). So if we render all 100 models with 4K textures that would have a size of 6.3GB (100 x 67MB). Most video cards have 1-2GB of VRAM. So how do engines deal with that amount of data?
I understand that engines use Occlusion Culling to only draw models that face the camera. Is that how they also deal textures? Load only textures that are visible to the camera? Do they load it at runtime? That might be slow. Do they use some kind of Level Of Details algorithm to only load the 4K textures when you're close to it? i don't know.
How is this done exactly?