Tests whether the components of a given vector are within certain bounds and sets a comparison value that can be examined using functions such as XMComparisonAllTrue.
XMVECTOR XMVectorInBoundsR(
uint32_t *pCR,
XMVECTOR V,
XMVECTOR Bounds
)
pCR
Type: uint32_t *
[out]
Pointer to a uint32_t comparison value that can be examined using functions such as XMComparisonAllInBounds. The XMComparisonXXXX functions may be used to further test the number of components that passed the comparison.
V
Type: XMVECTOR
[in]
Vector to test.
Bounds
Type: XMVECTOR
[in]
Vector that determines the bounds.
Type: XMVECTOR
Returns a vector containing the results of each component test.
The following pseudocode demonstrates the comparison operation of the function:
XMVECTOR Control;
Control.x = (V.x <= Bounds.x && V.x >= -Bounds.x) ? 0xFFFFFFFF : 0;
Control.y = (V.y <= Bounds.y && V.y >= -Bounds.y) ? 0xFFFFFFFF : 0;
Control.z = (V.z <= Bounds.z && V.z >= -Bounds.z) ? 0xFFFFFFFF : 0;
Control.w = (V.w <= Bounds.w && V.w >= -Bounds.w) ? 0xFFFFFFFF : 0;
return Control;
Header: Declared in directxmath.h.