summaryrefslogtreecommitdiff
path: root/src/common
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2015-08-16 22:17:12 -0400
committerbunnei <bunneidev@gmail.com>2015-08-16 22:17:12 -0400
commit1f18c9f8dd68b44fe949ef50e3fad753f4dc52d0 (patch)
treeafb04ab5b7ecce023d8b147c594d889c43a02263 /src/common
parent734f4b704147e1b42c318b2b7adab6ac27e04adb (diff)
parent7d0c17d2ae1d090ead31d9b412d707223575960f (diff)
Merge pull request #1034 from yuriks/rg8-textures
videocore: Added RG8 texture support
Diffstat (limited to 'src/common')
-rw-r--r--src/common/color.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/common/color.h b/src/common/color.h
index 9dafdca0c..eb199e308 100644
--- a/src/common/color.h
+++ b/src/common/color.h
@@ -69,6 +69,15 @@ inline const Math::Vec4<u8> DecodeRGB8(const u8* bytes) {
}
/**
+ * Decode a color stored in RG8 (aka HILO8) format
+ * @param bytes Pointer to encoded source color
+ * @return Result color decoded as Math::Vec4<u8>
+ */
+inline const Math::Vec4<u8> DecodeRG8(const u8* bytes) {
+ return { bytes[1], bytes[0], 0, 255 };
+}
+
+/**
* Decode a color stored in RGB565 format
* @param bytes Pointer to encoded source color
* @return Result color decoded as Math::Vec4<u8>
@@ -152,6 +161,15 @@ inline void EncodeRGB8(const Math::Vec4<u8>& color, u8* bytes) {
}
/**
+ * Encode a color as RG8 (aka HILO8) format
+ * @param color Source color to encode
+ * @param bytes Destination pointer to store encoded color
+ */
+inline void EncodeRG8(const Math::Vec4<u8>& color, u8* bytes) {
+ bytes[1] = color.r();
+ bytes[0] = color.g();
+}
+/**
* Encode a color as RGB565 format
* @param color Source color to encode
* @param bytes Destination pointer to store encoded color