16
Dept. of Electronics Engineering Construct 2 Physics behavior 電子工程系電腦遊戲設計組 吳錫修 2014.4.22

Construct 2 Physics behavior

Embed Size (px)

DESCRIPTION

The physics behavior of Construct 2

Citation preview

Page 1: Construct 2 Physics behavior

Dept. of Electronics Engineering

Construct 2 Physics behavior

電子工程系電腦遊戲設計組

吳錫修

2014.4.22

Page 2: Construct 2 Physics behavior

物理特性

Physics behavior賦予物件具備物理學性質,如密度、磨擦力、碰撞、彈性等影響

二個Physics behavior物體彼此會呈現物理世界中碰撞、磨擦、反彈…

Wu, ShyiShiou2

Page 3: Construct 2 Physics behavior

Physics properties 1/4

用來調整physics行為參數

Immovable

設為Yes,表示物體具有無限大的質量 (忽略物件的Density值),此時物體將固定不動。預設為No

Collision mask

指定物體碰撞罩遮方式,有三種罩遮模式:

Use collision mask使用物件的collision polygon (在Image/Animations編輯器中設定的物理碰撞區),物件預設是以外接矩形做為collision polygon

Bounding box使用矩形碰撞罩遮

Circle使用圓形碰撞罩遮 Wu, ShyiShiou3

Page 4: Construct 2 Physics behavior

Physics properties 2/4

Prevent rotation

鎖定物體角度值,物體不會因碰撞而旋轉。預設為No

Density

物體的密度值,預設為1

物體質量計算公式為密度乘以其碰撞罩遮面積。在遊戲中為物體設定精準的密度值並不重要,反而是不同物體間的相對密度值有更顯著的影響 (例如⼀個密度值6的物體,對密度值3的物體而言,有2倍的密度值)

Friction

摩擦係數,0表示無摩擦力,1表示最大摩擦力。預設為0.5

摩擦係數關係著物體碰觸在⼀起時是否容易移動物體

Wu, ShyiShiou4

Page 5: Construct 2 Physics behavior

Physics properties 3/4

Elasticity

物體的彈性係數,0表示無反彈力,1表示具有最大彈性。預設為0.2

彈性係數影響高處物體掉落地面後的反彈情形

Linear damping

線性阻尼係數,移動中物體逐漸趨緩的程度

0表示不減速,1表示最大減速。預設為0

Angular damping

角度阻尼,旋轉中物體逐漸趨緩的程度

0表示不變慢,1表示最大減速。預設為0.01

Wu, ShyiShiou5

Page 6: Construct 2 Physics behavior

Physics properties 4/4

Bullet

啟用快速移動物體之碰撞檢測功能。預設為No

啟用Bullet功能可能影響遊戲效能,除非物件移動太快,影響物理引擎標準碰撞作業的準確性,不建議啟用

Initial state

是否在⼀開始就啟用physics功能。預設為Enabled

如果沒啟用物理行為,其Physics behavior物體將可穿透本物體,有如物體本身是透空不存在的

Wu, ShyiShiou6

Page 7: Construct 2 Physics behavior

Physics conditions 1/2

提供給事件表的事件條件

Compare angular velocity

比對物體目前的角速度值,單位degrees/second

正值表示物體順時針旋轉,負值表示物體為逆時針旋轉

Compare mass

比對物體的質量 (物體的碰撞多邊形面積乘以密度值)

Compare velocity

比對物體目前的速度,單位pixels/second

可以就X軸方向速度、Y軸方向速度、或整體速度進行比對

Wu, ShyiShiou7

Page 8: Construct 2 Physics behavior

Physics conditions 2/2

Is enabled

檢視物體的physics behavior是否為開啟狀態

Is sleeping

檢視物體是否處於休眠狀態。當物體已有⼀段時間未移動或受干擾,物理引擎就可以停止處理該物件

Wu, ShyiShiou8

Page 9: Construct 2 Physics behavior

Physics actions: Forces 1/2

事件表中與施力有關的actions

Apply force

Apply force at angle

Apply force towards position

在物體施加外力,可以是某個角度、對著物體某⼀圖像參考點、朝向某⼀定點、或指定X、Y軸分力方式

施力將使物體朝著施力方向產生加速

Wu, ShyiShiou9

Page 10: Construct 2 Physics behavior

Physics actions: Forces 2/2

Apply impulse

Apply impulse at angle

Apply impulse towards position

對物體施加⼀個衝擊, 可以是某個角度、對著物體某⼀圖像參考點、或指定X、Y軸分力方式

可以模擬物體被外物擊中效果,例如被蝙蝠襲擊

Set velocity

設定物體X、Y軸分向速度 (單位pixels/second) 來變更物體目前的移動速度

Wu, ShyiShiou10

Page 11: Construct 2 Physics behavior

Physics actions: Global settings 1/2

事件表中與全域設定有關的actions

Enable/disable collisions

預設情況下,所有的物體會相互碰撞。如果取消物體碰撞,該物體可穿越其它物體

這項設定會影響物體的所有複本實體

Set stepping iterations

設定物理引擎在計算物體速度和座標的疊代次數。預設值分別是8和3

數值越低,運行速度愈快,但精確性較低;較高的設定值可提供更逼真物理模擬效果,但會降低效能

Wu, ShyiShiou11

Page 12: Construct 2 Physics behavior

Physics actions: Global settings 2/2

Set stepping mode

選擇使用DT (增量時間,執行速度與幀率無關)或固定值做為物理時間計步方式。預設是使用固定時間計步方式,保證每次模擬都有同樣的結果

DT方式會根據遊戲幀率的調整時間計步值,因此相同的情境模擬執行兩次,可能會產生不同的結果。注意,DT方式的最大時間計步被限制在1/30(約33ms,相當於每秒30幀),以防止⻑時間計步可能導致的不穩定性

Set world gravity

設定遊戲世界重力值,會影響遊戲中的所有物體

預設遊戲世界重力為10 (方向向下)

Wu, ShyiShiou12

Page 13: Construct 2 Physics behavior

Physics actions: Joints

事件表中與物件關節設定有關的actions

Create distance joint

將二個物體以指定的距離接合在⼀起,彷彿中間有⼀個連接桿

Create revolute joint

Create limited revolute joint

將二個物體以鉸鏈連在⼀起,就好像以針釘住⼀樣,他們可以自由旋轉 。有限轉動關節則可限定旋轉角度,就像⼀個鐘攞

Remove all joints

刪除物體的所有關節,會連帶影響關節連接的物體

Wu, ShyiShiou13

Page 14: Construct 2 Physics behavior

Physics actions: Torque

事件表中與力矩有關的actions

Apply torque

Apply torque towards angle

Apply torque towards position

施加力矩(旋轉加速)到物體,可以直接施力或某⼀角度施力或朝向指定座標

Set angular velocity

設定物體角速度(旋轉速率),單位degrees/second

Wu, ShyiShiou14

Page 15: Construct 2 Physics behavior

Physics expressions 1/2

物件實體在Runtime時的Physics行為資料

AngularVelocity物體目前的角速度(旋轉速率),單位degrees/second

CenterOfMassX、CenterOfMassY物體目前的質量中心點位置,由物理引擎依據物件的collision mask屬性計算而得,並不⼀定是在物體中間

Mass物體的質量,等於物件的ollision mask面積乘以物體density

VelocityX、VelocityY物體目前的速度值,單位pixels/second

Wu, ShyiShiou15

Page 16: Construct 2 Physics behavior

Physics expressions 2/2

AngularDamping物體的角度阻尼值

Density物體的密度值

Elasticity物體的彈力係數

Friction物體的摩差係數

LinearDamping物體的線性阻尼值

Wu, ShyiShiou16