Microsoft DirectX 8.0 (C++)

dp3

ソースの 3 要素による内積を計算する。

dp3   vDest, vSrc0, vSrc1

レジスタ

vDest
処理の結果を保持するデスティネーション レジスタ。
vSrc0
入力引数を指定するソース レジスタ。
vSrc1
入力引数を指定するソース レジスタ。

処理

次のコードは、dp3 命令によって実行される処理とデスティネーションへの結果の書き込みを示している。

    SetDestReg();
    SetSrcReg(0);
    SetSrcReg(1);

    m_TmpReg.x =
    m_TmpReg.y =
    m_TmpReg.z =
    m_TmpReg.w = m_Source[0].x * m_Source[1].x +
                 m_Source[0].y * m_Source[1].y +
                 m_Source[0].z * m_Source[1].z;

    WriteResult();

注意

次の例は、dp3 命令の使い方を示している。

dp3 r2, r0, r1
dp3 r2.x, r0, r1