CARLA
Loading...
Searching...
No Matches
CarlaNavigationSubsystem.h
Go to the documentation of this file.
1// Copyright (c) 2026 Computer Vision Center (CVC) at the Universitat Autonoma
2// de Barcelona (UAB).
3//
4// This work is licensed under the terms of the MIT license.
5// For a copy, see <https://opensource.org/licenses/MIT>.
6
7#pragma once
8
9#include <util/ue-header-guard-begin.h>
10#include "CoreMinimal.h"
11#include "Subsystems/WorldSubsystem.h"
12#include <util/ue-header-guard-end.h>
13
14#include "CarlaNavigationSubsystem.generated.h"
15
16/// Thin wrapper over the engine navigation system (UNavigationSystemV1) used
17/// by the server-side pedestrian navigation RPCs. On World Partition maps the
18/// navmesh streams with the cells, so every query below operates on the
19/// currently loaded tiles only.
20UCLASS()
22{
23 GENERATED_BODY()
24
25public:
26
27 static UCarlaNavigationSubsystem *Get(UWorld *World)
28 {
29 return World != nullptr
30 ? World->GetSubsystem<UCarlaNavigationSubsystem>()
31 : nullptr;
32 }
33
34 /// True iff the current world has a RecastNavMesh with valid nav data:
35 /// the signal for clients that walker navigation runs server-side here.
36 bool HasServerSideNavigation() const;
37
38 /// Random point on the loaded navmesh, in world-local centimeters.
39 bool GetRandomNavLocation(FVector &OutLocation) const;
40};
Thin wrapper over the engine navigation system (UNavigationSystemV1) used by the server-side pedestri...
static UCarlaNavigationSubsystem * Get(UWorld *World)