我正在爲3D平臺遊戲玩家編寫碰撞檢測系統。所有的基礎都運作良好。但是當角色出現在陡坡多邊形上時,我需要他們滑下多邊形的斜坡。我可以完成大部分工作,但我無法找到如何計算與它們碰撞的給定多邊形的斜率相匹配的向下向量。我搜索了很多論壇,包括這個論壇,但找不到答案。如何計算3D多邊形的向下傾斜矢量?
每個多邊形由世界空間中的3個頂點(x,y,z)組成。
我也有每個多邊形的表面法線,並熟悉點和交叉產品。
我也可以通過獲取面法線和世界向量的點乘積的arccos來計算多邊形的簡單角度值,它給出多邊形的坡度與地平面的角度,如60度。如果角度超過60度,我決定角色應該滑下斜坡。但是我需要與多邊形的斜率相匹配的向下矢量,所以我可以隨着時間的推移將它們的位置應用於它,從而滑落。
我相信斜率矢量應該垂直於曲面法線,但我不知道如何計算它給出的信息。
感謝您的幫助......
+1我以前是這樣做的。如果您將向下矢量的大小設置爲等於您的引力,那麼非標準化的nonUnitAnswer矢量將成爲在下坡方向上作用的引力的組成部分 - 這是一個有用的值。 – 2010-12-08 03:07:37