正文

游戲數(shù)學(xué)(11)

精通C#游戲編程 作者:(英)斯庫(kù)勒


 

向量乘法是指將一個(gè)向量與一個(gè)標(biāo)量相乘。標(biāo)量就是int或者double這樣的普通數(shù)值。如果一個(gè)向量的所有元素都乘以另外一個(gè)元素,這種計(jì)算就稱為點(diǎn)積。下面列出了點(diǎn)積的計(jì)算方法。

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)量相乘會(huì)縮放向量,所以乘以2會(huì)使向量的長(zhǎng)度加倍。將向量乘以-1會(huì)使向量指向與當(dāng)前方向相反的方向。如果在3D游戲中玩家角色被擊中,可以將代表子彈軌跡的向量乘以-1,得到相反的方向?,F(xiàn)在這個(gè)向量從玩家的身體出發(fā),逆著子彈的軌跡指向外部,所以非常適合用來(lái)實(shí)現(xiàn)鮮血噴出的效果(見(jiàn)圖8-9)。


上一章目錄下一章

Copyright ? 讀書(shū)網(wǎng) www.afriseller.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)