How textures are managed in modern games ?
Hi all,
I am currently developping a 3D engine, and I came to a hardware question : The GPU's memory is limited, and in nowadays games, developpers and graphists use a lot of different textures for each object. I wondered if these textures were all loaded at the beginning of the "level", or if some of them were loaded on-the-fly during camera moves.
Not that I already reached my GPU limits, but if it could come with big levels... even if one uses DDS files.
Do anyone know something about GPU memory management ?
Memory management is done automatically by the OpenGL driver. It doesn't matter how much gpu memory there is. On some systems, there isn't even any gpu memory. On some systems, there is no gpu and all rendering is done by the cpu, just like the old days.
1GB texture data, all used in a frame with depth-prepass (overdraw minimization), drawing a spiced-up counter-strike:source level on a 256MB geforce8600: performance drops from 86fps down to 78fps.
That's how good gpus are :) .
(ofc, the PCIe doesn't/can't transfer 750-1024MB/frame; the gpu pulls just the smallest texture regions it needs - as if the texels were in a slightly slower VRAM).
That's how good gpus are :) .
(ofc, the PCIe doesn't/can't transfer 750-1024MB/frame; the gpu pulls just the smallest texture regions it needs - as if the texels were in a slightly slower VRAM).
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement