BTTask_MoveTo and EnvQueryTest_Pathfinding don't use the same pattern to obtain the NavigationFilter to be used if the filter is not set. The BTTask_MoveTo uses the controllers GetDefaultNavigationFilterClass which makes sense as the BT default implementation expects an AI Controller to be running it. The EQS test keeps the QueryOwner as a UObject. It appears that EQS does not use an {}AIController{*}'s default navigation filter since EQS does not require a controller to run.


Talking with Mieszko, this can certainly appear like a bug to users even though it is a side effect of the fact that EQS does not require a controller and thus does not check for a controller's default navigation filter. Mieszko proposed to investigate modifying UNavigationQueryFilter::GetQueryFilter so that it calls GetDefaultNavigationFilterClass if the Querier is an AIController.

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-169444 in the post.

Login to Vote

ComponentUE - AI - EQS
Affects Versions5.0
Target Fix5.5
CreatedNov 7, 2022
UpdatedFeb 29, 2024
View Jira Issue