向量乘法是指將一個向量與一個標(biāo)量相乘。標(biāo)量就是int或者double這樣的普通數(shù)值。如果一個向量的所有元素都乘以另外一個元素,這種計算就稱為點積。下面列出了點積的計算方法。
public Vector Multiply(double v)
{
return new Vector(X * v, Y * v, Z * v);
}
public static Vector operator * (Vector v, double s)
{
return v.Multiply(s);
}
圖8-8顯示了將向量與標(biāo)量相乘后得到的結(jié)果。將向量與標(biāo)量相乘會縮放向量,所以乘以2會使向量的長度加倍。將向量乘以-1會使向量指向與當(dāng)前方向相反的方向。如果在3D游戲中玩家角色被擊中,可以將代表子彈軌跡的向量乘以-1,得到相反的方向?,F(xiàn)在這個向量從玩家的身體出發(fā),逆著子彈的軌跡指向外部,所以非常適合用來實現(xiàn)鮮血噴出的效果(見圖8-9)。