XMColorAdjustSaturation 函数 (directxmath.h)

调整颜色的饱和度值。

语法

XMVECTOR XM_CALLCONV XMColorAdjustSaturation(
  [in] FXMVECTOR C,
  [in] float     Saturation
) noexcept;

参数

[in] C

描述颜色的 XMVECTORC 的每个组件都应在 0.0f 到 1.0f 的范围内。

[in] Saturation

饱和度值。 此参数在转换为灰度的颜色与原始颜色 C 之间线性内插。如果 饱和度 为 0.0f,则函数返回灰度颜色。 如果 饱和度 为 1.0f,则函数返回原始颜色。

返回值

返回描述饱和度调整产生的颜色的 XMVECTOR

注解

以下伪代码演示函数的操作。

XMVector colorOut;

// Approximate values for each component's contribution to luminance.
// Based upon the NTSC standard described in ITU-R Recommendation BT.709.
float Luminance = 0.2125f * C.x + 0.7154f * C.y + 0.0721f * C.z;

colorOut.x = (C.x - Luminance) * Saturation + Luminance;
colorOut.y = (C.y - Luminance) * Saturation + Luminance;
colorOut.z = (C.z - Luminance) * Saturation + Luminance;
colorOut.w = C.w;

return colorOut;

平台要求

Microsoft Visual Studio 2010 或 Microsoft Visual Studio 2012 以及 Windows SDK for Windows 8。 支持 Win32 桌面应用、Windows 应用商店应用和 Windows Phone 8 应用。

要求

要求
目标平台 Windows
标头 directxmath.h

另请参阅

DirectXMath 库颜色函数