CARLA
 
载入中...
搜索中...
未找到
Public 类型 | Public 成员函数 | Public 属性 | Protected 成员函数 | Protected 属性 | 所有成员列表
ALargeMapManager类 参考

#include <LargeMapManager.h>

+ 类 ALargeMapManager 继承关系图:
+ ALargeMapManager 的协作图:

Public 类型

using TileID = uint64
 

Public 成员函数

void AddActorToUnloadedList (const FCarlaActor &CarlaActor, const FTransform &Transform)
 
 ALargeMapManager ()
 
void ClearWorldAndTiles ()
 
void ConsiderSpectatorAsEgo (bool _SpectatorAsEgo)
 
void GenerateLargeMap ()
 
void GenerateMap (FString InAssetsPath)
 
void GenerateMap (TArray< TPair< FString, FIntVector > > MapPathsIds)
 
void GenerateMap_Editor ()
 
float GetActorStreamingDistance () const
 
FCarlaMapTileGetCarlaMapTile (FIntVector TileVectorID)
 
FCarlaMapTileGetCarlaMapTile (FVector Location)
 
FCarlaMapTileGetCarlaMapTile (TileID TileID)
 
FCarlaMapTileGetCarlaMapTile (ULevel *InLevel)
 
ACarlaWheeledVehicleGetHeroVehicle ()
 
float GetLayerStreamingDistance () const
 
int GetNumTiles () const
 
FIntVector GetNumTilesInXY () const
 
FVector GetTile0Offset ()
 
TileID GetTileID (FDVector TileLocation) const
 
TileID GetTileID (FIntVector TileVectorID) const
 
TileID GetTileID (FVector TileLocation) const
 From a given location it retrieves the TileID that covers that area
 
FVector GetTileLocation (FIntVector TileVectorID) const
 
FVector GetTileLocation (TileID TileID) const
 
FDVector GetTileLocationD (FIntVector TileVectorID) const
 
FDVector GetTileLocationD (TileID TileID) const
 
float GetTileSize ()
 
FIntVector GetTileVectorID (FDVector TileLocation) const
 
FIntVector GetTileVectorID (FVector TileLocation) const
 
FIntVector GetTileVectorID (TileID TileID) const
 
FVector GlobalToLocalLocation (const FVector &InLocation) const
 
FTransform GlobalToLocalTransform (const FTransform &InTransform) const
 
bool IsLevelOfTileLoaded (FIntVector InTileID) const
 
bool IsTileLoaded (FDVector Location) const
 
bool IsTileLoaded (FVector Location) const
 
bool IsTileLoaded (TileID TileId) const
 
FCarlaMapTileLoadCarlaMapTile (FString TileMapPath, TileID TileId)
 
FVector LocalToGlobalLocation (const FVector &InLocation) const
 
FTransform LocalToGlobalTransform (const FTransform &InTransform) const
 
void OnActorDestroyed (AActor *DestroyedActor)
 
void OnActorSpawned (const FCarlaActor &CarlaActor)
 
void RegisterInitialObjects ()
 
void SetActorStreamingDistance (float Distance)
 
void SetLayerStreamingDistance (float Distance)
 
void SetTile0Offset (const FVector &Offset)
 
void SetTileSize (float Size)
 
void Tick (float DeltaTime) override
 
 ~ALargeMapManager ()
 

Public 属性

FString LargeMapName = "testmap"
 
FString LargeMapTilePath = "/Game/Carla/Maps/testmap"
 
bool SpectatorAsEgo = false
 

Protected 成员函数

virtual void BeginPlay () override
 
void CheckActiveActors ()
 
void CheckDormantActors ()
 
void CheckIfRebaseIsNeeded ()
 
void ConvertActiveToDormantActors ()
 
void ConvertDormantToActiveActors ()
 
void DumpTilesTable () const
 
FString GenerateTileName (TileID TileID)
 
void GetTilesThatNeedToChangeState (const TSet< TileID > &InTilesToConsider, TSet< TileID > &OutTilesToBeVisible, TSet< TileID > &OutTilesToHidde)
 
void GetTilesToConsider (const AActor *ActorToConsider, TSet< TileID > &OutTilesToConsider)
 
void OnLevelAddedToWorld (ULevel *InLevel, UWorld *InWorld)
 
void OnLevelRemovedFromWorld (ULevel *InLevel, UWorld *InWorld)
 
void PostWorldOriginOffset (UWorld *InWorld, FIntVector InSrcOrigin, FIntVector InDstOrigin)
 
void PreWorldOriginOffset (UWorld *InWorld, FIntVector InSrcOrigin, FIntVector InDstOrigin)
 
void PrintMapInfo ()
 
void RegisterTilesInWorldComposition ()
 
void RemoveLandscapeCollisionIfHaveTerraMechanics (ULevel *InLevel)
 
void RemovePendingActorsToRemove ()
 
FString TileIDToString (TileID TileID)
 
void UpdateCurrentTilesLoaded (const TSet< TileID > &InTilesToBeVisible, const TSet< TileID > &InTilesToHidde)
 
void UpdateTilesState ()
 
void UpdateTileState (const TSet< TileID > &InTilesToUpdate, bool InShouldBlockOnLoad, bool InShouldBeLoaded, bool InShouldBeVisible)
 

