Announcement

Collapse
No announcement yet.

[Solved]Collision problem(Filtering collisions?)

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    [Solved]Collision problem(Filtering collisions?)

    Run into a problem I didn't think of up front...

    I modified my LinkGun to be able to Attach and Grapple certain points and be able to Grab and Slingshot energy balls.

    The problem here is the Collision, since the Weapon's trace will collide with either and then stop I can't grapple things through energy balls.

    Oops!

    Is there anyway to filter out Collisions with a certain entity?(as in if WeaponTrace is in Firing mode 0 it will collide with X but not with Y)

    #2
    So I assume UDK does not have such a functionality? Or no one knows about it...
    Seriously the Collision settings are way too simple as they are, filtering out entities is vital to prevent collision with one self or other unwanted objects...

    Surely an engine as this has something that can function as a filter.

    Comment


      #3
      Righto, seems CalcWeaponFire has this down perfectly with invisible triggers and volumes. It's something along the lines of what I was thinking, but my flaw in thinking was that I thought it'd only work "once", but when looking at it I realized it's basically recursive calling until all triggers/volumes have been skipped and as such have a easy way of turning their collision back on.

      So I simply changed the conditional to this:
      Code:
      		if(	    (CurrentFiremode == 0 && HitActor.IsA('FT_GatherPoint')) ||
      				(CurrentFireMode == 1 && HitActor.IsA('FT_Firefly')) ||
      				PassThroughDamage(HitActor))
      		{
      Originally it was just checking PassThroughDamage, but now depending on the firemode I can sort of filter out entities and disable their collision, eventually collision is turned back on when the trace finally hits something worthwhile that it shouldn't pass through.

      I would have Overriden PassThroughDamage instead, but it's a static function so I can't make use of CurrentFireMode which I need in this case.

      Comment

      Working...
      X