Announcement

Collapse
No announcement yet.

Line Trace won't hit certain actors, regardless of channels/objects?

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

    Line Trace won't hit certain actors, regardless of channels/objects?

    I feel like I must be missing something really obvious here, but I've been going over this for hours and I'm stumped. It seems that no matter how I set up trace responses, only specific actors will ever actually block or overlap a line trace. Is there any reason that an actor would ignore any line trace regardless of what the collision settings are?

    #2
    Unless the line trace is set to ignore the specified actor through its Actors to Ignore or Ignore Self parameters, a blocking collision should always register a hit. One thing you can check is to make sure if the collision settings for these actors within the level are different from the ones set in the blueprint. This can happen if settings were modified for individual instances of the class.
    Unreal Possibilities
    Grid Creation Systems | Tower Defense Starter Kit | Wave Spawning System [50% OFF]

    Comment


      #3
      Originally posted by Stormrage256 View Post
      One thing you can check is to make sure if the collision settings for these actors within the level are different from the ones set in the blueprint. This can happen if settings were modified for individual instances of the class.
      Can you elaborate on what you mean here? Are you suggesting collision settings that are dynamically set from the actors' blueprints, or from the blueprint calling the line trace? As far as any method that I'm aware of, the collision settings are all what they should be. I've even compared the actors settings against the actors that are able to block traces, and can't find any differences

      Comment


        #4
        You can click on an individual actor in the level, select its collision component and then verify if the trace responses are the same as what you have set in the actor blueprint. Since these settings can be changed for each actor in the level separately, it would be a good idea to make sure everything holds up fine here.

        Click image for larger version

Name:	actcollinst.jpg
Views:	1418
Size:	407.9 KB
ID:	1685389
        Unreal Possibilities
        Grid Creation Systems | Tower Defense Starter Kit | Wave Spawning System [50% OFF]

        Comment


          #5
          Oh gotcha. Yep, exactly how I've been trying to figure this thing out, is just on one or two actors. I've checked and double checked that who-knows-how-many times now. It's the only way I can test it, because it's seemingly arbitrary which actors can and can't block hits.

          Comment


            #6
            In that case, I'd suggest setting the Line Trace debug option to For Duration. Since it's happening at random this way you can check if they're hitting some invisible collision volumes before the actor.

            You can press Alt+C in the editor viewport to check for invisible collision volumes.
            Unreal Possibilities
            Grid Creation Systems | Tower Defense Starter Kit | Wave Spawning System [50% OFF]

            Comment


              #7
              Originally posted by Stormrage256 View Post
              In that case, I'd suggest setting the Line Trace debug option to For Duration. Since it's happening at random this way you can check if they're hitting some invisible collision volumes before the actor.

              You can press Alt+C in the editor viewport to check for invisible collision volumes.
              No dice there either. Here's a screenshot. Both line traces *should* be hitting the floor that the player is standing on.



              Comment


                #8
                The only other collision test that I can think of right now is the floor mesh itself. Since it is not an actor you created using blueprints, its collision settings will be specified in the static mesh.

                Click image for larger version

Name:	meshcoll.jpg
Views:	1401
Size:	352.4 KB
ID:	1685939

                You can open up the static mesh asset from the content browser and check if the trace responses are set to block your trace.
                Unreal Possibilities
                Grid Creation Systems | Tower Defense Starter Kit | Wave Spawning System [50% OFF]

                Comment


                  #9
                  Originally posted by Stormrage256 View Post
                  The only other collision test that I can think of right now is the floor mesh itself. Since it is not an actor you created using blueprints, its collision settings will be specified in the static mesh.


                  You can open up the static mesh asset from the content browser and check if the trace responses are set to block your trace.

                  I might be misunderstanding you, is this different from what's already been suggested? To clarify, both the instance, and the inherited static mesh component are currently set to block all trace channels

                  Comment


                    #10
                    Ok yea, in that case, that should override the default settings. Are all the actors that don't register the block using the same static mesh?
                    Unreal Possibilities
                    Grid Creation Systems | Tower Defense Starter Kit | Wave Spawning System [50% OFF]

                    Comment


                      #11
                      No, different static meshes

                      Comment

                      Working...
                      X