Search Unity

ETC2 compression used despite API being set to OpenGL ES2 only?

Discussion in 'General Graphics' started by Percy-Pea, Dec 9, 2016.

  1. Percy-Pea

    Percy-Pea

    Joined:
    Aug 31, 2014
    Posts:
    75
    It looks like ETC2 compression is still used when building for Android when the player settings is set to only have OpenGL ES2 (which from my understanding doesn't support ETC2).

    Is this correct? Or am I likely doing something silly?

    I'm testing it by having a simple scene with a 2048x2048 transparent sprite in it and compression on. And publishing it for Android with only OpenGL ES2 API enabled in player settings. I'd expected the sprite to use 16MB memory (uncompressesd 32bit) but it's using 4MB, showing that ETC2 is being used. (ETC1+Alpha would be 6MB).

    My guess is that because my device supports OpenGL ES3, and therefore ETC2, it's using the compressed texture despite me telling Unity not to use OpenGL ES3? (In reality, this isn't a problem, i'm just quite curious as to if that should be happening) :)

    Thanks.
     
  2. alior

    alior

    Joined:
    Sep 6, 2014
    Posts:
    25
    Even some devices with es2.0. It depends on as extensions and hardware capabilities.