欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

怎樣在CocosCreator中使用物理引擎關節(jié)

 更新時間:2021年04月16日 14:56:38   作者:gamedaybyday  
這篇文章主要介紹了怎樣在CocosCreator中使用物理引擎關節(jié),對物理引擎感興趣的同學,著重要看一下

CocosCreator版本2.4.2

mousejoint鼠標關節(jié)

cocos文檔定義:

鼠標關節(jié)用于使剛體上的一個點追蹤一個指定的世界坐標系下的位置。 鼠標關節(jié)可以指定一個最大的里來施加一個柔和的約束。

鼠標關節(jié)會自動使用 mouse region 節(jié)點來注冊鼠標事件,并且在觸摸移動事件中移動選中的剛體。

注意:一般鼠標關節(jié)只在測試環(huán)境中使用

說明:

任意cc.Node上添加鼠標關節(jié),設置mouseRegion為Canvas,彈力和阻尼都為1

Mouse Region:鼠標注冊節(jié)點

Frequency:彈力,表示拉扯物體的力度,值越大,彈力越大。就像一個橡皮筋綁在球上,你拉橡皮筋,力越大,球動得越快。

DampingRatio:阻尼,表示拉扯物體后,物體受到的阻力。好比1是在空氣中用橡皮筋拉球,10就是在水里面用橡皮筋拉球,阻尼越大,球動的越慢。

distanceJoint距離關節(jié)

cocos文檔定義:

距離關節(jié)通過一個固定的長度來約束關節(jié)鏈接的兩個剛體。你可以將它想象成一個無質量,堅固的木棍。

說明:

兩個剛體只能繞著各自的節(jié)點旋轉,兩個節(jié)點間的距離保持不變。

ConnectedBody:關節(jié)另一端的剛體。

Anchor:關節(jié)所在剛體錨點

ConnectedAnchor:關節(jié)另一端剛體錨點

CollideConnected:關節(jié)兩端的剛體是否發(fā)生碰撞

Distance:距離,200像素

Frequency:彈力。如果設置為10,兩個剛體之間會有彈力,像兩個物體里有個彈簧連著。 如果設置為0,表示始終保持200像素距離不會變,就像木根連著。

DampingRatio:阻尼

關節(jié)需要連接著2個剛體,圖中的兩個圓點和虛線,表示剛體的錨點和關節(jié)連接線。

distance為200,兩個剛體始終保持200的距離。且只能在各自的節(jié)點上旋轉。

應用:

距離固定,兩端節(jié)點可以旋轉,關節(jié)可以設置彈性

1. 一端固定,可以做成大擺錘

2. 一端固定,設置彈性,有彈性的大擺錘

motorjoint馬達關節(jié)

cocos文檔定義:

馬達關節(jié)被用來控制兩個剛體間的相對運動。 一個典型的例子是用來控制一個動態(tài)剛體相對于地面的運動。

說明:

馬達關節(jié)是限制兩個剛體,使兩個剛體的相對位置和角度保持一致。當BodyA的位置和角度變化時,BodyB會用MaxForce和MaxTorque的力向著BodyA的位置和角度移動。

Connected Body:關節(jié)另一端剛體

CollideConnected:關節(jié)兩端剛體是否碰撞

LinearOffset:另一端剛體相對于起始剛體的位置偏移量。也就是BodyB的目標位置。

AngularOffset:另一端剛體相對于起始剛體的角度偏移量。也就是BodyB的目標角度。

MaxForce:可應用于剛體的最大力值。

Max Torque:可應用于剛體的最大扭矩力。

CorrectionFactor:位置矯正系數,范圍[0,1]。默認0.3。BodyB向著BodyA移動的緩動因子。值越大,緩動越快。

linear offset為200,表示兩個剛體位置偏移為200,一旦偏離了這個限制,兩個剛體會用max force 300的力移動到相距200的位置。

angularoffset為0,角度偏移為0,一旦偏離了這個限制,兩個剛體會用maxtorque 100的力,使兩個剛體角度保持偏移為0。

應用

使用力和扭矩力,使兩個剛體保持位置和角度一致

1. 一端固定,可以做成不倒翁、放置在地面的拳擊沙袋

prismaticJoint位移關節(jié)

cocos文檔定義:

移動關節(jié)指定了只能在一個方向上移動剛體。 你可以開啟關節(jié)限制來設置剛體運行移動的間距,也可以開啟馬達來使用關節(jié)馬達驅動剛體的運行。

說明:

不能旋轉,只能在限制的坐標軸上移動。

