>  But several people reported that hi-res aircrafts break fps in MP, and  
> downscaling liveries solves the problem (and this follows from Stuart's  
> email). But if mipmap _is_ applied to liveries, then why we have to have  
> lo-res liveries separately? Won't one of mipmap levels do the same? Note  
> that people complain about fps drop, not some load delay or space issues.

Full GPU memory leads to performance deterioration. If you load a hires 
texture, mipmapping doesn't automatically remove the hires maps from memory and 
keeps only the resolution level you actually need, it stores everything. Even 
if you effectively use a 128x128 mipmap, for memory and ultimately performance, 
it makes a difference whether this comes from a 128x128 sheet or a 4096x4096 
sheet mapped down.

> Also the question to GPU gurus: I think most aircrafts that have hi-res
> liveries do so because of several small signs here and there.  So does it
> makes sense to have a lo-res opaque texture that paints aircraft's body,
> and then a hi-res transparent one that places signs on top of the first?
> This way hi-res texture will be mostly "empty" - will it substantially
> improve GPU cycles and memory usage?

I don't think so - that'd potentially only help if you would store compressed 
textures (see the dds issue), but we don't, and so it would just make memory 
usage worse. In addition, transparent bits are always more difficult to render.

There's some clever things you can do with shader effects which save memory 
(and sometimes even end up being fast) - but that gets difficult to implement 
for aircraft creators.

* Thorsten
October Webinars: Code for Performance
Free Intel webinars can help you accelerate application performance.
Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most from 
the latest Intel processors and coprocessors. See abstracts and register >
Flightgear-devel mailing list

Reply via email to