setColorRgbaB method

void setColorRgbaB(
  1. PvrtcColorRgba c
)

Implementation

void setColorRgbaB(PvrtcColorRgba c) {
  final a = BitUtility.BITSCALE_8_TO_3_CEIL[c.a];
  if (a == 7) {
    final r = BitUtility.BITSCALE_8_TO_5_CEIL[c.r];
    final g = BitUtility.BITSCALE_8_TO_5_CEIL[c.g];
    final b = BitUtility.BITSCALE_8_TO_5_CEIL[c.b];
    colorB = r << 10 | g << 5 | b;
    colorBIsOpaque = 1;
  } else {
    final r = BitUtility.BITSCALE_8_TO_4_CEIL[c.r];
    final g = BitUtility.BITSCALE_8_TO_4_CEIL[c.g];
    final b = BitUtility.BITSCALE_8_TO_4_CEIL[c.b];
    colorB = a << 12 | r << 8 | g << 4 | b;
    colorBIsOpaque = 0;
  }
}