正文

游戏数学(9)

精通C#游戏编程 作者:(英)斯库勒


 

public Vector Add(Vector r)

{

return new Vector(X + r.X, Y + r.Y, Z + r.Z);

}

public static Vector operator+(Vector v1, Vector v2)

{

return v1.Add(v2);

}

重载二元的加法操作符+时,会自动重载+=。同理也适用于*=和/=。

图8-4显示了将两个向量加到一起后的结果。当试图在3D空间中得到特定的偏移值时,经常把两个向量加到一起。例如,假设想要在玩家头顶放置一个3D光环模型。玩家的原点在一只脚的中间。使用一个向量表示从玩家的脚到玩家头部的中央[0,1.75,0]之间的偏移。如果添加一个向量[0,0.2,0],这可以得到一个非常适合放置光环的位置。图8-5显示了这个操作。


上一章目录下一章

Copyright © 读书网 www.dushu.com 2005-2020, All Rights Reserved.
鄂ICP备15019699号 鄂公网安备 42010302001612号