public virtual PixelFormat GetSupportedAlternative( PixelFormat format )
{
if ( CheckFormat( format ) )
return format;
/// Find first alternative
PixelComponentType pct = PixelUtil.GetComponentType( format );
switch ( pct )
{
case PixelComponentType.Byte:
format = PixelFormat.A8R8G8B8;
break;
case PixelComponentType.Short:
format = PixelFormat.SHORT_RGBA;
break;
case PixelComponentType.Float16:
format = PixelFormat.FLOAT16_RGBA;
break;
case PixelComponentType.Float32:
format = PixelFormat.FLOAT32_RGBA;
break;
}
if ( CheckFormat( format ) )
return format;
/// If none at all, return to default
return PixelFormat.A8R8G8B8;
}