# NavMeshQueryFilter

> Specifies which agent type and areas to consider when searching the NavMesh.

## Definition

* **Type:** Struct
* **Namespace:** [UnityEngine.AI](/engine/6000.7/script-reference/unityengine/ai.md)
* **Assembly:** UnityEngine.AIModule

```csharp
public struct NavMeshQueryFilter
```

## Remarks

This struct is used with the NavMesh query methods overloaded with the query filter argument.

Additional Resources: [NavMesh.CalculatePath](/engine/6000.7/script-reference/unityengine/ai/navmesh/calculatepath.md), [NavMesh.Raycast](/engine/6000.7/script-reference/unityengine/ai/navmesh/raycast.md), [NavMesh.FindClosestEdge](/engine/6000.7/script-reference/unityengine/ai/navmesh/findclosestedge.md), [NavMesh.SamplePosition](/engine/6000.7/script-reference/unityengine/ai/navmesh/sampleposition.md)

## Properties

| Property                                                                                        | Description                                                                                |
| ----------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------ |
| [agentTypeID](/engine/6000.7/script-reference/unityengine/ai/navmeshqueryfilter/agenttypeid.md) | The agent type ID, specifying which navigation meshes to consider for the query functions. |
| [areaMask](/engine/6000.7/script-reference/unityengine/ai/navmeshqueryfilter/areamask.md)       | A bitmask representing the traversable area types.                                         |

## Methods

| Method                                                                                          | Description                                                                 |
| ----------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------- |
| [GetAreaCost](/engine/6000.7/script-reference/unityengine/ai/navmeshqueryfilter/getareacost.md) | Returns the area cost multiplier for the given area type for this filter.   |
| [SetAreaCost](/engine/6000.7/script-reference/unityengine/ai/navmeshqueryfilter/setareacost.md) | Sets the pathfinding cost multiplier for this filter for a given area type. |
