XMCOLOR::XMCOLOR(constfloat*) 함수(directxpackedvector.h)

4개의 요소 float 배열 인수에서 XMCOLOR의 새 instance 초기화합니다.

이 생성자는 4개의 요소 float 배열 인수에서 XMCOLOR의 새 instance 초기화합니다.

참고 C++ 기반 개발에만 사용할 수 있습니다.

구문

void XMCOLOR(
  const float *pArray
) noexcept;

매개 변수

pArray

XMCOLOR의 새 instance 네 가지 구성 요소를 초기화하는 데 사용되는 색 값을 포함하는 4개의 요소 부동 소수점 배열입니다.

반환 값

없음

설명

배열 요소는 다음과 같이 XMCOLOR의 새 instance 벡터 구성 요소에 매핑됩니다.

벡터 구성 요소 Array 요소 범위 Description
a pArray[0] 0.0, 1.0 인스턴스화 중에 pArray[0]은 0에서 1 사이로 고정되고 255.0f를 곱하고 (알파 채널)에 할당됩니다.
r pArray[1] 0.0, 1.0 인스턴스화 중에 pArray[1]은 0에서 1 사이로 고정되고 255.0f를 곱한 다음 r(빨간색 채널)에 할당됩니다.
z pArray[2] 0.0, 1.0 인스턴스화 중에 pArray[2]는 0에서 1 사이로 고정되고 255.0f를 곱한 다음 g(녹색 채널)에 할당됩니다.
w pArray[3] 0.0, 1.0 인스턴스화 중에 pArray[3]는 0에서 1 사이로 고정되고 255.0f를 곱한 다음 b(파란색 채널)에 할당됩니다.

다음 의사 코드는 구조체 정의에서 의 instance uint32_tXMCOLOR 구조체의 4가지 색 채널의 집합을 활용하는 이 생성자의 연산을 보여 줍니다.

XMCOLOR instance;
_a1 = min( max( pArray[0], 0.0 ), 1.0 );
_r1 = min( max( pArray[1], 0.0 ), 1.0 );
_g1 = min( max( pArray[2], 0.0 ), 1.0 );
_b1 = min( max( pArray[3], 0.0 ), 1.0 );

_a1 = round ( _a1 * 255.0f );
_r1 = round ( _r1 * 255.0f );
_g1 = round ( _g1 * 255.0f );
_b1 = round ( _b1 * 255.0f );

instance.v =  ( (uint32_t)_a1 << 24) |
              ( (uint32_t)_r1 << 16) |
              ( (uint32_t)_b1 <<  8) |
              ( (uint32_t)_b1 );

요구 사항

   
대상 플랫폼 Windows
헤더 directxpackedvector.h

추가 정보

XMCOLOR

XMCOLOR 생성자