LocalAxisA:指定剛體可以移動的方向。這里X=1,表示只能在X軸左右移動。

ReferenceAngle:相對角度。關節(jié)兩端的剛體之間的相對角度。

EnableLimit:是否開啟關節(jié)的距離限制。開啟后,關節(jié)剛體只能在限制的LowerLimit和UpperLimit范圍內移動。這里表示只能在x軸200-400像素之間移動。

EnableMotor:是否開啟馬達。開啟后剛體會以maxmotorforce的力向指定坐標軸移動,直到速度達到motorspeed。

可以看到剛體只能在x軸移動,并且移動范圍限制在200-400像素。這可用于一些橫版游戲中,只能左右或者指定方向移動的地形、機關等。

應用

限制指定方向移動,不能旋轉,可選馬達,可選限制范圍

1. 開啟馬達,限制x軸左右移動,限制移動范圍在兩個端點,可以做成來回移動的滑軌車

2. 抽屜

revoluteJoint旋轉關節(jié)

cocos文檔定義:

旋轉關節(jié)可以約束兩個剛體圍繞一個點來進行旋轉。 你可以通過開啟關節(jié)限制來限制旋轉的最大角度和最小角度。

你可以通過開啟馬達來施加一個扭矩力來驅動這兩個剛體在這一點上的相對速度。

說明:

和其他關節(jié)差不多,都是限制一些角度和力的參數。

中間為關節(jié)另一端的剛體,類型為static。 綁定關節(jié)的剛體以1000的力在距離關節(jié)另一端剛體(13,202)的位置旋轉。

我們用旋轉關節(jié)做一輛小車。紅色相當于車身,白色相當于車輪。

紅色為綁定revoluteJoint的node,節(jié)點綁著兩個revoluteJoint關節(jié),關節(jié)的Connected Body分別是兩個白色的box剛體,相當于車輪。

每個車輪有maxmotortorque 500的力,最大速度為motorspeed 200。

應用

兩個剛體繞一個點旋轉,可選旋轉角度,可選馬達

1. 一端固定,一端開啟馬達旋轉, 電風扇、車輪

2. 關閉馬達,只設置旋轉范圍,可組成人體的關節(jié)

3. 繩子

為什么繩子不用繩子關節(jié)來做,因為繩子關節(jié)不能限制旋轉范圍,不能限制位置范圍,不能限制旋轉節(jié)點。

ropeJoint繩子關節(jié)

cocos文檔定義:

繩子關節(jié)只指定兩個剛體間的最大距離,沒有其他的效果。 注意:如果你試圖動態(tài)修改關節(jié)的長度,這有可能會得到一些意外的效果。

說明:

maxlength:繩子的最大距離

沒啥特點吧。他們沒有彈力,沒有馬達。僅僅是像繩子綁著兩個剛體,被限制在maxlength 200范圍內。

應用

限制最大長度

1. 溜溜球

2. 遛狗,狗繩

weldJoint焊接關節(jié)(熔接關節(jié)、粘貼關節(jié))

cocos文檔定義:

熔接關節(jié)相當于將兩個剛體粘在了一起。 熔接關節(jié)可能會使某些東西失真,因為約束求解器算出的都是近似值

說明:

像兩個剛體被一條鋼筋焊接起來了。和距離關節(jié)相比,距離關節(jié)的兩個剛體可以在各自節(jié)點旋轉,焊接關節(jié)兩個剛體則不可以在各自節(jié)點旋轉。

如果設置Frequency彈力的話,比如Frequency=0.5,關節(jié)剛體可以在自己節(jié)點旋轉,但是另一端剛體則不可以旋轉。

應用

兩個剛體被焊接(粘貼)在一起,可以設置彈性

1. 剛體可以被焊接在一起

2. 也可以理解各種剛體被粘貼在一起

3. 一個游戲

4. 設置彈性后,關節(jié)所在剛體可以旋轉。例如柔體矩形,矩形可以彎曲。

焊接關節(jié)組成的圓環(huán),設置彈性后,可以彎曲。

wheeljoint輪子關節(jié)

cocos文檔定義:

輪子關節(jié)提供兩個維度的自由度:旋轉和沿著指定方向上位置的移動。 你可以通過開啟關節(jié)馬達來使用馬達驅動剛體的旋轉。 輪組關節(jié)是專門為機動車類型設計的。

說明:

輪子關節(jié),由 Revolute 和 Prismatic 組合成的關節(jié),用于模擬機動車車輪。

