diff --git a/glm/gtx/color_space_YCoCg.inl b/glm/gtx/color_space_YCoCg.inl index 1ca2e5be..bfff3519 100644 --- a/glm/gtx/color_space_YCoCg.inl +++ b/glm/gtx/color_space_YCoCg.inl @@ -38,9 +38,9 @@ namespace glm ) { tvec3 result; - result.x/*Y */ = rgbColor.g / T(2) + (rgbColor.r + rgbColor.b) / T(4); + result.x/*Y */ = rgbColor.g * static_cast(0.5) + (rgbColor.r + rgbColor.b) * static_cast(0.25); result.y/*Co*/ = rgbColor.r - rgbColor.b; - result.z/*Cg*/ = rgbColor.g - (rgbColor.r + rgbColor.b) / T(2); + result.z/*Cg*/ = rgbColor.g - (rgbColor.r + rgbColor.b) * static_cast(0.5); return result; } @@ -50,9 +50,9 @@ namespace glm ) { tvec3 result; - T tmp = YCoCgRColor.x - (YCoCgRColor.z / T(2)); + T tmp = YCoCgRColor.x - (YCoCgRColor.z * static_cast(0.5)); result.g = YCoCgRColor.z + tmp; - result.b = tmp - (YCoCgRColor.y / T(2)); + result.b = tmp - (YCoCgRColor.y * static_cast(0.5)); result.r = result.b + YCoCgRColor.y; return result; } diff --git a/readme.md b/readme.md index a177f01b..fc3100e2 100644 --- a/readme.md +++ b/readme.md @@ -65,6 +65,7 @@ glm::mat4 camera(float Translate, glm::vec2 const & Rotate) - Optimized GTC_packing implementation - Optimized GTC_noise functions - Optimized GTC_color_space HSV to RGB conversions +- Optimised GTX_color_space_YCoCg YCoCgR conversions - Optimized GTX_matrix_interpolation axisAngle function - Added FAQ 12: Windows headers cause build errors... #557