• Don't use BGRA8 unless GL_EXT_texture_storage is available

    We recently changed to use the glTexStorage* family of functions,
    along with sized internal format types, such as BGRA8. Unfortunately,
    the GL_EXT_texture_format_BGRA8888 extension does not provide BGRA8 as
    a valid format unless the GL_EXT_texture_storage extension is also
    available, which is not usually the case on GLES3 as glTexStorage*
    are built in.
    
    Unfortunately this means we must fall back to using glTexImage* rather
    than glTexStorage* when dealing with BGRA data. Longer term it will
    make sense to ensure the provided data is in RGBA format, as the
    benifits of immutable storage are desirable.
    jamienicol committed Oct 31, 2018