|
CARLA
|
#include <CustomTerrainPhysicsComponent.h>
Public Member Functions | |
| void | Clear () |
| FSparseHighDetailMap (float ParticleDiameter=0.02f, float Depth=0.4f) | |
| float | GetHeight (FDVector Position) |
| std::vector< uint64_t > | GetIntersectingTiles (const FOrientedBox &OBox) |
| std::vector< uint64_t > | GetLoadedTilesInRange (FDVector Position, float Radius) |
| std::vector< FParticle * > | GetParticlesInBox (const FOrientedBox &OBox) |
| std::vector< FParticle * > | GetParticlesInRadius (FDVector Position, float Radius) |
| std::vector< FParticle * > | GetParticlesInTileRadius (FDVector Position, float Radius) |
| FDenseTile & | GetTile (FDVector Position) |
| FDenseTile & | GetTile (uint32_t Tile_X, uint32_t Tile_Y) |
| FDenseTile & | GetTile (uint64_t TileId) |
| uint64_t | GetTileId (FDVector Position) |
| uint64_t | GetTileId (uint32_t Tile_X, uint32_t Tile_Y) |
| uint64_t | GetTileId (uint64_t TileId) |
| std::vector< uint64_t > | GetTileIdInCache () |
| std::vector< uint64_t > | GetTileIdInMap () |
| FDVector | GetTilePosition (uint32_t Tile_X, uint32_t Tile_Y) |
| FDVector | GetTilePosition (uint64_t TileId) |
| float | GetTileSize () const |
| FIntVector | GetVectorTileId (FDVector Position) |
| FIntVector | GetVectorTileId (uint64_t TileId) |
| void | Init (uint32 NewTextureSize, float NewAffectedRadius, float ParticleDiameter, float Depth, float NewFloorHeight) |
| void | InitializeMap (UHeightMapDataAsset *DataAsset, FDVector Origin, FDVector MapSize, float Size, float ScaleZ) |
| FDenseTile & | InitializeRegion (uint32_t Tile_X, uint32_t Tile_Y) |
| FDenseTile & | InitializeRegion (uint64_t TileId) |
| FDenseTile & | InitializeRegionInCache (uint64_t TileId) |
| void | LockMutex () |
| void | SaveMap () |
| void | UnLockMutex () |
| void | Update (FVector Position, float RadiusX, float RadiusY) |
| void | UpdateHeightMap (UHeightMapDataAsset *DataAsset, FDVector Origin, FDVector MapSize, float Size, float ScaleZ) |
| void | UpdateMaps (FDVector Position, float RadiusX, float RadiusY, float CacheRadiusX, float CacheRadiusY) |
Public Attributes | |
| std::unordered_map< uint64_t, FDenseTile > | CacheMap |
| FCriticalSection | Lock_Particles |
| std::unordered_map< uint64_t, FDenseTile > | Map |
| FString | SavePath |
Private Attributes | |
| float | AffectedRadius = 0.0f |
| FDVector | Extension |
| float | FloorHeight = 0.0f |
| FHeightMapData | Heightmap |
| FCriticalSection | Lock_CacheMap |
| FCriticalSection | Lock_GetTile |
| FCriticalSection | Lock_Map |
| FCriticalSection | Lock_Position |
| float | ParticleSize = 0.02f |
| FVector | PositionToUpdate |
| float | TerrainDepth = 0.4f |
| uint32 | TextureSize = 0 |
| FDVector | Tile0Position |
| float | TileSize = 1.f |
| std::unordered_map< uint64_t, FDenseTile > | TilesToWrite |
Friends | |
| struct | FTilesWorker |
Definition at line 113 of file CustomTerrainPhysicsComponent.h.
|
inline |
Definition at line 118 of file CustomTerrainPhysicsComponent.h.
| void FSparseHighDetailMap::Clear | ( | ) |
Definition at line 766 of file CustomTerrainPhysicsComponent.cpp.
References FHeightMapData::Clear(), Heightmap, and Map.
|
inline |
Definition at line 160 of file CustomTerrainPhysicsComponent.h.
References FHeightMapData::GetHeight(), Heightmap, and Position.
| std::vector< uint64_t > FSparseHighDetailMap::GetIntersectingTiles | ( | const FOrientedBox & | OBox | ) |
Definition at line 468 of file CustomTerrainPhysicsComponent.cpp.
References GetIntersectingTiles(), GetTileId(), GetTilePosition(), UEFrameToSI(), and UEFrameToSIDirection().
Referenced by GetIntersectingTiles(), and GetParticlesInBox().
| std::vector< uint64_t > FSparseHighDetailMap::GetLoadedTilesInRange | ( | FDVector | Position, |
| float | Radius | ||
| ) |
Definition at line 578 of file CustomTerrainPhysicsComponent.cpp.
References GetLoadedTilesInRange(), GetTileId(), Map, Position, and TileSize.
Referenced by GetLoadedTilesInRange().
| std::vector< FParticle * > FSparseHighDetailMap::GetParticlesInBox | ( | const FOrientedBox & | OBox | ) |
Definition at line 454 of file CustomTerrainPhysicsComponent.cpp.
References GetIntersectingTiles(), GetParticlesInBox(), FDenseTile::GetParticlesInBox(), and GetTile().
Referenced by GetParticlesInBox().
| std::vector< FParticle * > FSparseHighDetailMap::GetParticlesInRadius | ( | FDVector | Position, |
| float | Radius | ||
| ) |
Definition at line 365 of file CustomTerrainPhysicsComponent.cpp.
References FDenseTile::GetParticlesInRadius(), GetParticlesInRadius(), GetTile(), GetTileId(), and Position.
Referenced by GetParticlesInRadius(), and GetParticlesInTileRadius().
| std::vector< FParticle * > FSparseHighDetailMap::GetParticlesInTileRadius | ( | FDVector | Position, |
| float | Radius | ||
| ) |
Definition at line 391 of file CustomTerrainPhysicsComponent.cpp.
References Extension, FDenseTile::GetParticlesInRadius(), GetParticlesInRadius(), GetTile(), GetTileId(), Map, Position, TileSize, FDVector::X, and FDVector::Y.
| FDenseTile & FSparseHighDetailMap::GetTile | ( | FDVector | Position | ) |
Definition at line 651 of file CustomTerrainPhysicsComponent.cpp.
References GetTile(), GetTileId(), and Position.
| FDenseTile & FSparseHighDetailMap::GetTile | ( | uint32_t | Tile_X, |
| uint32_t | Tile_Y | ||
| ) |
Definition at line 657 of file CustomTerrainPhysicsComponent.cpp.
References GetTile(), and GetTileId().
Referenced by GetParticlesInBox(), GetParticlesInRadius(), GetParticlesInTileRadius(), GetTile(), GetTile(), and GetTile().
| FDenseTile & FSparseHighDetailMap::GetTile | ( | uint64_t | TileId | ) |
Definition at line 662 of file CustomTerrainPhysicsComponent.cpp.
References CacheMap, GetTile(), InitializeRegion(), Lock_CacheMap, Lock_GetTile, and Map.
| uint64_t FSparseHighDetailMap::GetTileId | ( | FDVector | Position | ) |
Definition at line 629 of file CustomTerrainPhysicsComponent.cpp.
References GetTileId(), Position, Tile0Position, TileSize, FDVector::X, and FDVector::Y.
| uint64_t FSparseHighDetailMap::GetTileId | ( | uint32_t | Tile_X, |
| uint32_t | Tile_Y | ||
| ) |
Definition at line 624 of file CustomTerrainPhysicsComponent.cpp.
Referenced by GetIntersectingTiles(), GetLoadedTilesInRange(), GetParticlesInRadius(), GetParticlesInTileRadius(), GetTile(), GetTile(), GetTileId(), InitializeRegion(), and Update().
| uint64_t FSparseHighDetailMap::GetTileId | ( | uint64_t | TileId | ) |
|
inline |
Definition at line 197 of file CustomTerrainPhysicsComponent.h.
References CacheMap.
|
inline |
Definition at line 188 of file CustomTerrainPhysicsComponent.h.
References Map.
| FDVector FSparseHighDetailMap::GetTilePosition | ( | uint32_t | Tile_X, |
| uint32_t | Tile_Y | ||
| ) |
Definition at line 644 of file CustomTerrainPhysicsComponent.cpp.
References FloorHeight, Position, Tile0Position, and TileSize.
| FDVector FSparseHighDetailMap::GetTilePosition | ( | uint64_t | TileId | ) |
Definition at line 637 of file CustomTerrainPhysicsComponent.cpp.
References GetTilePosition().
Referenced by GetIntersectingTiles(), GetTilePosition(), InitializeRegion(), and InitializeRegionInCache().
|
inline |
Definition at line 133 of file CustomTerrainPhysicsComponent.h.
References TileSize.
| FIntVector FSparseHighDetailMap::GetVectorTileId | ( | FDVector | Position | ) |
Definition at line 691 of file CustomTerrainPhysicsComponent.cpp.
References Position, Tile0Position, TileSize, FDVector::X, and FDVector::Y.
Referenced by Update(), and UpdateMaps().
| FIntVector FSparseHighDetailMap::GetVectorTileId | ( | uint64_t | TileId | ) |
Definition at line 697 of file CustomTerrainPhysicsComponent.cpp.
|
inline |
Definition at line 121 of file CustomTerrainPhysicsComponent.h.
References AffectedRadius, FloorHeight, ParticleSize, TerrainDepth, and TextureSize.
| void FSparseHighDetailMap::InitializeMap | ( | UHeightMapDataAsset * | DataAsset, |
| FDVector | Origin, | ||
| FDVector | MapSize, | ||
| float | Size, | ||
| float | ScaleZ | ||
| ) |
Definition at line 740 of file CustomTerrainPhysicsComponent.cpp.
References Extension, Heightmap, FHeightMapData::InitializeHeightmap(), Tile0Position, TileSize, FDVector::X, FDVector::Y, and FDVector::Z.
| FDenseTile & FSparseHighDetailMap::InitializeRegion | ( | uint32_t | Tile_X, |
| uint32_t | Tile_Y | ||
| ) |
Definition at line 704 of file CustomTerrainPhysicsComponent.cpp.
References GetTileId(), and InitializeRegion().
Referenced by GetTile(), and InitializeRegion().
| FDenseTile & FSparseHighDetailMap::InitializeRegion | ( | uint64_t | TileId | ) |
Definition at line 710 of file CustomTerrainPhysicsComponent.cpp.
References AffectedRadius, GetTilePosition(), Heightmap, FDenseTile::InitializeTile(), Map, ParticleSize, SavePath, TerrainDepth, TextureSize, and TileSize.
| FDenseTile & FSparseHighDetailMap::InitializeRegionInCache | ( | uint64_t | TileId | ) |
Definition at line 724 of file CustomTerrainPhysicsComponent.cpp.
References AffectedRadius, CacheMap, GetTilePosition(), Heightmap, FDenseTile::InitializeTile(), Lock_CacheMap, ParticleSize, SavePath, TerrainDepth, TextureSize, and TileSize.
|
inline |
Definition at line 178 of file CustomTerrainPhysicsComponent.h.
References Lock_Map.
| void FSparseHighDetailMap::SaveMap | ( | ) |
|
inline |
Definition at line 183 of file CustomTerrainPhysicsComponent.h.
References Lock_Map.
| void FSparseHighDetailMap::Update | ( | FVector | Position, |
| float | RadiusX, | ||
| float | RadiusY | ||
| ) |
Definition at line 865 of file CustomTerrainPhysicsComponent.cpp.
References Extension, GetTileId(), GetVectorTileId(), Map, Position, PositionToUpdate, FDVector::X, FDVector::Y, and FDVector::Z.
| void FSparseHighDetailMap::UpdateHeightMap | ( | UHeightMapDataAsset * | DataAsset, |
| FDVector | Origin, | ||
| FDVector | MapSize, | ||
| float | Size, | ||
| float | ScaleZ | ||
| ) |
Definition at line 755 of file CustomTerrainPhysicsComponent.cpp.
References FHeightMapData::Clear(), Extension, Heightmap, and FHeightMapData::InitializeHeightmap().
| void FSparseHighDetailMap::UpdateMaps | ( | FDVector | Position, |
| float | RadiusX, | ||
| float | RadiusY, | ||
| float | CacheRadiusX, | ||
| float | CacheRadiusY | ||
| ) |
Definition at line 772 of file CustomTerrainPhysicsComponent.cpp.
References CacheMap, GetVectorTileId(), Lock_CacheMap, Lock_Map, Map, Position, and UpdateMaps().
Referenced by UpdateMaps().
|
friend |
Definition at line 116 of file CustomTerrainPhysicsComponent.h.
|
private |
Definition at line 221 of file CustomTerrainPhysicsComponent.h.
Referenced by Init(), InitializeRegion(), and InitializeRegionInCache().
| std::unordered_map<uint64_t, FDenseTile> FSparseHighDetailMap::CacheMap |
Definition at line 208 of file CustomTerrainPhysicsComponent.h.
Referenced by GetTile(), GetTileIdInCache(), InitializeRegionInCache(), SaveMap(), and UpdateMaps().
|
private |
Definition at line 214 of file CustomTerrainPhysicsComponent.h.
Referenced by GetParticlesInTileRadius(), InitializeMap(), Update(), and UpdateHeightMap().
|
private |
Definition at line 219 of file CustomTerrainPhysicsComponent.h.
Referenced by GetTilePosition(), and Init().
|
private |
Definition at line 216 of file CustomTerrainPhysicsComponent.h.
Referenced by Clear(), GetHeight(), InitializeMap(), InitializeRegion(), InitializeRegionInCache(), and UpdateHeightMap().
|
private |
Definition at line 224 of file CustomTerrainPhysicsComponent.h.
Referenced by GetTile(), InitializeRegionInCache(), and UpdateMaps().
|
private |
Definition at line 225 of file CustomTerrainPhysicsComponent.h.
Referenced by GetTile().
|
private |
Definition at line 223 of file CustomTerrainPhysicsComponent.h.
Referenced by LockMutex(), UnLockMutex(), and UpdateMaps().
| FCriticalSection FSparseHighDetailMap::Lock_Particles |
Definition at line 210 of file CustomTerrainPhysicsComponent.h.
|
private |
Definition at line 226 of file CustomTerrainPhysicsComponent.h.
| std::unordered_map<uint64_t, FDenseTile> FSparseHighDetailMap::Map |
Definition at line 207 of file CustomTerrainPhysicsComponent.h.
Referenced by Clear(), GetLoadedTilesInRange(), GetParticlesInTileRadius(), GetTile(), GetTileIdInMap(), InitializeRegion(), SaveMap(), Update(), and UpdateMaps().
|
private |
Definition at line 217 of file CustomTerrainPhysicsComponent.h.
Referenced by Init(), InitializeRegion(), and InitializeRegionInCache().
|
private |
Definition at line 222 of file CustomTerrainPhysicsComponent.h.
Referenced by Update().
| FString FSparseHighDetailMap::SavePath |
Definition at line 209 of file CustomTerrainPhysicsComponent.h.
Referenced by InitializeRegion(), InitializeRegionInCache(), and SaveMap().
|
private |
Definition at line 218 of file CustomTerrainPhysicsComponent.h.
Referenced by Init(), InitializeRegion(), and InitializeRegionInCache().
|
private |
Definition at line 220 of file CustomTerrainPhysicsComponent.h.
Referenced by Init(), InitializeRegion(), and InitializeRegionInCache().
|
private |
Definition at line 213 of file CustomTerrainPhysicsComponent.h.
Referenced by GetTileId(), GetTilePosition(), GetVectorTileId(), and InitializeMap().
|
private |
Definition at line 215 of file CustomTerrainPhysicsComponent.h.
Referenced by GetLoadedTilesInRange(), GetParticlesInTileRadius(), GetTileId(), GetTilePosition(), GetTileSize(), GetVectorTileId(), InitializeMap(), InitializeRegion(), and InitializeRegionInCache().
|
private |
Definition at line 212 of file CustomTerrainPhysicsComponent.h.