Josh Green
2013-07-22 07:16:16 UTC
Hi There,
I'm currently working on a texture streaming system and looking into ways
to prioritize which mips on which textures should be loaded.
I was hoping that people on this list may have experience with these
algorithms that they could share?
Currently I know which mips need to be loaded in order to render a scene
without degradation in image quality.
I would now like to apply a memory budget to textures, and make decisions
about which mips of which textures should be loaded over others.
My current line of thinking involves comparing cost / benefit of loading
each individual mip.
i.e.
How many pixels would be affected by a particular mip level being loaded
versus how much memory would that mip level use?
This becomes Priority = Benefit / Cost
I'd then sort for highest priority and assign memory budget to those mips
at the top of the list.
Any thoughts? comments? Alternatives that work better? Alternatives that
have worked enough?
Problems that arise with the above algorithm are quite broad, and in
particular, optimising the tipping point between cost and benifit would be
necessary. Also, calculating the number of pixels affected would involve
crude calculations that aren't really going to affect real world values....
Thanks all for your thoughts!
Josh
I'm currently working on a texture streaming system and looking into ways
to prioritize which mips on which textures should be loaded.
I was hoping that people on this list may have experience with these
algorithms that they could share?
Currently I know which mips need to be loaded in order to render a scene
without degradation in image quality.
I would now like to apply a memory budget to textures, and make decisions
about which mips of which textures should be loaded over others.
My current line of thinking involves comparing cost / benefit of loading
each individual mip.
i.e.
How many pixels would be affected by a particular mip level being loaded
versus how much memory would that mip level use?
This becomes Priority = Benefit / Cost
I'd then sort for highest priority and assign memory budget to those mips
at the top of the list.
Any thoughts? comments? Alternatives that work better? Alternatives that
have worked enough?
Problems that arise with the above algorithm are quite broad, and in
particular, optimising the tipping point between cost and benifit would be
necessary. Also, calculating the number of pixels affected would involve
crude calculations that aren't really going to affect real world values....
Thanks all for your thoughts!
Josh