五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

CG仿真及3D特效編程教程(四)| 碰撞規(guī)避及碰撞檢測

2023-08-23 13:54 作者:虹圖AI開放平臺  | 我要投稿

回顧

上一期內容是關于粒子系統(tǒng)的創(chuàng)建和一些例子,內容相對簡單和容易理解。這一期虹圖美顏SDK會介紹碰撞相關內容,也會是很復雜的一期內容,堅持住最后一期了,學完這一期就能夠對CG仿真這部分有初步的理解和應用,后續(xù)可以用于圖形學,也可以用于游戲編程等方面。

碰撞規(guī)避

首先碰撞規(guī)避和碰撞檢測是有區(qū)別的,碰撞檢測指的是讓物體碰撞后互相反彈開,碰撞規(guī)避指的是讓物體改變運動路徑從而不發(fā)生第一次碰撞。

那么如何來規(guī)避碰撞呢?

想一下彈簧的工作原理。

D0是彈簧壓縮后的長度,向上的力F = ma = -k(x – D0),k是彈簧的彈性系數(shù)(N/m或lb/in)?;蛘吒鶕?jù)牛頓第二定律得出的微分方程,mx’’(t)+cx‘(t)+kx(t)=0。

在避免碰撞過程中,我們加入一個假想的彈簧力學系統(tǒng),去避免物體與物體之間的碰撞。

我們改寫下微分方程:

其中m是質量,c是阻尼,k是彈性系數(shù)。

怎么得出來的?那我們來看下:

那么怎么才能讓物體遠離物體,那就要引入排斥力。

從而實現(xiàn)物體到達目標位置過程中不會和其他物體發(fā)生碰撞。

碰撞檢測

在檢測碰撞時,有兩種不同的類型,離散的和連續(xù)的。離散的就是比較A物體所有的邊和B物體所有的面。連續(xù)的就是連接不同時段同一物體的所有點,形成虛擬的邊,然后和B物體所有的面比較。

那么怎么判定兩個物體相交呢?首先先把物體形成表面球體:

當然這只是其中一種方法。也可以使用邊界框檢測,總的來說就是改變物體的表達方法,以提高碰撞檢測效率。

最后放一些對大家有用的資源鏈接吧:

OpenGL:

Industry-wide OpenGL Information:?opengl.org

OpenGL 4.6 Reference Card opengl46-quick-reference-card.pdf

OpenGL specifications:?opengl.org/documentatio

OpenGL Man Pages:?opengl.org/sdk/docs/man

OpenGL SDK:?opengl.org/sdk

OpenGL Tutorials:?lighthouse3d.com/opengl

The GLUT Library:

GLUTDocumentation:?opengl.org/resources/li

PDFGLUTDocumentation:?opengl.org/resources/li

當然對于彈簧系統(tǒng)在碰撞當中的應用其實還有很多,也有一些碰撞避免的示例代碼,如果有興趣深入了解這塊問題,我們可以在開發(fā)者社區(qū)見。本期教程到這里就結束,后續(xù)我們還會不定期放出一些其他教程,如果開發(fā)者對于教程類型有好的建議,也可以留言,希望本期教程能夠讓大家了解一些CG仿真的知識。

最后,關于使用了大量AI+圖形學技術的虹圖AI人像人體特效的美顏SDK,3D Avatar SDK等產(chǎn)品,大家可以查看官網(wǎng)了解更多信息。

CG仿真及3D特效編程教程(四)| 碰撞規(guī)避及碰撞檢測的評論 (共 條)

分享到微博請遵守國家法律
正蓝旗| 中牟县| 海伦市| 苗栗市| 大丰市| 岚皋县| 桦川县| 祁阳县| 龙川县| 原阳县| 肥乡县| 海丰县| 东安县| 水城县| 阳曲县| 城步| 名山县| 张家港市| 揭阳市| 安新县| 黑水县| 会昌县| 兰考县| 固原市| 通海县| 古交市| 黔西县| 体育| 金门县| 永丰县| 江源县| 平南县| 龙泉市| 永泰县| 湘潭县| 若羌县| 锡林浩特市| 聊城市| 交口县| 宿松县| 北碚区|