Protected 属性

TArray< FCarlaActor::IdTypeActiveActors
 
TSet< FCarlaActor::IdTypeActivesToRemove
 
TSet< FCarlaActor::IdTypeActiveToDormantActors
 
TArray< AActor * > ActorsToConsider
 
TSet< AActor * > ActorsToRemove
 
float ActorStreamingDistance = 2.0f * 1000.0f * 100.0f
 
float ActorStreamingDistanceSquared = ActorStreamingDistance * ActorStreamingDistance
 
FString AssetsPath = ""
 
FString BaseTileMapPath = "/Game/Carla/Maps/LargeMap/EmptyTileBase"
 
bool bHasTerramechanics = false
 
bool bPrintErrors = false
 
bool bPrintMapInfo = true
 
const int32 ClientLocMsgIndex = 200
 
FDVector CurrentOriginD
 
FIntVector CurrentOriginInt { 0 }
 
TSet< uint64 > CurrentTilesLoaded
 
TArray< FCarlaActor::IdTypeDormantActors
 
TSet< FCarlaActor::IdTypeDormantsToRemove
 
TSet< FCarlaActor::IdTypeDormantToActiveActors
 
float LayerStreamingDistance = 3.0f * 1000.0f * 100.0f
 
float LayerStreamingDistanceSquared = LayerStreamingDistance * LayerStreamingDistance
 
FVector LocalTileOffset = FVector(0,0,0)
 
TMap< uint64, FCarlaMapTileMapTiles
 
const int32 MaxClientLocMsgIndex = ClientLocMsgIndex + 10
 
const int32 MaxTilesDistMsgIndex = TilesDistMsgIndex + 10
 
float MsgTime = 1.0f
 
FColor PositonMsgColor = FColor::Purple
 
float RebaseOriginDistance = 2.0f * 1000.0f * 100.0f
 
float RebaseOriginDistanceSquared = RebaseOriginDistance * RebaseOriginDistance
 
bool ShouldTilesBlockOnLoad = false
 
AActorSpectator = nullptr
 
float TickInterval = 0.0f
 
FVector Tile0Offset = FVector(0,0,0)
 
const int32 TilesDistMsgIndex = 100
 
float TileSide = 2.0f * 1000.0f * 100.0f
 

详细描述

在文件 LargeMapManager.h61 行定义.

成员类型定义说明

◆ TileID

using ALargeMapManager::TileID = uint64

在文件 LargeMapManager.h67 行定义.

构造及析构函数说明

◆ ALargeMapManager()

ALargeMapManager::ALargeMapManager ( )

在文件 LargeMapManager.cpp36 行定义.

◆ ~ALargeMapManager()

ALargeMapManager::~ALargeMapManager ( )

Remove delegates

在文件 LargeMapManager.cpp42 行定义.

成员函数说明

◆ AddActorToUnloadedList()

void ALargeMapManager::AddActorToUnloadedList ( const FCarlaActor & CarlaActor,
const FTransform & Transform )

在文件 LargeMapManager.cpp486 行定义.

◆ BeginPlay()

void ALargeMapManager::BeginPlay ( )
overrideprotectedvirtual

◆ CheckActiveActors()

void ALargeMapManager::CheckActiveActors ( )
protected

在文件 LargeMapManager.cpp761 行定义.

引用了 ActiveActors, ActivesToRemove, ActiveToDormantActors, ActorsToConsider, ActorStreamingDistanceSquared, CheckActiveActors(), CurrentOriginD, UCarlaEpisode::FindCarlaActor(), FCarlaActor::GetActor(), FCarlaActor::GetActorType(), UCarlaStatics::GetCurrentEpisode(), IsTileLoaded(), LM_LOG , 以及 FCarlaActor::Sensor.

被这些函数引用 CheckActiveActors() , 以及 Tick().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ CheckDormantActors()

void ALargeMapManager::CheckDormantActors ( )
protected

在文件 LargeMapManager.cpp828 行定义.

引用了 ActorsToConsider, ActorStreamingDistanceSquared, CheckDormantActors(), CurrentOriginD, DormantActors, DormantsToRemove, DormantToActiveActors, UCarlaEpisode::FindCarlaActor(), FCarlaActor::GetActorData(), FCarlaActor::GetActorId(), UCarlaStatics::GetCurrentEpisode(), FCarlaActor::IsDormant(), IsTileLoaded(), LM_LOG , 以及 FActorData::Location.

被这些函数引用 CheckDormantActors() , 以及 Tick().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ CheckIfRebaseIsNeeded()

void ALargeMapManager::CheckIfRebaseIsNeeded ( )
protected

在文件 LargeMapManager.cpp911 行定义.

引用了 ActorsToConsider, CheckIfRebaseIsNeeded(), CurrentOriginD, GetTileID(), GetTileLocation(), IsValid() , 以及 RebaseOriginDistance.

被这些函数引用 CheckIfRebaseIsNeeded(), OnActorSpawned() , 以及 Tick().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ ClearWorldAndTiles()

void ALargeMapManager::ClearWorldAndTiles ( )

在文件 LargeMapManager.cpp464 行定义.

引用了 MapTiles.

被这些函数引用 GenerateMap() , 以及 GenerateMap().

+ 这是这个函数的调用关系图:

