Search Unity

Question About TextureSheets Efficiency in mobile Platforms

Discussion in 'General Graphics' started by Erfan_SheikhHoseini, Apr 30, 2019.

  1. Erfan_SheikhHoseini

    Erfan_SheikhHoseini

    Joined:
    Feb 7, 2019
    Posts:
    32
    we have multiple scenes in our game and each scene have only one Material (because we think it reduces drawcalls). we used a big texture-sheet (2048*2048) and arranged uvies the way to texture our objects.
    here is the texture:
    Capture.PNG
    and the result is like this:
    Capture2.png
    first: is it efficient on memory?
    second: anywhere we used gradients compression caused problems for us.
    Capture3.png
    is it better to put these gradients out of the texturesheet and use them in seperate materials?
     
  2. Torbach78

    Torbach78

    Joined:
    Aug 10, 2013
    Posts:
    296
    bottlenecks depend on the context of the entire game so we won't know if this is a better practice for you

    however things to consider
    1. separate RGBA from RGB
    2. RGBA using PVRTC compresses horribly (even @4bpp)
    3. gradients can be much smaller textures (uncompressed) and look fantastic, billinear filter will keep them smooth
    4. certain gradients can just be highly simple vertex color, (your checker pattern is easily just simple geo and vertex color)
    5. your entire 'green' layout can be optimized into 2 "layers" of opaque geo
    • 1 gradient to handle your color rampings
    • a few RGB geo polys floated above that contain your green texture mindfully painted with it's edges to give the illusion of blending with the geo below
    • or ,to make it a bit easier, model a RGBA 'skirt' around those textures to blend
     
    Last edited: Apr 30, 2019
    Peter77 likes this.
  3. richardkettlewell

    richardkettlewell

    Unity Technologies

    Joined:
    Sep 9, 2015
    Posts:
    2,285
    Also beware bleeding of neighbouring elements in the mipmaps as you don’t have any padding between elements.
     
    Peter77 likes this.