LocalAxis:指定剛體可以移動的方向

MaxMotorT...:可以施加到剛體的最大扭矩力

Motor Speed:期待的馬達速度

EnableMotor:開啟馬達

Frequency:彈性系數

DampingRatio:阻尼

和RevoluteJoint關節(jié)相比,同樣擁有馬達,還增加了彈力和限定移動方向。

Frequency彈性系數就像汽車輪胎的減震,在車輪運動時,可以晃動。

Local Axis A 限定方向,可以限定減震的彈力的方向只能上下。

下圖中,紅色剛體綁定兩個wheelJoint關節(jié),設置ConnectedBody分別是兩個circle圓形剛體。

馬達的扭矩力為200,最大速度為1000,也就是車輪的驅動力和最大速度。

彈性系數為5,阻尼為0.1,限定方向為Y軸,相當于這車的減震系統(tǒng)了。

Anchor錨點分別設置到Connected Body也就是車輪的中心點上(選中車輪關節(jié)時,會有一個藍色的標識,這個藍色就是Anchor,拖動藍色標識到圓形剛體中心就行了)

選擇兩個車輪,設置圓形剛體的摩擦系數0.8,彈性系數為0.2的。

如果摩擦系數為0的話,相當于車輪對于地面一直在打滑,跑不動。

以上就是怎樣在CocosCreator中使用物理引擎關節(jié)的詳細內容,更多關于CocosCreator 物理引擎關節(jié)的資料請關注腳本之家其它相關文章!

相關文章

  • javascript的正則匹配方法學習

    javascript的正則匹配方法學習

    這篇文章主要為大家詳細介紹了javascript的正則匹配方法,幫助大家更快更高效的學習javascript正則的相關內容,感興趣的小伙伴們可以參考一下
    2016-02-02
  • JS代碼實現百度地圖 畫圓 刪除標注

    JS代碼實現百度地圖 畫圓 刪除標注

    這篇文章主要介紹了JS代碼實現百度地圖 畫圓 刪除標注的相關資料,實現此功能的設計思路非常明確,代碼簡單易懂,非常不錯,具有參考借鑒價值,感興趣的朋友參考下吧
    2016-10-10
  • JavaScript 最佳實踐:幫你提升代碼質量

    JavaScript 最佳實踐:幫你提升代碼質量

    在本篇教程中,我將指出一些重要的 JavaScript 最佳實踐,讓你不必去用另外一種艱難的方式來了解它們。準備好去升級你的代碼吧
    2016-12-12
  • JavaScript 中調用 Kotlin 方法實例詳解

    JavaScript 中調用 Kotlin 方法實例詳解

    這篇文章主要介紹了JavaScript 中調用 Kotlin 方法實例詳解的相關資料,需要的朋友可以參考下
    2017-06-06
  • 超實用的javascript時間處理總結

    超實用的javascript時間處理總結

    在大家日常開發(fā)中常常會要對時間進行處理,以達到大家想要的效果,所以本文整理了一些javascript常用的時間處理類,有需要的可以參考借鑒。
    2016-08-08
  • axios利用params/data發(fā)送參數給springboot?controlle的正確獲取方式

    axios利用params/data發(fā)送參數給springboot?controlle的正確獲取方式

    這篇文章主要給大家介紹了關于axios利用params/data發(fā)送參數給springboot?controlle的正確獲取方式,文中通過實例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2022-02-02
  • 原生javascript實現圖片按鈕切換

    原生javascript實現圖片按鈕切換

    這篇文章主要介紹了原生javascript實現圖片按鈕切換,需要的朋友可以參考下
    2015-01-01
  • javascript中this用法實例詳解

    javascript中this用法實例詳解

    這篇文章主要介紹了javascript中this用法,結合具體實例形式詳細分析了javascript中this的含義及對象、函數等各種調用中的使用技巧,需要的朋友可以參考下
    2017-04-04
  • 利用谷歌地圖API獲取點與點的距離的js代碼

    利用谷歌地圖API獲取點與點的距離的js代碼

    下面是一段利用谷歌地圖API獲取點點之間距離的代碼,采用V3版本中的DirectionsService()
    2012-10-10
  • Javascript this 的一些學習總結

    Javascript this 的一些學習總結

    相信有C++、C#或Java等編程經驗的各位,對于this關鍵字再熟悉不過了。由于Javascript是一種面向對象的編程語言,它和C++、C#或Java一樣都包含this關鍵字,接下來我們將向大家介紹Javascript中的this關鍵字
    2012-08-08

最新評論