p2.js物理引擎學習


P2簡介

P2是一款基於Javascript編寫的HTML5 2D物理引擎,和Box2D、Nape等2D物理引擎一樣,P2集成了各種復雜的物理公式和算法,可以幫助我們輕松的實現碰撞、反彈等物理現象的模擬。

學習資料

P2 API
認識HTML5物理引擎P2

p2.js GITHUB下載地址

元素介紹

World(世界),這就是一個模擬的物理世界,所有的剛體和約束創建后都要放進來。

Body(剛體),它是一塊無限堅硬的物體。因此,在這塊物體上任何兩點之間的距離都被認為是固定的。Body(剛體)有自己的參數用來規定位置、質量和速度等,剛體的形狀是由Shape創建的形狀確定的。

Shape(形狀),一個幾何形狀,可以是矩形、圓形等等。

Constraint(約束),constraint 是一個物理連接件,用來控制剛體的自由度。在3d世界,物體有6個自由度(3個平移坐標和3個旋轉坐標)。在2d世界,物體只有3個自由度(2個平移坐標和1個旋轉坐標)。眾所周知,人類世界是3d的,因此我們家里的門本來應該是有6個自由度的,但是由於門的一側被門鉸鏈固定在牆上,它失去了另外5個自由度,只能照着門鉸鏈這個軸旋轉了。門鉸鏈就相當於一個constraint(約束)。

Contact constraint(接觸約束),這是一個特別的約束,作用在於防止剛體之間的滲透重疊,並且它可以模擬摩擦和彈性。你無須創建這個約束,系統會自動創建它的。

Solver(求解器),物理世界的solver(求解器)專門用於處理約束情況。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM