本文簡單描述該如何設定UE4內的物件碰撞,以及各個選項的意義
碰撞
在Project Settings裡面,可以調整預設的碰撞設定
把大部分的物體都設上去會很方便,真的沒辦法的時候可以對物體直接調為Custom
Object Channel
設定物體的類型
預設的有
WorldStatic:不移動的物體,例如StaticMesh
WorldDynamic:會移動的物體,例如電梯、門
Pawn:任何玩家控制的實體,例如玩家角色
PhysicsBody:需要模擬物理的任何物體
Vehicle:載具,例如車輛
Destructible:可破壞物的Mesh
可以再設18種Custom類型
Trace Channel
設定Trace的種類
預設的有
Visibility:可見東西
Camera:攝影機本人
可以再設18種Custom
另外可以用Trace節點抓東西的Channel
Preset
直接套到物體上的類型,預先設定好某種物體與其他物體該怎麼互動
需要再調整下列細項
Collision Enabled
可以再設定CollisionEnabled,也就是要計算哪些碰撞,
No collision:也就是關掉所有碰撞,主要是RunTime時暫時關掉用的
QueryOnly:拿來空間查詢用的,包含光照、Sweep、Overlap、CharacterMovement
PhysicsOnly:有需要物理的時候開,可以算Rigidbody或Constraints
CollisionEnable:同時開上面兩個,性能消耗較大
ObjectType
設定自己是什麼物體
Collision Response
對其他物體個別要怎麼互動
可以設為Ignore、Overlap、Block
兩個物體間,一個Block一個Overlap,則只會Overlap
兩個物體間,只要有一個Ignore,就會Ignore
另外Block物體時依然可以Overlap
實際套用
物體套用碰撞之後,還可以對下列功能調整
手動開啟Simulation Generates Hit Events,才能觸發Hit事件(ReceiverHit或OnComponentHit)
Generate Overlap Events,才會觸發Overlap事件,否則等同No Collision
Can Character Stop On,設定要不要讓玩家可以踩上去,高度可以在角色的MovementComponent內調整
如果要更複雜的碰撞,例如彈性係數,就需要再套Phys Material
附註
PlayInEditor的Camera預設是Pawn
SimulateInEditor的Camera不是Pawn,預設沒開碰撞