UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
NavigationTestingActor.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#include "Stats/Stats.h"
8#endif
11#include "GameFramework/Actor.h"
14#include "NavigationData.h"
15#include "Tickable.h"
18#include "NavigationTestingActor.generated.h"
19
22
24{
26
28 virtual void Tick(float DeltaTime);
29 virtual bool IsTickable() const { return Owner.IsValid(); }
30 virtual bool IsTickableInEditor() const { return true; }
31 virtual TStatId GetStatId() const ;
32};
33
34UENUM()
36{
43}
44
45UCLASS(hidecategories=(Object, Actor, Input, Rendering, Replication, HLOD, Cooking), showcategories=("Input|MouseInput", "Input|TouchInput"), Blueprintable, MinimalAPI)
47{
49
50private:
51 UPROPERTY()
53
54#if WITH_EDITORONLY_DATA
56 UPROPERTY()
58#endif // WITH_EDITORONLY_DATA
59
60 UPROPERTY(EditAnywhere, Category = Navigation, meta=(EditCondition="bActAsNavigationInvoker"))
62
65
66public:
67
70 FNavAgentProperties NavAgentProps;
71
74
77
80
83
87
91 float CostLimitFactor;
92
95 UPROPERTY(EditAnywhere, Category = Pathfinding, meta = (ClampMin = "0", UIMin = "0"))
96 float MinimumCostLimit;
97
104
107
111
114 uint32 bRequireNavigableEndLocation : 1;
115
118
122
126
131
135
139
143
147
149 uint32 bShouldBeVisibleInGame : 1;
150
154
158
162
164 uint32 bPathExist : 1;
165
168
171
174 float PathfindingTime;
175
177 double PathCost;
178
181
184
188
192
195
198
203
204#if WITH_RECAST && WITH_EDITORONLY_DATA
207
209#endif
210
212 FNavigationPath::FPathObserverDelegate::FDelegate PathObserver;
213
216
217 NAVIGATIONSYSTEM_API virtual void BeginDestroy() override;
218
219#if WITH_EDITOR
221 NAVIGATIONSYSTEM_API virtual void PostEditChangeProperty(FPropertyChangedEvent& PropertyChangedEvent) override;
222 NAVIGATIONSYSTEM_API virtual void PostEditMove(bool bFinished) override;
223
224 NAVIGATIONSYSTEM_API virtual void PostLoad() override;
226#endif // WITH_EDITOR
227
228 //~ Begin INavAgentInterface Interface
229 virtual const FNavAgentProperties& GetNavAgentPropertiesRef() const override { return NavAgentProps; }
230 NAVIGATIONSYSTEM_API virtual FVector GetNavAgentLocation() const override;
231 virtual void GetMoveGoalReachTest(const AActor* MovingActor, const FVector& MoveOffset, FVector& GoalOffset, float& GoalRadius, float& GoalHalfHeight) const override {}
232 //~ End INavAgentInterface Interface
233
234 //~ Begin INavPathObserverInterface Interface
235 virtual void OnPathUpdated(class INavigationPathGenerator* PathGenerator) override {};
236 virtual void OnPathInvalid(class INavigationPathGenerator* PathGenerator) override {};
237 virtual void OnPathFailed(class INavigationPathGenerator* PathGenerator) override {};
238 //~ End INavPathObserverInterface Interface
239
240 NAVIGATIONSYSTEM_API void UpdateNavData();
243
244 /* Called when given path becomes invalid (via @see PathObserverDelegate)
245 * NOTE: InvalidatedPath doesn't have to be instance's current Path
246 */
247 NAVIGATIONSYSTEM_API void OnPathEvent(FNavigationPath* InvalidatedPath, ENavPathEvent::Type Event);
248
249 // Virtual method to override if you want to customize the query being
250 // constructed for the path find (e.g. change the filter or add
251 // constraints/goal evaluators).
253
255 class UCapsuleComponent* GetCapsuleComponent() const { return CapsuleComponent; }
256#if WITH_EDITORONLY_DATA
259#endif
260
261protected:
262 void UpdateLocalQueries();
264
267 bool CheckIfNavDataIsReadyToActor(const AActor* TargetActor);
270};
#define NULL
Definition oodle2base.h:134
EUpdateTransformFlags
Definition ActorComponent.h:95
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition Platform.h:1125
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
ETeleportType
Definition EngineTypes.h:2401
#define UPROPERTY(...)
UObject definition macros.
Definition ObjectMacros.h:744
#define GENERATED_UCLASS_BODY(...)
Definition ObjectMacros.h:768
#define UCLASS(...)
Definition ObjectMacros.h:776
#define UENUM(...)
Definition ObjectMacros.h:749
uint32_t uint32
Definition binka_ue_file_header.h:6
Definition Actor.h:257
virtual ENGINE_API void BeginDestroy() override
Definition Actor.cpp:886
virtual ENGINE_API void PostLoad() override
Definition Actor.cpp:1103
Definition UnrealType.h:174
Definition Tickable.h:135
Definition NavAgentInterface.h:20
Definition NavPathObserverInterface.h:19
Definition NavigationPathGenerator.h:20
Definition Array.h:670
Definition EnumAsByte.h:22
Definition SubclassOf.h:30
Definition NavTestRenderingComponent.h:122
Category
Definition DiffResults.h:63
@ PathCost
Definition EnvQueryTest_Pathfinding.h:27
Definition NavigationTestingActor.h:36
Type
Definition NavigationTestingActor.h:38
@ RealCostOnly
Definition NavigationTestingActor.h:41
@ HeuristicOnly
Definition NavigationTestingActor.h:40
@ TotalCost
Definition NavigationTestingActor.h:39
@ ClampMin
[PropertyMetadata] Used for float and integer properties. Specifies the minimum value that may be ent...
Definition ObjectMacros.h:1324
@ InlineEditConditionToggle
[PropertyMetadata] Signifies that the bool property is only displayed inline as an edit condition tog...
Definition ObjectMacros.h:1415
@ EditCondition
[PropertyMetadata] Specifies a boolean property that is used to indicate whether editing of this prop...
Definition ObjectMacros.h:1367
@ UIMin
[PropertyMetadata] Used for float and integer properties. Specifies the lowest that the value slider ...
Definition ObjectMacros.h:1497
@ BlueprintReadOnly
This property can be read by blueprints, but not modified.
Definition ObjectMacros.h:1134
@ VisibleAnywhere
Indicates that this property is visible in property windows, but cannot be edited at all.
Definition ObjectMacros.h:1125
@ EditAnywhere
Indicates that this property can be edited by property windows in the editor.
Definition ObjectMacros.h:1116
@ EditInstanceOnly
Indicates that this property can be edited by property windows, but only on instances,...
Definition ObjectMacros.h:1119
Definition NavigationTypes.h:453
Definition NavigationTestingActor.h:24
virtual bool IsTickable() const
Definition NavigationTestingActor.h:29
TWeakObjectPtr< ANavigationTestingActor > Owner
Definition NavigationTestingActor.h:25
virtual TStatId GetStatId() const
Definition NavigationTestingActor.cpp:29
FNavTestTickHelper()
Definition NavigationTestingActor.h:27
virtual bool IsTickableInEditor() const
Definition NavigationTestingActor.h:30
Definition NavigationData.h:87
Definition NavigationSystemTypes.h:62
Definition UnrealType.h:6865
Definition ObjectPtr.h:488
Definition LightweightStats.h:416
Definition WeakObjectPtrTemplates.h:25
FORCEINLINE bool IsValid(bool bEvenIfPendingKill, bool bThreadsafeTest=false) const
Definition WeakObjectPtrTemplates.h:232