◆ ConsiderSpectatorAsEgo()

void ALargeMapManager::ConsiderSpectatorAsEgo ( bool _SpectatorAsEgo)

在文件 LargeMapManager.cpp1122 行定义.

引用了 ActorsToConsider, Spectator , 以及 SpectatorAsEgo.

被这些函数引用 ACarlaGameModeBase::BeginPlay() , 以及 FCarlaServer::FPimpl::BindActions().

+ 这是这个函数的调用关系图:

◆ ConvertActiveToDormantActors()

void ALargeMapManager::ConvertActiveToDormantActors ( )
protected

在文件 LargeMapManager.cpp806 行定义.

引用了 ActiveToDormantActors, ConvertActiveToDormantActors(), DormantActors, UCarlaStatics::GetCurrentEpisode(), LM_LOG , 以及 UCarlaEpisode::PutActorToSleep().

被这些函数引用 ConvertActiveToDormantActors() , 以及 Tick().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ ConvertDormantToActiveActors()

void ALargeMapManager::ConvertDormantToActiveActors ( )
protected

在文件 LargeMapManager.cpp880 行定义.

引用了 ActiveActors, ConvertDormantToActiveActors(), CurrentOriginD, DormantActors, DormantToActiveActors, UCarlaEpisode::FindCarlaActor(), FCarlaActor::GetActor(), UCarlaStatics::GetCurrentEpisode(), FCarlaActor::IsActive(), LM_LOG, FDVector::ToString() , 以及 UCarlaEpisode::WakeActorUp().

被这些函数引用 ConvertDormantToActiveActors() , 以及 Tick().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ DumpTilesTable()

void ALargeMapManager::DumpTilesTable ( ) const
protected

在文件 LargeMapManager.cpp1033 行定义.

引用了 AssetsPath, FCarlaMapTile::Location, MapTiles , 以及 FCarlaMapTile::Name.

被这些函数引用 GenerateMap().

+ 这是这个函数的调用关系图:

◆ GenerateLargeMap()

void ALargeMapManager::GenerateLargeMap ( )

在文件 LargeMapManager.cpp373 行定义.

引用了 GenerateMap() , 以及 LargeMapTilePath.

被这些函数引用 ACarlaGameModeBase::InitGame().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ GenerateMap() [1/2]

void ALargeMapManager::GenerateMap ( FString InAssetsPath)

Retrive all the assets in the path

Generate tiles based on mesh positions

在文件 LargeMapManager.cpp377 行定义.

引用了 ActorsToConsider, AssetsPath, ClearWorldAndTiles(), DumpTilesTable(), GenerateMap(), GetTileID(), LM_LOG, LoadCarlaMapTile(), MapTiles, Spectator , 以及 SpectatorAsEgo.

被这些函数引用 GenerateLargeMap(), GenerateMap() , 以及 GenerateMap().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ GenerateMap() [2/2]

void ALargeMapManager::GenerateMap ( TArray< TPair< FString, FIntVector > > MapPathsIds)

在文件 LargeMapManager.cpp445 行定义.

引用了 ClearWorldAndTiles(), GenerateMap(), GetTileID(), LM_LOG, LoadCarlaMapTile() , 以及 MapTiles.

+ 函数调用图:

◆ GenerateMap_Editor()

void ALargeMapManager::GenerateMap_Editor ( )
inline

在文件 LargeMapManager.h108 行定义.

◆ GenerateTileName()

FString ALargeMapManager::GenerateTileName ( TileID TileID)
protected

在文件 LargeMapManager.cpp1019 行定义.

◆ GetActorStreamingDistance()

float ALargeMapManager::GetActorStreamingDistance ( ) const

在文件 LargeMapManager.cpp311 行定义.

引用了 ActorStreamingDistance.

被这些函数引用 FCarlaEngine::NotifyBeginEpisode().

+ 这是这个函数的调用关系图:

◆ GetCarlaMapTile() [1/4]

FCarlaMapTile & ALargeMapManager::GetCarlaMapTile ( FIntVector TileVectorID)

在文件 LargeMapManager.cpp623 行定义.

引用了 GetTileID() , 以及 MapTiles.

+ 函数调用图:

◆ GetCarlaMapTile() [2/4]

FCarlaMapTile * ALargeMapManager::GetCarlaMapTile ( FVector Location)

在文件 LargeMapManager.cpp600 行定义.

引用了 GetCarlaMapTile() , 以及 GetTileID().

被这些函数引用 GetCarlaMapTile() , 以及 OnLevelRemovedFromWorld().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ GetCarlaMapTile() [3/4]

FCarlaMapTile * ALargeMapManager::GetCarlaMapTile ( TileID TileID)

在文件 LargeMapManager.cpp630 行定义.

引用了 MapTiles.

◆ GetCarlaMapTile() [4/4]

FCarlaMapTile & ALargeMapManager::GetCarlaMapTile ( ULevel * InLevel)

在文件 LargeMapManager.cpp606 行定义.

引用了 MapTiles , 以及 FCarlaMapTile::StreamingLevel.

◆ GetHeroVehicle()

ACarlaWheeledVehicle * ALargeMapManager::GetHeroVehicle ( )

在文件 LargeMapManager.cpp246 行定义.

引用了 ActorsToConsider , 以及 IsValid().

