다음을 통해 공유


D3DXColorAdjustSaturation 함수(D3DX10Math.h)

참고

D3DX10 유틸리티 라이브러리는 더 이상 사용되지 않습니다. 대신 DirectXMath 를 사용하는 것이 좋습니다.

색의 채도 값을 조정합니다.

구문

D3DXCOLOR* D3DXColorAdjustSaturation(
  _In_       D3DXCOLOR *pOut,
  _In_ const D3DXCOLOR *pC,
  _In_       FLOAT     s
);

매개 변수

pOut [in]

형식: D3DXCOLOR*

작업의 결과인 D3DXCOLOR 에 대한 포인터입니다.

pC [in]

형식: const D3DXCOLOR*

원본 D3DXCOLOR 구조체에 대한 포인터입니다.

s [in]

형식: FLOAT

채도 값입니다. 이 매개 변수는 회색조로 변환된 색과 원래 색 pC 간에 선형으로 보간합니다. 의 값에는 제한이 없습니다. 가 0이면 반환된 색은 회색조 색입니다. 가 1이면 반환된 색이 원래 색입니다.

반환 값

형식: D3DXCOLOR*

이 함수는 채도 조정의 결과인 D3DXCOLOR 구조체에 대한 포인터를 반환합니다.

설명

입력 알파 채널은 수정되지 않은 출력 알파 채널에 복사됩니다.

이 함수의 반환 값은 pOut 매개 변수에 반환된 값과 동일합니다. 이러한 방식으로 이 함수를 다른 함수의 매개 변수로 사용할 수 있습니다.

이 함수는 다음 예제와 같이 D3DXCOLOR 구조체의 빨강, 녹색 및 파란색 구성 요소를 불포화 색과 색 간에 보간합니다.

//Approximate values for each component's contribution to luminance.
//Based upon the NTSC standard described in ITU-R Recommendation BT.709.
FLOAT grey = pC->r * 0.2125f + pC->g * 0.7154f + pC->b * 0.0721f;

pOut->r = grey + s * (pC->r - grey);

가 0보다 크고 1보다 작으면 채도가 감소합니다. 가 1보다 크면 채도가 증가합니다.

회색조 색은 다음과 같이 계산됩니다.

r = g = b = 0.2125*r + 0.7154*g + 0.0721*b;

요구 사항

요구 사항
헤더
D3DX10Math.h
라이브러리
D3DX10.lib

추가 정보

수학 함수