UDocumentation
UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
NavCollision.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
8
#include "
UObject/ObjectMacros.h
"
9
#include "
UObject/Object.h
"
10
#include "
Misc/Guid.h
"
11
#include "
Templates/SubclassOf.h
"
12
#include "
Serialization/BulkData.h
"
13
#include "
AI/Navigation/NavigationTypes.h
"
14
#include "
AI/Navigation/NavCollisionBase.h
"
15
#include "NavCollision.generated.h"
16
17
class
FPrimitiveDrawInterface
;
18
struct
FCompositeNavModifier
;
19
struct
FNavigableGeometryExport
;
20
21
USTRUCT
()
22
struct
FNavCollisionCylinder
23
{
24
GENERATED_USTRUCT_BODY
()
25
26
UPROPERTY
(EditAnywhere, Category=
Cylinder
)
27
FVector
Offset
=
FVector
::ZeroVector;
28
29
UPROPERTY
(EditAnywhere, Category=
Cylinder
)
30
float
Radius = 0.f;
31
32
UPROPERTY
(EditAnywhere, Category=
Cylinder
)
33
float
Height = 0.f;
34
};
35
36
USTRUCT
()
37
struct
FNavCollisionBox
38
{
39
GENERATED_USTRUCT_BODY
()
40
41
UPROPERTY
(EditAnywhere, Category=
Box
)
42
FVector
Offset
=
FVector
::ZeroVector;
43
44
UPROPERTY
(EditAnywhere, Category=
Box
)
45
FVector
Extent =
FVector
::ZeroVector;
46
};
47
48
UCLASS
(config=
Engine
, MinimalAPI)
49
class
UNavCollision
:
public
UNavCollisionBase
50
{
51
GENERATED_UCLASS_BODY
()
52
53
TNavStatArray<int32>
ConvexShapeIndices;
54
55
FBox
Bounds;
56
58
UPROPERTY
(EditAnywhere, Category=
Navigation
)
59
TArray<FNavCollisionCylinder>
CylinderCollision;
60
62
UPROPERTY
(EditAnywhere, Category=
Navigation
)
63
TArray<FNavCollisionBox>
BoxCollision;
64
68
UPROPERTY
(EditAnywhere, Category =
Navigation
, meta = (EditCondition =
"bIsDynamicObstacle"
))
69
TSubclassOf<class UNavArea>
AreaClass;
70
72
UPROPERTY
(EditAnywhere, Category=
Navigation
, config)
73
uint32
bGatherConvexGeometry : 1;
74
76
UPROPERTY
(EditAnywhere, Category=
Navigation
, config)
77
uint32
bCreateOnClient : 1;
78
80
uint32
bForceGeometryRebuild : 1;
81
83
FGuid
BodySetupGuid;
84
86
FFormatContainer
CookedFormatData;
87
88
//~ Begin UObject Interface.
89
NAVIGATIONSYSTEM_API
virtual
void
PostInitProperties()
override
;
90
NAVIGATIONSYSTEM_API
virtual
void
Serialize
(
FArchive
& Ar)
override
;
91
NAVIGATIONSYSTEM_API
virtual
void
PostLoad
()
override
;
92
NAVIGATIONSYSTEM_API
virtual
void
GetResourceSizeEx(
FResourceSizeEx
&
CumulativeResourceSize
)
override
;
93
NAVIGATIONSYSTEM_API
virtual
bool
NeedsLoadForTargetPlatform(
const
class
ITargetPlatform
* TargetPlatform)
const override
;
94
virtual
bool
NeedsLoadForClient()
const override
{
return
bCreateOnClient; }
95
//~ End UObject Interface.
96
97
NAVIGATIONSYSTEM_API
FGuid
GetGuid()
const
;
98
101
NAVIGATIONSYSTEM_API
virtual
void
Setup(
class
UBodySetup
*
BodySetup
)
override
;
102
103
NAVIGATIONSYSTEM_API
virtual
FBox
GetBounds()
const override
;
104
106
NAVIGATIONSYSTEM_API
void
CopyUserSettings(
const
UNavCollision
&
OtherData
);
107
109
NAVIGATIONSYSTEM_API
virtual
void
DrawSimpleGeom(
FPrimitiveDrawInterface
* PDI,
const
FTransform
&
Transform
,
const
FColor
Color
)
override
;
110
112
NAVIGATIONSYSTEM_API
virtual
void
GetNavigationModifier(
FCompositeNavModifier
& Modifier,
const
FTransform
& LocalToWorld)
override
;
113
115
NAVIGATIONSYSTEM_API
virtual
bool
ExportGeometry(
const
FTransform
& LocalToWorld,
FNavigableGeometryExport
&
GeoExport
)
const override
;
116
118
NAVIGATIONSYSTEM_API
void
GatherCollision();
119
120
#if WITH_EDITOR
121
NAVIGATIONSYSTEM_API
virtual
void
InvalidateCollision
()
override
;
122
#endif
// WITH_EDITOR
123
124
protected
:
125
NAVIGATIONSYSTEM_API
void
ClearCollision();
126
127
#if WITH_EDITOR
128
NAVIGATIONSYSTEM_API
void
InvalidatePhysicsData();
129
#endif
// WITH_EDITOR
130
NAVIGATIONSYSTEM_API
FByteBulkData
* GetCookedData(
FName
Format
);
131
};
EAsyncPackageLoadingState2::PostLoad
@ PostLoad
BulkData.h
ECbValidateMode::Format
@ Format
EConstraintType::Transform
@ Transform
CoreMinimal.h
StaticCastSharedRef
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition
SharedPointer.h:127
EDatasmithLightShape::Cylinder
@ Cylinder
EFocusCause::Navigation
@ Navigation
Guid.h
NavCollisionBase.h
NavigationTypes.h
ObjectMacros.h
UPROPERTY
#define UPROPERTY(...)
UObject definition macros.
Definition
ObjectMacros.h:744
GENERATED_UCLASS_BODY
#define GENERATED_UCLASS_BODY(...)
Definition
ObjectMacros.h:768
UCLASS
#define UCLASS(...)
Definition
ObjectMacros.h:776
USTRUCT
#define USTRUCT(...)
Definition
ObjectMacros.h:746
GENERATED_USTRUCT_BODY
#define GENERATED_USTRUCT_BODY(...)
Definition
ObjectMacros.h:767
Object.h
ESkeletalMeshAsyncProperties::BodySetup
@ BodySetup
EStructSerializerNullValuePolicies::Serialize
@ Serialize
SubclassOf.h
EVariantTypes::Box
@ Box
EVariantTypes::Color
@ Color
Offset
uint32 Offset
Definition
VulkanMemory.cpp:4033
uint32
uint32_t uint32
Definition
binka_ue_file_header.h:6
Engine
Definition
Engine.Build.cs:7
FArchive
Definition
Archive.h:1208
FFormatContainer
Definition
BulkData.h:1139
FName
Definition
NameTypes.h:617
FPrimitiveDrawInterface
Definition
PrimitiveDrawInterface.h:19
TArray
Definition
Array.h:670
TBulkData< uint8 >
TNavStatArray
Definition
NavigationTypes.h:731
TSubclassOf
Definition
SubclassOf.h:30
UBodySetup
Definition
BodySetup.h:128
UNavCollisionBase
Definition
NavCollisionBase.h:23
UNavCollision
Definition
NavCollision.h:50
FColor
Definition
Color.h:486
FCompositeNavModifier
Definition
NavigationModifier.h:279
FGuid
Definition
Guid.h:109
FNavCollisionBox
Definition
NavCollision.h:38
FNavCollisionCylinder
Definition
NavCollision.h:23
FNavigableGeometryExport
Definition
NavigationSystemHelpers.h:25
FResourceSizeEx
Definition
ResourceSize.h:31
UE::Math::TBox< double >
UE::Math::TTransform< double >
UE::Math::TVector< double >
Engine
Source
Runtime
NavigationSystem
Public
NavCollision.h
Generated by
1.9.8