[Skin] Cache full hd skin images (1 Viewer)

glenn 1990

Portal Pro
July 1, 2010
247
36
Home Country
Belgium Belgium
Hi,

When starting mp with a full HD skin, I get a lot off these loggings:
Code:
2012-01-18 17:48:32.458157 [Info.][MPMain(1)]: TexturePacker: D3D device does support 8192x8192 textures
2012-01-18 17:48:32.459157 [Info.][MPMain(1)]: TexturePacker: using 2048x2048 as packed textures limit
2012-01-18 17:48:32.459157 [Info.][MPMain(1)]: TexturePacker: using 1024x1024 as single texture limit
2012-01-18 17:48:32.585165 [Warn.][MPMain(1)]: TexturePacker: Texture c:\programdata\team mediaportal\mediaportal\skin\avallonis\media\background.png is too large to be cached. Texture 1920x1080 - limit 2048x2048
2012-01-18 17:48:32.664169 [Warn.][MPMain(1)]: TexturePacker: Texture c:\programdata\team mediaportal\mediaportal\skin\avallonis\media\basichome_rss_bg.png is too large to be cached. Texture 1865x96 - limit 2048x2048
2012-01-18 17:48:32.678170 [Warn.][MPMain(1)]: TexturePacker: Texture c:\programdata\team mediaportal\mediaportal\skin\avallonis\media\basichome_top_menu_bg.png is too large to be cached. Texture 1893x717 - limit 2048x2048
2012-01-18 17:48:32.749174 [Warn.][MPMain(1)]: TexturePacker: Texture c:\programdata\team mediaportal\mediaportal\skin\avallonis\media\basichome_top_menu_bg_drop_fill.png is too large to be cached. Texture 1893x717 - limit 2048x2048

Is it possible to accept 1920x1880 images for caching, I guess this will speed up things.
 

SilentException

Retired Team Member
  • Premium Supporter
  • October 27, 2008
    2,617
    1,130
    Rijeka, Croatia
    Home Country
    Croatia Croatia
    To add: skin can define images to cache explicitly to speed up mainly loading of BasicHome window (which usually has loads of FanArt). This will increase GPU memory usage but also considerably increase speed of loading images and by that also speed of loading window. Images to be cached should be marked with <shouldCache>yes<shouldCache> tag in skin file. Do not (and I can't stress this enough) use this tag with image controls using GUI property. You are likely to waste GPU memory in no time.
     

    mbuzina

    Retired Team Member
  • Premium Supporter
  • April 11, 2005
    2,839
    726
    Germany
    Home Country
    Germany Germany
    Caching means that Skin Engine would build up a texture of multiple (small) textures. For more info: Gamasutra - Features - Practical Texture Atlases . There is no point up in wasting space when trying to pack big textures into texture atlases - it would just waste GPU memory.

    Sorry for the noob question, but the logging states:
    TexturePacker: using 2048x2048 as packed textures limit
    TexturePacker: using 1024x1024 as single texture limit

    I thought packed textures are what you describe, pack multiple textures into on to speed up

    So the single texture limit (should?) be the maximum size of a single image to be cached. Which could be fillsize HD in case of a background image for example. Loading this image for every window change would be costly.
     

    tourettes

    Retired Team Member
  • Premium Supporter
  • January 7, 2005
    17,301
    4,800
    Caching means that Skin Engine would build up a texture of multiple (small) textures. For more info: Gamasutra - Features - Practical Texture Atlases . There is no point up in wasting space when trying to pack big textures into texture atlases - it would just waste GPU memory.

    Sorry for the noob question, but the logging states:
    TexturePacker: using 2048x2048 as packed textures limit
    TexturePacker: using 1024x1024 as single texture limit

    I thought packed textures are what you describe, pack multiple textures into on to speed up

    So the single texture limit (should?) be the maximum size of a single image to be cached. Which could be fillsize HD in case of a background image for example. Loading this image for every window change would be costly.

    No, since if you pack 1920x1080 texture to 2048x2048 texture you will

    1) gain no real performance benefit - cached texture is nothing more than a texture in GPU memory
    2) will just waste GPU RAM - it will be hard to try to fit textures around the 1920x1080 sized texture

    What texture atlases is trying to improve is to reduce the texture context switches on GPU side.
     

    Users who are viewing this thread

    Top Bottom