How to teleport on a moving actor

I have created a platform that is floating mid air above the ground with a working nav mesh bounds volume. This works correctly, but as soon as I set the platform object to movable and try to teleport around the platform, the teleport point reaches all the way to the ground instead of on the surface of the platform. I am still able to teleport around, but this is obviously a problem. You can see in the image how the teleport point is on the ground and the ring is directly above it on the platform/cube surface. I am using the teleport blueprints that are in the UE4 provided VR examples, The reason I am doing this is to have a large airship that can be flown in the sky, but also able to teleport around it while it flies. Thanks in advance!

I don’t think the navigation system supports generating meshes on moving objects. You would have to extend the teleport system to check for if the player is trying to teleport onto a moving object and handle it differently.

Yeah, I have not found any solutions so far…

One way would be to set up some kind of markup on the moving actors, and use them to check if the teleport trace hit a valid area.

A simple way of doing it would be to add collision box components to your moving actor covering the valid areas. Then make an interface with a function that takes a position and returns whether it is a valid teleport destination. Implement that on your moving actor with a function that goes though all the collision box components until it finds one that overlaps with the input position. Then check in the teleport tracing function if the hit object has the interface and call the function if it does.

1 Like

Thank you for the info, I will definitely try to implement something like this.