被这些函数引用 AVegetationManager::Tick().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ GetLayerStreamingDistance()

float ALargeMapManager::GetLayerStreamingDistance ( ) const

在文件 LargeMapManager.cpp306 行定义.

引用了 LayerStreamingDistance.

被这些函数引用 FCarlaEngine::NotifyBeginEpisode().

+ 这是这个函数的调用关系图:

◆ GetNumTiles()

int ALargeMapManager::GetNumTiles ( ) const
inline

在文件 LargeMapManager.h119 行定义.

被这些函数引用 ACarlaGameModeBase::InitGame().

+ 这是这个函数的调用关系图:

◆ GetNumTilesInXY()

FIntVector ALargeMapManager::GetNumTilesInXY ( ) const

在文件 LargeMapManager.cpp491 行定义.

引用了 GetTileVectorID() , 以及 MapTiles.

+ 函数调用图:

◆ GetTile0Offset()

FVector ALargeMapManager::GetTile0Offset ( )

在文件 LargeMapManager.cpp287 行定义.

引用了 Tile0Offset.

◆ GetTileID() [1/3]

ALargeMapManager::TileID ALargeMapManager::GetTileID ( FDVector TileLocation) const

在文件 LargeMapManager.cpp594 行定义.

引用了 GetTileID() , 以及 GetTileVectorID().

+ 函数调用图:

◆ GetTileID() [2/3]

ALargeMapManager::TileID ALargeMapManager::GetTileID ( FIntVector TileVectorID) const

在文件 LargeMapManager.cpp581 行定义.

◆ GetTileID() [3/3]

ALargeMapManager::TileID ALargeMapManager::GetTileID ( FVector TileLocation) const

From a given location it retrieves the TileID that covers that area

在文件 LargeMapManager.cpp588 行定义.

引用了 GetTileID() , 以及 GetTileVectorID().

被这些函数引用 CheckIfRebaseIsNeeded(), GenerateMap(), GenerateMap(), GetCarlaMapTile(), GetCarlaMapTile(), GetTileID(), GetTileID(), GetTilesToConsider(), IsLevelOfTileLoaded() , 以及 ASoilTypeManager::Tick().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ GetTileLocation() [1/2]

FVector ALargeMapManager::GetTileLocation ( FIntVector TileVectorID) const

在文件 LargeMapManager.cpp563 行定义.

引用了 Tile0Offset , 以及 TileSide.

◆ GetTileLocation() [2/2]

FVector ALargeMapManager::GetTileLocation ( TileID TileID) const

在文件 LargeMapManager.cpp557 行定义.

引用了 GetTileLocation() , 以及 GetTileVectorID().

被这些函数引用 CheckIfRebaseIsNeeded(), GetTileLocation() , 以及 LoadCarlaMapTile().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ GetTileLocationD() [1/2]

FDVector ALargeMapManager::GetTileLocationD ( FIntVector TileVectorID) const

在文件 LargeMapManager.cpp575 行定义.

引用了 Tile0Offset , 以及 TileSide.

◆ GetTileLocationD() [2/2]

FDVector ALargeMapManager::GetTileLocationD ( TileID TileID) const

在文件 LargeMapManager.cpp569 行定义.

引用了 GetTileLocationD() , 以及 GetTileVectorID().

被这些函数引用 GetTileLocationD().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ GetTileSize()

float ALargeMapManager::GetTileSize ( )

在文件 LargeMapManager.cpp282 行定义.

引用了 TileSide.

◆ GetTilesThatNeedToChangeState()

void ALargeMapManager::GetTilesThatNeedToChangeState ( const TSet< TileID > & InTilesToConsider,
TSet< TileID > & OutTilesToBeVisible,
TSet< TileID > & OutTilesToHidde )
protected

在文件 LargeMapManager.cpp971 行定义.

引用了 CurrentTilesLoaded , 以及 GetTilesThatNeedToChangeState().

被这些函数引用 GetTilesThatNeedToChangeState() , 以及 UpdateTilesState().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ GetTilesToConsider()

void ALargeMapManager::GetTilesToConsider ( const AActor * ActorToConsider,
TSet< TileID > & OutTilesToConsider )
protected

在文件 LargeMapManager.cpp934 行定义.

引用了 CurrentOriginD, GetTileID(), GetTilesToConsider(), GetTileVectorID(), LayerStreamingDistance , 以及 MapTiles.

被这些函数引用 GetTilesToConsider() , 以及 UpdateTilesState().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ GetTileVectorID() [1/3]

FIntVector ALargeMapManager::GetTileVectorID ( FDVector TileLocation) const

在文件 LargeMapManager.cpp538 行定义.

引用了 LocalTileOffset, Tile0Offset , 以及 TileSide.

◆ GetTileVectorID() [2/3]

FIntVector ALargeMapManager::GetTileVectorID ( FVector TileLocation) const

在文件 LargeMapManager.cpp528 行定义.

引用了 LocalTileOffset, Tile0Offset , 以及 TileSide.

被这些函数引用 GetNumTilesInXY(), ASoilTypeManager::GetTerrainPropertiesAtGlobalLocation(), GetTileID(), GetTileID(), GetTileLocation(), GetTileLocationD(), GetTilesToConsider(), LoadCarlaMapTile(), PrintMapInfo() , 以及 ASoilTypeManager::Tick().

