第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

打磚塊游戲中 怎么判斷小球與方塊撞擊后運(yùn)動(dòng)的方向呢?

打磚塊游戲中 怎么判斷小球與方塊撞擊后運(yùn)動(dòng)的方向呢?

正在用JavaScript+Canvas實(shí)現(xiàn)一個(gè)打磚塊游戲,碰撞算法參考的實(shí)現(xiàn)思路是https://www.zhihu.com/questio...現(xiàn)在的問題是檢測(cè)到小球與矩形方塊碰撞后 怎么判斷小球接下來的運(yùn)動(dòng)方向?我認(rèn)為這里有兩種情況 第一種是從上下左右四個(gè)邊撞擊 然后讓小球一個(gè)方向(比如x軸)上的速度值不變 讓另一個(gè)方向(比如y軸)的速度取負(fù)數(shù) 這樣小球就有一個(gè)反彈的效果了(類似于鏡面反彈)第二種情況我覺得應(yīng)該是從四個(gè)角撞擊 這個(gè)時(shí)候就應(yīng)該把兩個(gè)方向的速度都取負(fù)值 小球就會(huì)向運(yùn)動(dòng)來的方向“彈回去”第一種情況很好實(shí)現(xiàn),,關(guān)鍵是第二種情況該怎么判斷呢? 我不知道該用什么來判斷小球是否是撞擊的四個(gè)角如果思路不對(duì) 請(qǐng)指正。。/2017-8-10更新/利用我在評(píng)論里發(fā)現(xiàn)的那種夾角的辦法把判斷邊和角撞擊實(shí)現(xiàn)了。。但是新的問題是 我是在移動(dòng)小球位置之后才判斷是否碰撞的 有的時(shí)候會(huì)出現(xiàn)小球的位置已經(jīng)在磚塊里面去了 才去判斷撞擊 這樣就會(huì)形成死循環(huán)在小球在磚塊內(nèi)不停運(yùn)動(dòng)的鬼畜效果。。。然后我查到一個(gè)叫“分離軸定理”的算法,,貌似可以判斷這個(gè)“最小平移量” http://blog.mn886.net/chenjia...http://web.jobbole.com/90472/但是這兩個(gè)鏈接里的代碼看不太懂。。有大神能簡(jiǎn)單用js寫寫利用分離軸定理來實(shí)現(xiàn)矩形與圓碰撞的算法么。。包括碰撞以后反彈的效果(也就是沿著最小平移量的反方向)
查看完整描述

1 回答

?
HUX布斯

TA貢獻(xiàn)1876條經(jīng)驗(yàn) 獲得超6個(gè)贊

得到最短距離矢量后可以進(jìn)一步得到 "碰撞點(diǎn)",即 矢量p - 矢量u 得到的點(diǎn)。在角上碰撞的時(shí)候,這個(gè)碰撞點(diǎn)也應(yīng)該在矩形的角上。

另外 "小球就會(huì)向運(yùn)動(dòng)來的方向彈回去" 這個(gè)和生活經(jīng)驗(yàn)是不一致的,可以試試朝桌腳滾一個(gè)球看看。你可能需要再想一下球的受力和運(yùn)動(dòng)情況。


查看完整回答
反對(duì) 回復(fù) 2019-01-14
  • 1 回答
  • 0 關(guān)注
  • 906 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)