UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
NavRelevantInterface.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#if UE_ENABLE_INCLUDE_ORDER_DEPRECATED_IN_5_4
6#include "CoreMinimal.h"
7#endif
9#include "UObject/Interface.h"
11#if UE_ENABLE_INCLUDE_ORDER_DEPRECATED_IN_5_4
15#endif
16#include "NavRelevantInterface.generated.h"
17
20class UBodySetup;
21
23UENUM()
25{
26enum Type : int
27{
30
33
36
39};
40}
41
42UINTERFACE(MinimalAPI, meta=(CannotImplementInterfaceInBlueprint))
47
49{
51
52
53 virtual void GetNavigationData(FNavigationRelevantData& Data) const {}
54
56 virtual FBox GetNavigationBounds() const { return FBox(ForceInit); }
57
59 virtual bool SupportsGatheringGeometrySlices() const { return false; }
60
64 virtual bool ShouldSkipDirtyAreaOnAddOrRemove() const { return false; }
65
67 virtual void GatherGeometrySlice(FNavigableGeometryExport& GeomExport, const FBox& SliceBox) const {}
68
69 virtual ENavDataGatheringMode GetGeometryGatheringMode() const { return ENavDataGatheringMode::Default; }
70
72 virtual void PrepareGeometryExportSync() {}
73
76 virtual UBodySetup* GetNavigableGeometryBodySetup() { return nullptr; }
77
80 virtual FTransform GetNavigableGeometryTransform() const { return FTransform::Identity; }
81
83 virtual EHasCustomNavigableGeometry::Type HasCustomNavigableGeometry() const { return EHasCustomNavigableGeometry::No; }
84
87 virtual bool DoCustomNavigableGeometryExport(FNavigableGeometryExport& GeomExport) const { return true; }
88
90 virtual void UpdateNavigationBounds() {}
91
93 virtual bool IsNavigationRelevant() const { return true; }
94
98 virtual UObject* GetNavigationParent() const { return nullptr; }
99};
@ ForceInit
Definition CoreMiscDefines.h:155
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
UE::Math::TBox< double > FBox
Definition MathFwd.h:55
ENavDataGatheringMode
Definition NavDataGatheringMode.h:9
#define UINTERFACE(...)
Definition ObjectMacros.h:780
#define GENERATED_IINTERFACE_BODY(...)
Definition ObjectMacros.h:770
#define GENERATED_UINTERFACE_BODY(...)
Definition ObjectMacros.h:769
#define UENUM(...)
Definition ObjectMacros.h:749
Definition NavRelevantInterface.h:49
Definition BodySetup.h:128
Definition Interface.h:19
Definition NavRelevantInterface.h:44
Definition Object.h:95
Definition NavigationElement.h:18
Type
Definition NavRelevantInterface.h:27
@ No
Definition NavRelevantInterface.h:29
@ EvenIfNotCollidable
Definition NavRelevantInterface.h:35
@ DontExport
Definition NavRelevantInterface.h:38
Definition NavigationSystemHelpers.h:25
Definition NavigationRelevantData.h:40
static CORE_API const TTransform< double > Identity
Definition TransformNonVectorized.h:58