+ 这是这个函数的调用关系图:

◆ GetTileVectorID() [3/3]

FIntVector ALargeMapManager::GetTileVectorID ( TileID TileID) const

在文件 LargeMapManager.cpp548 行定义.

◆ GlobalToLocalLocation()

FVector ALargeMapManager::GlobalToLocalLocation ( const FVector & InLocation) const

在文件 LargeMapManager.cpp324 行定义.

引用了 CurrentOriginD , 以及 FDVector::ToFVector().

被这些函数引用 FCarlaServer::FPimpl::BindActions(), FCarlaActor::GetActorLocalLocation(), FShapeVisitor::operator()(), FShapeVisitor::operator()(), FShapeVisitor::operator()(), FShapeVisitor::operator()(), FShapeVisitor::operator()(), FShapeVisitor::operator()(), FShapeVisitor::operator()() , 以及 FCarlaActor::SetActorGlobalLocation().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ GlobalToLocalTransform()

FTransform ALargeMapManager::GlobalToLocalTransform ( const FTransform & InTransform) const

在文件 LargeMapManager.cpp316 行定义.

引用了 CurrentOriginD , 以及 FDVector::ToFVector().

被这些函数引用 FCarlaActor::GetActorLocalTransform(), FShapeVisitor::operator()(), FShapeVisitor::operator()(), FCarlaActor::SetActorGlobalTransform() , 以及 UCarlaEpisode::SpawnActorWithInfo().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ IsLevelOfTileLoaded()

bool ALargeMapManager::IsLevelOfTileLoaded ( FIntVector InTileID) const

在文件 LargeMapManager.cpp509 行定义.

引用了 bPrintErrors, GetTileID(), LM_LOG, MapTiles , 以及 FCarlaMapTile::StreamingLevel.

+ 函数调用图:

◆ IsTileLoaded() [1/3]

bool ALargeMapManager::IsTileLoaded ( FDVector Location) const
inline

在文件 LargeMapManager.h137 行定义.

◆ IsTileLoaded() [2/3]

bool ALargeMapManager::IsTileLoaded ( FVector Location) const
inline

在文件 LargeMapManager.h132 行定义.

◆ IsTileLoaded() [3/3]

bool ALargeMapManager::IsTileLoaded ( TileID TileId) const
inline

在文件 LargeMapManager.h127 行定义.

被这些函数引用 CheckActiveActors() , 以及 CheckDormantActors().

+ 这是这个函数的调用关系图:

◆ LoadCarlaMapTile()

FCarlaMapTile & ALargeMapManager::LoadCarlaMapTile ( FString TileMapPath,
TileID TileId )

在文件 LargeMapManager.cpp636 行定义.

引用了 GetTileLocation(), GetTileVectorID(), LM_LOG, LoadCarlaMapTile(), FCarlaMapTile::Location, MapTiles, FCarlaMapTile::Name, ShouldTilesBlockOnLoad , 以及 FCarlaMapTile::StreamingLevel.

被这些函数引用 GenerateMap(), GenerateMap() , 以及 LoadCarlaMapTile().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ LocalToGlobalLocation()

FVector ALargeMapManager::LocalToGlobalLocation ( const FVector & InLocation) const

在文件 LargeMapManager.cpp337 行定义.

引用了 CurrentOriginD , 以及 FDVector::ToFVector().

被这些函数引用 FCarlaServer::FPimpl::BindActions(), URayTracer::CastRay(), FCarlaActor::GetActorGlobalLocation(), CaService::GetReferencePosition(), ASoilTypeManager::GetTerrainPropertiesAtLocalLocation(), OnActorSpawned(), AGnssSensor::PostPhysTick(), URayTracer::ProjectPoint(), FCarlaActor::SetActorLocalLocation() , 以及 ASoilTypeManager::Tick().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ LocalToGlobalTransform()

FTransform ALargeMapManager::LocalToGlobalTransform ( const FTransform & InTransform) const

在文件 LargeMapManager.cpp329 行定义.

引用了 CurrentOriginD , 以及 FDVector::ToFVector().

被这些函数引用 FCarlaServer::FPimpl::BindActions(), FCarlaActor::GetActorGlobalTransform(), ACarlaWheeledVehicle::GetBoxSphereBounds() , 以及 FCarlaActor::SetActorLocalTransform().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ OnActorDestroyed()

void ALargeMapManager::OnActorDestroyed ( AActor * DestroyedActor)

在文件 LargeMapManager.cpp257 行定义.

引用了 UCarlaEpisode::FindCarlaActor(), FCarlaActor::GetActorInfo(), UCarlaStatics::GetCurrentEpisode() , 以及 LM_LOG.

被这些函数引用 OnActorSpawned().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ OnActorSpawned()

void ALargeMapManager::OnActorSpawned ( const FCarlaActor & CarlaActor)

在文件 LargeMapManager.cpp170 行定义.

引用了 ActiveActors, ActorsToConsider, CheckIfRebaseIsNeeded(), FActorInfo::Description, DormantActors, FCarlaActor::GetActor(), FCarlaActor::GetActorId(), FCarlaActor::GetActorInfo(), UCarlaEpisode::GetActorRegistry(), UCarlaStatics::GetCurrentEpisode(), IsValid(), LM_LOG, LocalToGlobalLocation(), OnActorDestroyed(), OnActorSpawned(), Spectator, UpdateTilesState(), FActorAttribute::Value , 以及 FActorDescription::Variations.

