XMStoreShort4
構文
VOID XMStoreShort4( XMSHORT4 *pDestination, XMVECTOR V)
パラメーター
- pDestination
[out] データを格納するアドレス - V
[in] 格納するデータが含まれるベクトル
戻り値
なし。
解説
この関数はベクトルを受け取り、−32767.0f ~ 32767.0f の範囲にクランプした後、要素を正規化された符号付き整数形式に変換し、指定されたアドレスの 4 つの短整数値に結果を書き込みます。最上位の要素はアドレスの最初の 2 バイトに書き込まれ、上位 2 番目の要素は次の 2 バイトに書き込まれます。以降、同様に処理されます。
次の擬似コードは、この関数の処理を表したものです。
static CONST XMVECTOR Min = {-32767.0f, -32767.0f, -32767.0f, -32767.0f};static CONST XMVECTOR Max = {32767.0f, 32767.0f, 32767.0f, 32767.0f};XMVECTOR N;N = XMVectorClamp(V, Min, Max);N = XMVectorRound(N);pDestination->x = (SHORT)N.x; // 2 bytes to address pDestinationpDestination->y = (SHORT)N.y; // 2 bytes to address (BYTE*)pDestination + 2pDestination->z = (SHORT)N.z; // 2 bytes to address (BYTE*)pDestination + 4pDestination->w = (SHORT)N.w; // 2 bytes to address (BYTE*)pDestination + 6
要件
ヘッダー: xnamath.h で宣言されています。