The difference between Blocking and Colliding is that Colliding actors only get a Touch() event when another object collides with it; Blocking actors also prevent the other object from moving to that location. Actors can be made to do none, either, or both.
- bool bAutoAlignToTerrain
- Auto-align to terrain in the editor
- bool bBlockActors
- Blocks other nonplayer actors.
- bool bBlockKarma
- Block actors being simulated with Karma.
- bool bBlockNonZeroExtentTraces
- Blocks actors with CollisionRadius and CollisionHeight greater zero. Also traces that use the Extent parameter will hit this actor.
- bool bBlockPlayers
- Blocks other player actors.
- bool bBlockZeroExtentTraces
- Blocks actors with CollisionRadius and CollisionHeight set to zero. Also traces that don't use the Extent parameter will hit this actor.
- bool bCollideActors
- Collides with other actors.
- bool bCollideWorld
- Collides with the world.
- bool PathColliding
- Nytro: I think this means that bot paths wont't be affected by its collision. I'll test that soon.
- bool bProjTarget
- Projectiles should potentially target this actor.
- bool bUseCylinderCollision
- use a collision cylinder, set the size with the next two properties
- float CollisionHeight
- Half-height of the collision cylinder
- float CollisionRadius
- Radius of the collision cylinder
- ESurfaceTypes SurfaceType
So, the above is great, but what do I need to set to get ...
- a Static mesh that doesn't block players
- one that has no collision overhead
Tarquin: Dumb question, but if you set bUseCylinderCollision to false, what determines where the actor collides?
MythOpus: I believe Karma makes collisions on it's own using the polygons in the model but if that is turned of (I forget what property) then I don't think an actor will collide with it.