被这些函数引用 FCarlaServer::FPimpl::BindActions(), FFrameData::CreateOrReuseActor(), OnActorSpawned(), RegisterInitialObjects() , 以及 CarlaReplayerHelper::TryToCreateReplayerActor().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ OnLevelAddedToWorld()

void ALargeMapManager::OnLevelAddedToWorld ( ULevel * InLevel,
UWorld * InWorld )
protected

在文件 LargeMapManager.cpp137 行定义.

引用了 LM_LOG , 以及 ATagger::TagActorsInLevel().

被这些函数引用 BeginPlay().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ OnLevelRemovedFromWorld()

void ALargeMapManager::OnLevelRemovedFromWorld ( ULevel * InLevel,
UWorld * InWorld )
protected

在文件 LargeMapManager.cpp146 行定义.

引用了 GetCarlaMapTile(), LM_LOG , 以及 FCarlaMapTile::TilesSpawned.

被这些函数引用 BeginPlay().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ PostWorldOriginOffset()

void ALargeMapManager::PostWorldOriginOffset ( UWorld * InWorld,
FIntVector InSrcOrigin,
FIntVector InDstOrigin )
protected

在文件 LargeMapManager.cpp103 行定义.

引用了 CurrentOriginD, CurrentOriginInt, UCarlaStatics::GetCurrentEpisode(), LM_LOG, FCarlaMapTile::Location, MapTiles, MsgTime, PositonMsgColor, PostWorldOriginOffset(), UCarlaEpisode::SetCurrentMapOrigin() , 以及 FCarlaMapTile::StreamingLevel.

被这些函数引用 BeginPlay() , 以及 PostWorldOriginOffset().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ PreWorldOriginOffset()

void ALargeMapManager::PreWorldOriginOffset ( UWorld * InWorld,
FIntVector InSrcOrigin,
FIntVector InDstOrigin )
protected

在文件 LargeMapManager.cpp98 行定义.

引用了 LM_LOG.

被这些函数引用 BeginPlay().

+ 这是这个函数的调用关系图:

◆ PrintMapInfo()

void ALargeMapManager::PrintMapInfo ( )
protected

在文件 LargeMapManager.cpp1060 行定义.

引用了 ActiveActors, ActorsToConsider, ClientLocMsgIndex, CurrentOriginD, CurrentOriginInt, CurrentTilesLoaded, DormantActors, GetTileVectorID(), IsValid(), MaxClientLocMsgIndex, MsgTime, PositonMsgColor, TileIDToString() , 以及 TilesDistMsgIndex.

被这些函数引用 Tick().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ RegisterInitialObjects()

void ALargeMapManager::RegisterInitialObjects ( )

在文件 LargeMapManager.cpp154 行定义.

引用了 UCarlaEpisode::GetActorRegistry(), UCarlaStatics::GetCurrentEpisode(), OnActorSpawned() , 以及 RegisterInitialObjects().

被这些函数引用 ACarlaGameModeBase::BeginPlay() , 以及 RegisterInitialObjects().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ RegisterTilesInWorldComposition()

void ALargeMapManager::RegisterTilesInWorldComposition ( )
protected

在文件 LargeMapManager.cpp469 行定义.

引用了 MapTiles.

被这些函数引用 BeginPlay().

+ 这是这个函数的调用关系图:

◆ RemoveLandscapeCollisionIfHaveTerraMechanics()

void ALargeMapManager::RemoveLandscapeCollisionIfHaveTerraMechanics ( ULevel * InLevel)
protected

◆ RemovePendingActorsToRemove()

void ALargeMapManager::RemovePendingActorsToRemove ( )
protected

在文件 LargeMapManager.cpp729 行定义.

引用了 ActiveActors, ActivesToRemove, ActorsToConsider, ActorsToRemove, DormantActors, DormantsToRemove, LM_LOG, RemovePendingActorsToRemove(), Spectator , 以及 SpectatorAsEgo.

被这些函数引用 RemovePendingActorsToRemove() , 以及 Tick().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ SetActorStreamingDistance()

void ALargeMapManager::SetActorStreamingDistance ( float Distance)

在文件 LargeMapManager.cpp299 行定义.

引用了 ActorStreamingDistance , 以及 ActorStreamingDistanceSquared.

被这些函数引用 FCarlaEngine::OnEpisodeSettingsChanged().

+ 这是这个函数的调用关系图:

◆ SetLayerStreamingDistance()

void ALargeMapManager::SetLayerStreamingDistance ( float Distance)

在文件 LargeMapManager.cpp292 行定义.

引用了 LayerStreamingDistance , 以及 LayerStreamingDistanceSquared.

被这些函数引用 FCarlaEngine::OnEpisodeSettingsChanged().

+ 这是这个函数的调用关系图:

◆ SetTile0Offset()

void ALargeMapManager::SetTile0Offset ( const FVector & Offset)

在文件 LargeMapManager.cpp272 行定义.

引用了 Tile0Offset.

◆ SetTileSize()

