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_t
XMCOLOR 구조체의 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 |