[其他] 不使用開根號求出解的方法
※ [本文轉錄自 Math 看板 #1CjosVPO ]
作者: entersoal (準備衝刺) 看板: Math
標題: [其他] 不使用開根號求出解的方法
時間: Fri Oct 15 00:19:40 2010
原po過去是念數學系的,出社會工作後進入遊戲業多少運用到數學
多半負責規格使用的演算法或是推估數據模型(戰鬥、經濟..etc.)
最近遇到了一個障礙
在處理一個狀況是在賽車這個機制下產生的
在平面XY座標系之下
假設A玩家所在的點P1為(P1x,P1y),其速度向量V1為(V1x,V1y),車體半徑為r1
B玩家所在的點P2為(P2x,P2y),其速度向量V2為(V2x,V2y),車體半徑為r2
需要預測的狀況為兩玩家發生碰撞
我所使用的方法分幾個步驟做篩檢
I.令兩玩家構成的圓剛好相切時的連心線為d,如果 r1+r2 < d 進入II
II.利用V1和V2求出路徑公式(直線公式),在將此二線公式做二元一次聯立方程式求解
利用克拉碼公式排除 delta=0,但delta x and delta y不全為零的狀況
進入III
III.為我主要問題
我希望能夠驗證此解是否能落於V1和V2旋轉正負30度所掃出的面積中,如果能驗證
此點,則能夠確實驗證兩向量交會點在不可避免得範圍內
如此滿足三項條件就產生玩家發生碰撞的剛體碰撞運算
但我在推導第三點預到了障礙,原先只需要算與X軸夾角,
就可以推導V向量所要掃的範圍不等式,但是麻煩在此運算需要用到開根號計算cosθ
而此運算必須由Server進行所以不得使用多項式函數以上的複雜度運算
想請教不知道有沒有可以不用開根號就可以計算餘弦值的方法
或是其實我想法上有錯?感謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.32.144.10
→
10/15 06:38,
10/15 06:38
→
10/15 06:39,
10/15 06:39
→
10/15 11:25,
10/15 11:25
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.32.144.10
推
10/15 11:55, , 1F
10/15 11:55, 1F
推
10/15 13:44, , 2F
10/15 13:44, 2F
推
10/15 14:22, , 3F
10/15 14:22, 3F
→
10/15 14:23, , 4F
10/15 14:23, 4F
→
10/15 15:05, , 5F
10/15 15:05, 5F
推
10/15 15:42, , 6F
10/15 15:42, 6F
→
10/15 15:47, , 7F
10/15 15:47, 7F
→
10/15 15:48, , 8F
10/15 15:48, 8F
推
10/15 19:54, , 9F
10/15 19:54, 9F
推
10/16 00:08, , 10F
10/16 00:08, 10F
→
10/16 00:09, , 11F
10/16 00:09, 11F
→
10/16 00:49, , 12F
10/16 00:49, 12F
→
10/16 00:49, , 13F
10/16 00:49, 13F
推
10/16 09:02, , 14F
10/16 09:02, 14F
GameDesign 近期熱門文章
PTT遊戲區 即時熱門文章
-11
15