void ALargeMapManager::SetTileSize ( float Size)

在文件 LargeMapManager.cpp277 行定义.

引用了 TileSide.

◆ Tick()

void ALargeMapManager::Tick ( float DeltaTime)
override

在文件 LargeMapManager.cpp344 行定义.

引用了 bPrintMapInfo, CheckActiveActors(), CheckDormantActors(), CheckIfRebaseIsNeeded(), ConvertActiveToDormantActors(), ConvertDormantToActiveActors(), PrintMapInfo(), RemovePendingActorsToRemove() , 以及 UpdateTilesState().

+ 函数调用图:

◆ TileIDToString()

FString ALargeMapManager::TileIDToString ( TileID TileID)
protected

在文件 LargeMapManager.cpp1026 行定义.

被这些函数引用 PrintMapInfo().

+ 这是这个函数的调用关系图:

◆ UpdateCurrentTilesLoaded()

void ALargeMapManager::UpdateCurrentTilesLoaded ( const TSet< TileID > & InTilesToBeVisible,
const TSet< TileID > & InTilesToHidde )
protected

在文件 LargeMapManager.cpp1003 行定义.

引用了 CurrentTilesLoaded , 以及 UpdateCurrentTilesLoaded().

被这些函数引用 UpdateCurrentTilesLoaded() , 以及 UpdateTilesState().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ UpdateTilesState()

void ALargeMapManager::UpdateTilesState ( )
protected

在文件 LargeMapManager.cpp698 行定义.

引用了 ActorsToConsider, ActorsToRemove, GetTilesThatNeedToChangeState(), GetTilesToConsider(), IsValid(), UpdateCurrentTilesLoaded(), UpdateTilesState() , 以及 UpdateTileState().

被这些函数引用 OnActorSpawned(), Tick() , 以及 UpdateTilesState().

+ 函数调用图:
+ 这是这个函数的调用关系图:

◆ UpdateTileState()

void ALargeMapManager::UpdateTileState ( const TSet< TileID > & InTilesToUpdate,
bool InShouldBlockOnLoad,
bool InShouldBeLoaded,
bool InShouldBeVisible )
protected

在文件 LargeMapManager.cpp981 行定义.

引用了 MapTiles, FCarlaMapTile::StreamingLevel , 以及 UpdateTileState().

被这些函数引用 UpdateTilesState() , 以及 UpdateTileState().

+ 函数调用图:
+ 这是这个函数的调用关系图:

类成员变量说明

◆ ActiveActors

TArray<FCarlaActor::IdType> ALargeMapManager::ActiveActors
protected

◆ ActivesToRemove

TSet<FCarlaActor::IdType> ALargeMapManager::ActivesToRemove
protected

在文件 LargeMapManager.h272 行定义.

被这些函数引用 CheckActiveActors() , 以及 RemovePendingActorsToRemove().

◆ ActiveToDormantActors

TSet<FCarlaActor::IdType> ALargeMapManager::ActiveToDormantActors
protected

在文件 LargeMapManager.h276 行定义.

被这些函数引用 CheckActiveActors() , 以及 ConvertActiveToDormantActors().

◆ ActorsToConsider

TArray<AActor*> ALargeMapManager::ActorsToConsider
protected

◆ ActorsToRemove

TSet<AActor*> ALargeMapManager::ActorsToRemove
protected

在文件 LargeMapManager.h271 行定义.

被这些函数引用 RemovePendingActorsToRemove() , 以及 UpdateTilesState().

◆ ActorStreamingDistance

float ALargeMapManager::ActorStreamingDistance = 2.0f * 1000.0f * 100.0f
protected

在文件 LargeMapManager.h298 行定义.

被这些函数引用 BeginPlay(), GetActorStreamingDistance() , 以及 SetActorStreamingDistance().

◆ ActorStreamingDistanceSquared

float ALargeMapManager::ActorStreamingDistanceSquared = ActorStreamingDistance * ActorStreamingDistance
protected

在文件 LargeMapManager.h304 行定义.

被这些函数引用 BeginPlay(), CheckActiveActors(), CheckDormantActors() , 以及 SetActorStreamingDistance().

◆ AssetsPath

FString ALargeMapManager::AssetsPath = ""
protected

在文件 LargeMapManager.h328 行定义.

被这些函数引用 DumpTilesTable() , 以及 GenerateMap().

◆ BaseTileMapPath

FString ALargeMapManager::BaseTileMapPath = "/Game/Carla/Maps/LargeMap/EmptyTileBase"
protected

在文件 LargeMapManager.h330 行定义.

◆ bHasTerramechanics

bool ALargeMapManager::bHasTerramechanics = false
protected

在文件 LargeMapManager.h350 行定义.

被这些函数引用 BeginPlay().

◆ bPrintErrors

bool ALargeMapManager::bPrintErrors = false
protected

在文件 LargeMapManager.h347 行定义.

被这些函数引用 IsLevelOfTileLoaded().

◆ bPrintMapInfo

bool ALargeMapManager::bPrintMapInfo = true
protected

在文件 LargeMapManager.h344 行定义.

被这些函数引用 Tick().

◆ ClientLocMsgIndex

const int32 ALargeMapManager::ClientLocMsgIndex = 200
protected

在文件 LargeMapManager.h337 行定义.

