国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(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ī)避及碰撞檢測的評論 (共 條)

分享到微博請遵守國家法律
古田县| 东宁县| 宁都县| 信宜市| 正阳县| 兴国县| 望奎县| 博野县| 玉龙| 驻马店市| 灵台县| 阳江市| 海盐县| 辉县市| 专栏| 民丰县| 隆回县| 内黄县| 林西县| 固原市| 公安县| 台东市| 当阳市| 彩票| 凌源市| 玉田县| 镇安县| 错那县| 普陀区| 昭觉县| 游戏| 德庆县| 皋兰县| 洮南市| 南江县| 吴桥县| 思南县| 应用必备| 绥江县| 白城市| 新源县|