#include <VegetationManager.h>
Public 成员函数 | |
void | AddVehicle (ACarlaWheeledVehicle *Vehicle) |
void | RemoveVehicle (ACarlaWheeledVehicle *Vehicle) |
void | UpdatePoolBasePosition () |
Public 属性 | |
float | ActiveActorDistance {500.0f} |
bool | DebugMaterials {false} |
float | HideMaterialDistance {500.0f} |
int32 | InitialPoolSize {10} |
bool | SpawnBushes {true} |
bool | SpawnPlants {true} |
bool | SpawnRocks {true} |
float | SpawnScale {1.0f} |
bool | SpawnTrees {true} |
Overriden from AActor | |
float | PoolTranslationTimer {30.0f} |
FTransform | InactivePoolTransform { FQuat(1.0f, 1.0f, 1.0f, 1.0f), FVector(1.0f, 1.0f, 1.0f), FVector(1.0f, 1.0f, 1.0f)} |
ALargeMapManager * | LargeMap {nullptr} |
ACarlaWheeledVehicle * | HeroVehicle {nullptr} |
TMap< FString, FFoliageBlueprint > | FoliageBlueprintCache {} |
TMap< FString, FTileData > | TileCache {} |
TMap< FString, TArray< FPooledActor > > | ActorPool {} |
FTimerHandle | UpdatePoolInactiveTransformTimer |
virtual void | BeginPlay () override |
virtual void | Tick (float DeltaTime) override |
bool | IsFoliageTypeEnabled (const FString &Path) const |
bool | CheckForNewTiles () const |
TArray< FString > | GetTilesInUse () |
void | UpdateMaterials (FTileData *Tile) |
TArray< FElementsToSpawn > | GetElementsToSpawn (FTileData *Tile) |
void | SpawnSkeletalFoliages (TArray< FElementsToSpawn > &ElementsToSpawn) |
void | DestroySkeletalFoliages () |
void | ActivePooledActors () |
bool | EnableActorFromPool (const FTransform &Transform, int32 Index, std::shared_ptr< FTileMeshComponent > &TileMeshComponent, TArray< FPooledActor > &Pool) |
void | CreateOrUpdateTileCache (ULevel *InLevel) |
void | UpdateFoliageBlueprintCache (ULevel *InLevel) |
void | SetTileDataInternals (FTileData &TileData) |
void | SetInstancedStaticMeshComponentCache (FTileData &TileData) |
void | SetMaterialCache (FTileData &TileData) |
void | FreeTileCache (ULevel *InLevel) |
void | OnLevelAddedToWorld (ULevel *InLevel, UWorld *InWorld) |
void | OnLevelRemovedFromWorld (ULevel *InLevel, UWorld *InWorld) |
void | PostWorldOriginOffset (UWorld *, FIntVector, FIntVector InDstOrigin) |
void | CreatePoolForBPClass (const FFoliageBlueprint &BP) |
AActor * | CreateFoliage (const FFoliageBlueprint &BP, const FTransform &Transform) const |
void | GetSketalTemplates () |
在文件 VegetationManager.h 第 89 行定义.
|
private |
在文件 VegetationManager.cpp 第 591 行定义.
引用了 ActiveActorDistance, ActivePooledActors(), ActorPool , 以及 HeroVehicle.
被这些函数引用 ActivePooledActors() , 以及 Tick().
void AVegetationManager::AddVehicle | ( | ACarlaWheeledVehicle * | Vehicle | ) |
在文件 VegetationManager.cpp 第 279 行定义.
引用了 AddVehicle(), HeroVehicle, IsValid() , 以及 Vehicle.
被这些函数引用 ACarlaWheeledVehicle::AddReferenceToManager() , 以及 AddVehicle().
|
overrideprotectedvirtual |
在文件 VegetationManager.cpp 第 231 行定义.
引用了 BeginPlay(), UCarlaStatics::GetLargeMapManager(), LargeMap, OnLevelAddedToWorld(), OnLevelRemovedFromWorld() , 以及 PostWorldOriginOffset().
被这些函数引用 BeginPlay().
|
private |
在文件 VegetationManager.cpp 第 771 行定义.
引用了 CheckForNewTiles(), IsValid() , 以及 TileCache.
被这些函数引用 CheckForNewTiles().
|
private |
在文件 VegetationManager.cpp 第 691 行定义.
引用了 CreateFoliage(), FFoliageBlueprint::SpawnedClass , 以及 SpawnScale.
被这些函数引用 CreateFoliage(), CreatePoolForBPClass() , 以及 SpawnSkeletalFoliages().
|
private |
在文件 VegetationManager.cpp 第 300 行定义.
引用了 CreateOrUpdateTileCache(), FTileData::InstancedFoliageActor, IsValid(), FTileData::MaterialInstanceDynamicCache, FTileData::ProceduralFoliageVolume, SetTileDataInternals(), TileCache , 以及 FTileData::TileMeshesCache.
被这些函数引用 CreateOrUpdateTileCache() , 以及 OnLevelAddedToWorld().
|
private |
在文件 VegetationManager.cpp 第 666 行定义.
引用了 FPooledActor::Actor, ActorPool, FFoliageBlueprint::BPFullClassName, CreateFoliage(), CreatePoolForBPClass(), FPooledActor::DisableActor(), InitialPoolSize , 以及 IsValid().
被这些函数引用 CreatePoolForBPClass() , 以及 UpdateFoliageBlueprintCache().
|
private |
在文件 VegetationManager.cpp 第 617 行定义.
引用了 ActorPool, DestroySkeletalFoliages(), ACarlaWheeledVehicle::GetDetectionSize() , 以及 HeroVehicle.
被这些函数引用 DestroySkeletalFoliages() , 以及 Tick().
|
private |
在文件 VegetationManager.cpp 第 641 行定义.
引用了 EnableActorFromPool() , 以及 SpawnScale.
被这些函数引用 EnableActorFromPool() , 以及 SpawnSkeletalFoliages().
|
private |
在文件 VegetationManager.cpp 第 450 行定义.
引用了 FTileData::InstancedFoliageActor, IsValid(), FTileData::MaterialInstanceDynamicCache, FTileData::ProceduralFoliageVolume, TileCache , 以及 FTileData::TileMeshesCache.
被这些函数引用 OnLevelRemovedFromWorld().
|
private |
在文件 VegetationManager.cpp 第 498 行定义.
引用了 FoliageBlueprintCache, GetElementsToSpawn(), ACarlaWheeledVehicle::GetFoliageInstancesCloseToVehicle(), HeroVehicle, FTileMeshComponent::IndicesInUse, FTileMeshComponent::InstancedStaticMeshComponent, FElementsToSpawn::TileMeshComponent , 以及 FTileData::TileMeshesCache.
被这些函数引用 GetElementsToSpawn() , 以及 Tick().
|
private |
|
private |
在文件 VegetationManager.cpp 第 789 行定义.
引用了 GetTilesInUse(), HeroVehicle, FTileData::InstancedFoliageActor, IsValid(), FTileData::ProceduralFoliageVolume , 以及 TileCache.
被这些函数引用 GetTilesInUse() , 以及 Tick().
|
private |
在文件 VegetationManager.cpp 第 753 行定义.
引用了 IsFoliageTypeEnabled(), SpawnBushes, SpawnPlants, SpawnRocks , 以及 SpawnTrees.
被这些函数引用 IsFoliageTypeEnabled() , 以及 UpdateFoliageBlueprintCache().
|
private |
在文件 VegetationManager.cpp 第 730 行定义.
引用了 CreateOrUpdateTileCache(), OnLevelAddedToWorld() , 以及 UpdateFoliageBlueprintCache().
被这些函数引用 BeginPlay() , 以及 OnLevelAddedToWorld().
|
private |
在文件 VegetationManager.cpp 第 737 行定义.
引用了 FreeTileCache() , 以及 OnLevelRemovedFromWorld().
被这些函数引用 BeginPlay() , 以及 OnLevelRemovedFromWorld().
|
private |
在文件 VegetationManager.cpp 第 743 行定义.
引用了 InactivePoolTransform, PostWorldOriginOffset() , 以及 UpdatePoolBasePosition().
被这些函数引用 BeginPlay() , 以及 PostWorldOriginOffset().
void AVegetationManager::RemoveVehicle | ( | ACarlaWheeledVehicle * | Vehicle | ) |
在文件 VegetationManager.cpp 第 288 行定义.
引用了 HeroVehicle, IsValid(), RemoveVehicle() , 以及 Vehicle.
被这些函数引用 ACarlaWheeledVehicle::RemoveReferenceToManager() , 以及 RemoveVehicle().
|
private |
在文件 VegetationManager.cpp 第 350 行定义.
引用了 FTileData::ContainsMesh(), FoliageBlueprintCache, FTileData::InstancedFoliageActor, IsValid(), SetInstancedStaticMeshComponentCache(), FTileData::TileMeshesCache , 以及 FTileData::UpdateTileMeshComponent().
被这些函数引用 SetInstancedStaticMeshComponentCache() , 以及 SetTileDataInternals().
|
private |
在文件 VegetationManager.cpp 第 379 行定义.
引用了 HideMaterialDistance, FTileMeshComponent::InstancedStaticMeshComponent, IsValid(), FTileData::MaterialInstanceDynamicCache, SetMaterialCache() , 以及 FTileData::TileMeshesCache.
被这些函数引用 SetMaterialCache() , 以及 SetTileDataInternals().
|
private |
在文件 VegetationManager.cpp 第 343 行定义.
引用了 SetInstancedStaticMeshComponentCache(), SetMaterialCache() , 以及 SetTileDataInternals().
被这些函数引用 CreateOrUpdateTileCache() , 以及 SetTileDataInternals().
|
private |
在文件 VegetationManager.cpp 第 543 行定义.
引用了 FPooledActor::Actor, ActorPool, CreateFoliage(), FPooledActor::EnableActor(), EnableActorFromPool(), ACarlaWheeledVehicle::GetDetectionSize(), HeroVehicle, IsValid() , 以及 SpawnSkeletalFoliages().
被这些函数引用 SpawnSkeletalFoliages() , 以及 Tick().
|
overrideprotectedvirtual |
在文件 VegetationManager.cpp 第 241 行定义.
引用了 ActivePooledActors(), DestroySkeletalFoliages(), GetElementsToSpawn(), ALargeMapManager::GetHeroVehicle(), GetTilesInUse(), HeroVehicle, IsValid(), LargeMap, SpawnSkeletalFoliages(), Tick(), TileCache, ACarlaWheeledVehicle::UpdateDetectionBox() , 以及 UpdateMaterials().
被这些函数引用 Tick().
|
private |
在文件 VegetationManager.cpp 第 412 行定义.
引用了 FFoliageBlueprint::BPFullClassName, CreatePoolForBPClass(), FoliageBlueprintCache, IsFoliageTypeEnabled(), FFoliageBlueprint::IsValid(), IsValid(), FFoliageBlueprint::SetBPClassName(), FFoliageBlueprint::SetSpawnedClass() , 以及 UpdateFoliageBlueprintCache().
被这些函数引用 OnLevelAddedToWorld() , 以及 UpdateFoliageBlueprintCache().
|
private |
在文件 VegetationManager.cpp 第 490 行定义.
引用了 DebugMaterials, HeroVehicle, Position, FTileData::UpdateMaterialCache() , 以及 UpdateMaterials().
被这些函数引用 Tick() , 以及 UpdateMaterials().
void AVegetationManager::UpdatePoolBasePosition | ( | ) |
在文件 VegetationManager.cpp 第 712 行定义.
引用了 ActorPool, InactivePoolTransform , 以及 UpdatePoolBasePosition().
被这些函数引用 PostWorldOriginOffset() , 以及 UpdatePoolBasePosition().
float AVegetationManager::ActiveActorDistance {500.0f} |
在文件 VegetationManager.h 第 108 行定义.
被这些函数引用 ActivePooledActors().
|
private |
在文件 VegetationManager.h 第 182 行定义.
被这些函数引用 ActivePooledActors(), CreatePoolForBPClass(), DestroySkeletalFoliages(), SpawnSkeletalFoliages() , 以及 UpdatePoolBasePosition().
bool AVegetationManager::DebugMaterials {false} |
在文件 VegetationManager.h 第 102 行定义.
被这些函数引用 UpdateMaterials().
|
private |
在文件 VegetationManager.h 第 179 行定义.
被这些函数引用 GetElementsToSpawn(), SetInstancedStaticMeshComponentCache() , 以及 UpdateFoliageBlueprintCache().
|
private |
float AVegetationManager::HideMaterialDistance {500.0f} |
在文件 VegetationManager.h 第 105 行定义.
被这些函数引用 SetMaterialCache().
|
private |
在文件 VegetationManager.h 第 174 行定义.
被这些函数引用 PostWorldOriginOffset() , 以及 UpdatePoolBasePosition().
int32 AVegetationManager::InitialPoolSize {10} |
在文件 VegetationManager.h 第 127 行定义.
被这些函数引用 CreatePoolForBPClass().
|
private |
在文件 VegetationManager.h 第 176 行定义.
被这些函数引用 BeginPlay() , 以及 Tick().
|
private |
在文件 VegetationManager.h 第 173 行定义.
bool AVegetationManager::SpawnBushes {true} |
在文件 VegetationManager.h 第 112 行定义.
被这些函数引用 IsFoliageTypeEnabled().
bool AVegetationManager::SpawnPlants {true} |
在文件 VegetationManager.h 第 121 行定义.
被这些函数引用 IsFoliageTypeEnabled().
bool AVegetationManager::SpawnRocks {true} |
在文件 VegetationManager.h 第 118 行定义.
被这些函数引用 IsFoliageTypeEnabled().
float AVegetationManager::SpawnScale {1.0f} |
在文件 VegetationManager.h 第 124 行定义.
被这些函数引用 CreateFoliage() , 以及 EnableActorFromPool().
bool AVegetationManager::SpawnTrees {true} |
在文件 VegetationManager.h 第 115 行定义.
被这些函数引用 IsFoliageTypeEnabled().
|
private |
在文件 VegetationManager.h 第 180 行定义.
被这些函数引用 CheckForNewTiles(), CreateOrUpdateTileCache(), FreeTileCache(), GetTilesInUse() , 以及 Tick().
|
private |
在文件 VegetationManager.h 第 184 行定义.