被这些函数引用 PrintMapInfo().

◆ CurrentOriginD

FDVector ALargeMapManager::CurrentOriginD
protected

◆ CurrentOriginInt

FIntVector ALargeMapManager::CurrentOriginInt { 0 }
protected

在文件 LargeMapManager.h284 行定义.

被这些函数引用 PostWorldOriginOffset() , 以及 PrintMapInfo().

◆ CurrentTilesLoaded

TSet<uint64> ALargeMapManager::CurrentTilesLoaded
protected

在文件 LargeMapManager.h280 行定义.

被这些函数引用 GetTilesThatNeedToChangeState(), PrintMapInfo() , 以及 UpdateCurrentTilesLoaded().

◆ DormantActors

TArray<FCarlaActor::IdType> ALargeMapManager::DormantActors
protected

◆ DormantsToRemove

TSet<FCarlaActor::IdType> ALargeMapManager::DormantsToRemove
protected

在文件 LargeMapManager.h273 行定义.

被这些函数引用 CheckDormantActors() , 以及 RemovePendingActorsToRemove().

◆ DormantToActiveActors

TSet<FCarlaActor::IdType> ALargeMapManager::DormantToActiveActors
protected

在文件 LargeMapManager.h277 行定义.

被这些函数引用 CheckDormantActors() , 以及 ConvertDormantToActiveActors().

◆ LargeMapName

FString ALargeMapManager::LargeMapName = "testmap"

在文件 LargeMapManager.h151 行定义.

被这些函数引用 ACarlaGameModeBase::InitGame().

◆ LargeMapTilePath

FString ALargeMapManager::LargeMapTilePath = "/Game/Carla/Maps/testmap"

在文件 LargeMapManager.h149 行定义.

被这些函数引用 GenerateLargeMap().

◆ LayerStreamingDistance

float ALargeMapManager::LayerStreamingDistance = 3.0f * 1000.0f * 100.0f
protected

◆ LayerStreamingDistanceSquared

float ALargeMapManager::LayerStreamingDistanceSquared = LayerStreamingDistance * LayerStreamingDistance
protected

在文件 LargeMapManager.h303 行定义.

被这些函数引用 BeginPlay() , 以及 SetLayerStreamingDistance().

◆ LocalTileOffset

FVector ALargeMapManager::LocalTileOffset = FVector(0,0,0)
protected

在文件 LargeMapManager.h311 行定义.

被这些函数引用 GetTileVectorID() , 以及 GetTileVectorID().

◆ MapTiles

TMap<uint64, FCarlaMapTile> ALargeMapManager::MapTiles
protected

◆ MaxClientLocMsgIndex

const int32 ALargeMapManager::MaxClientLocMsgIndex = ClientLocMsgIndex + 10
protected

在文件 LargeMapManager.h338 行定义.

被这些函数引用 PrintMapInfo().

◆ MaxTilesDistMsgIndex

const int32 ALargeMapManager::MaxTilesDistMsgIndex = TilesDistMsgIndex + 10
protected

在文件 LargeMapManager.h335 行定义.

◆ MsgTime

float ALargeMapManager::MsgTime = 1.0f
protected

在文件 LargeMapManager.h341 行定义.

被这些函数引用 PostWorldOriginOffset() , 以及 PrintMapInfo().

◆ PositonMsgColor

FColor ALargeMapManager::PositonMsgColor = FColor::Purple
protected

在文件 LargeMapManager.h332 行定义.

被这些函数引用 PostWorldOriginOffset() , 以及 PrintMapInfo().

◆ RebaseOriginDistance

float ALargeMapManager::RebaseOriginDistance = 2.0f * 1000.0f * 100.0f
protected

在文件 LargeMapManager.h301 行定义.

被这些函数引用 BeginPlay() , 以及 CheckIfRebaseIsNeeded().

◆ RebaseOriginDistanceSquared

float ALargeMapManager::RebaseOriginDistanceSquared = RebaseOriginDistance * RebaseOriginDistance
protected

在文件 LargeMapManager.h305 行定义.

被这些函数引用 BeginPlay().

◆ ShouldTilesBlockOnLoad

bool ALargeMapManager::ShouldTilesBlockOnLoad = false
protected

在文件 LargeMapManager.h314 行定义.

被这些函数引用 LoadCarlaMapTile().

◆ Spectator

AActor* ALargeMapManager::Spectator = nullptr
protected

◆ SpectatorAsEgo

bool ALargeMapManager::SpectatorAsEgo = false

在文件 LargeMapManager.h207 行定义.

被这些函数引用 ConsiderSpectatorAsEgo(), GenerateMap() , 以及 RemovePendingActorsToRemove().

◆ TickInterval

float ALargeMapManager::TickInterval = 0.0f
protected

在文件 LargeMapManager.h292 行定义.

◆ Tile0Offset

FVector ALargeMapManager::Tile0Offset = FVector(0,0,0)
protected

◆ TilesDistMsgIndex

const int32 ALargeMapManager::TilesDistMsgIndex = 100
protected

在文件 LargeMapManager.h334 行定义.

被这些函数引用 PrintMapInfo().

◆ TileSide

float ALargeMapManager::TileSide = 2.0f * 1000.0f * 100.0f
protected

该类的文档由以下文件生成: