#include <ProceduralBuilding.h>
Public 成员函数 | |
AProceduralBuilding () | |
void | ConvertOldBP_ToNativeCodeObject (AActor *BP_Building) |
UHierarchicalInstancedStaticMeshComponent * | GetHISMComp (const UStaticMesh *SM) |
void | HideAllChildren () |
void | SetBaseMeshes (const TArray< UStaticMesh * > &InBaseMeshes, const TArray< TSubclassOf< AActor > > &InBaseBPs, const TArray< UStaticMesh * > &InCornerBaseMeshes, const TArray< TSubclassOf< AActor > > &InCornerBaseBPs, const TArray< UStaticMesh * > &InDoorMeshes, const TArray< TSubclassOf< AActor > > &InDoorBPs) |
void | SetBaseParameters (const TSet< int > &InDoorsIndexPosition, const TArray< bool > &InUseWallMesh, int InNumFloors, int InLengthX, int InLengthY, bool InCorners, bool InUseFullBlocks) |
void | SetBodyMeshes (const TArray< UStaticMesh * > &InBodyMeshes, const TArray< TSubclassOf< AActor > > &InBodyBPs, const TArray< UStaticMesh * > &InCornerBodyMeshes, const TArray< TSubclassOf< AActor > > &InCornerBodyBPs, const TArray< UStaticMesh * > &InWallMeshes, const TArray< TSubclassOf< AActor > > &InWallBPs) |
void | SetTopMeshes (const TArray< UStaticMesh * > &InTopMeshes, const TArray< TSubclassOf< AActor > > &InTopBPs, const TArray< UStaticMesh * > &InCornerTopMeshes, const TArray< TSubclassOf< AActor > > &InCornerTopBPs, const TArray< UStaticMesh * > &InRoofMeshes, const TArray< TSubclassOf< AActor > > &InRoofBPs) |
void | SetVisibilityParameters (const TArray< bool > &InSideVisibility, const TArray< bool > &InCornerVisibility, bool InRoofVisibility) |
Protected 成员函数 | |
void | CreateBuilding () |
void | FixMobility () |
void | Reset () |
Protected 属性 | |
TArray< TSubclassOf< AActor > > | BaseBPs |
TArray< UStaticMesh * > | BaseMeshes |
Meshes | |
TArray< TSubclassOf< AActor > > | BodyBPs |
TArray< UStaticMesh * > | BodyMeshes |
Meshes | Body | |
TArray< UChildActorComponent * > | ChildActorComps |
TArray< TSubclassOf< AActor > > | CornerBaseBPs |
TArray< UStaticMesh * > | CornerBaseMeshes |
TArray< TSubclassOf< AActor > > | CornerBodyBPs |
TArray< UStaticMesh * > | CornerBodyMeshes |
bool | Corners = false |
TArray< TSubclassOf< AActor > > | CornerTopBPs |
TArray< UStaticMesh * > | CornerTopMeshes |
TArray< bool > | CornerVisibility |
TArray< TSubclassOf< AActor > > | DoorBPs |
TArray< UStaticMesh * > | DoorMeshes |
TSet< int > | DoorsIndexPosition |
Base Parameters | |
TMap< FString, UHierarchicalInstancedStaticMeshComponent * > | HISMComps |
int | LengthX = 0 |
int | LengthY = 0 |
int | NumFloors = 0 |
TArray< TSubclassOf< AActor > > | RoofBPs |
TArray< UStaticMesh * > | RoofMeshes |
bool | RoofVisibility = true |
UStaticMeshComponent * | RootSMComp = nullptr |
TArray< bool > | SideVisibility |
Base Parameters | Visibility | |
TArray< TSubclassOf< AActor > > | TopBPs |
TArray< UStaticMesh * > | TopMeshes |
Meshes | Top | |
bool | UseFullBlocks = false |
TArray< bool > | UseWallMesh |
TArray< TSubclassOf< AActor > > | WallBPs |
TArray< UStaticMesh * > | WallMeshes |
Private 成员函数 | |
float | AddChunck (const UStaticMesh *SelectedMesh, const TSubclassOf< AActor > SelectedBP, bool Visible, FBox &OutSelectedMeshBounds) |
void | AddMeshToBuilding (const UStaticMesh *SM) |
TSet< int > | CalculateDoorsIndexInSide (int StartIndex, int Length) |
void | CalculateSidesLength () |
void | CalculateSideVisibilities (int SideIndex, bool &MainVisibility, bool &CornerVisbility) |
void | ChooseGeometryToSpawn (const TArray< UStaticMesh * > &InMeshes, const TArray< TSubclassOf< AActor > > &InMainBPs, UStaticMesh **OutMesh, TSubclassOf< AActor > *OutBP) |
void | CreateFloor (const FloorMeshCollection &MeshCollection, bool IncludeDoors, bool IncludeWalls) |
void | CreateRoof () |
float | CreateSide (const FloorMeshCollection &MeshCollection, const TSet< int > &AuxiliarPositions, int SideLength, bool MainVisibility, bool CornerVisbility) |
TSet< int > | GenerateWallsIndexPositions (int Length) |
FVector | GetMeshSize (const UStaticMesh *SM) |
void | Init () |
void | UpdateTransformPositionToNextChunk (const FVector &Box) |
void | UpdateTransformPositionToNextSide (const FBox &Box) |
Private 属性 | |
FTransform | CurrentTransform = FTransform::Identity |
FBox | LastSelectedMeshBounds |
TArray< int > | SidesLength |
在文件 ProceduralBuilding.h 第 26 行定义.
AProceduralBuilding::AProceduralBuilding | ( | ) |
在文件 ProceduralBuilding.cpp 第 8 行定义.
引用了 CornerVisibility, RootSMComp, SideVisibility , 以及 UseWallMesh.
|
private |
在文件 ProceduralBuilding.cpp 第 506 行定义.
引用了 AddMeshToBuilding(), ChildActorComps, CurrentTransform, GetMeshSize() , 以及 UpdateTransformPositionToNextChunk().
被这些函数引用 CreateRoof() , 以及 CreateSide().
|
private |
在文件 ProceduralBuilding.cpp 第 584 行定义.
引用了 CurrentTransform , 以及 GetHISMComp().
被这些函数引用 AddChunck().
|
private |
|
private |
在文件 ProceduralBuilding.cpp 第 432 行定义.
引用了 LengthX, LengthY, SidesLength , 以及 UseFullBlocks.
被这些函数引用 Init().
|
private |
在文件 ProceduralBuilding.cpp 第 478 行定义.
引用了 CornerVisibility, SideVisibility , 以及 UseFullBlocks.
被这些函数引用 CreateFloor().
void AProceduralBuilding::ConvertOldBP_ToNativeCodeObject | ( | AActor * | BP_Building | ) |
|
protected |
在文件 ProceduralBuilding.cpp 第 212 行定义.
引用了 BaseBPs, BaseMeshes, BodyBPs, BodyMeshes, CornerBaseBPs, CornerBaseMeshes, CornerBodyBPs, CornerBodyMeshes, CornerTopBPs, CornerTopMeshes, CreateFloor(), CreateRoof(), DoorBPs, DoorMeshes, Init(), NumFloors, TopBPs, TopMeshes, WallBPs , 以及 WallMeshes.
|
private |
在文件 ProceduralBuilding.cpp 第 280 行定义.
引用了 CalculateDoorsIndexInSide(), CalculateSideVisibilities(), CreateSide(), CurrentTransform, GenerateWallsIndexPositions(), SidesLength, UseFullBlocks , 以及 UseWallMesh.
被这些函数引用 CreateBuilding().
|
private |
在文件 ProceduralBuilding.cpp 第 329 行定义.
引用了 AddChunck(), ChooseGeometryToSpawn(), CurrentTransform, LastSelectedMeshBounds, LengthX, LengthY, RoofBPs, RoofMeshes, RoofVisibility , 以及 UpdateTransformPositionToNextSide().
被这些函数引用 CreateBuilding().
|
private |
Main part
Corner part
在文件 ProceduralBuilding.cpp 第 366 行定义.
引用了 AddChunck(), FloorMeshCollection::AuxiliarBPs, FloorMeshCollection::AuxiliarMeshes, ChooseGeometryToSpawn(), FloorMeshCollection::CornerBPs, FloorMeshCollection::CornerMeshes, Corners, LastSelectedMeshBounds, FloorMeshCollection::MainBPs, FloorMeshCollection::MainMeshes , 以及 UpdateTransformPositionToNextSide().
被这些函数引用 CreateFloor().
|
protected |
在文件 ProceduralBuilding.cpp 第 49 行定义.
引用了 ChildActorComps.
|
private |
UHierarchicalInstancedStaticMeshComponent * AProceduralBuilding::GetHISMComp | ( | const UStaticMesh * | SM | ) |
在文件 ProceduralBuilding.cpp 第 22 行定义.
引用了 HISMComps.
被这些函数引用 AddMeshToBuilding() , 以及 ConvertOldBP_ToNativeCodeObject().
|
private |
void AProceduralBuilding::HideAllChildren | ( | ) |
在文件 ProceduralBuilding.cpp 第 122 行定义.
引用了 ChildActorComps.
|
private |
在文件 ProceduralBuilding.cpp 第 273 行定义.
引用了 CalculateSidesLength() , 以及 Reset().
被这些函数引用 CreateBuilding().
|
protected |
在文件 ProceduralBuilding.cpp 第 241 行定义.
引用了 ChildActorComps, CurrentTransform, HISMComps , 以及 SidesLength.
被这些函数引用 Init().
void AProceduralBuilding::SetBaseMeshes | ( | const TArray< UStaticMesh * > & | InBaseMeshes, |
const TArray< TSubclassOf< AActor > > & | InBaseBPs, | ||
const TArray< UStaticMesh * > & | InCornerBaseMeshes, | ||
const TArray< TSubclassOf< AActor > > & | InCornerBaseBPs, | ||
const TArray< UStaticMesh * > & | InDoorMeshes, | ||
const TArray< TSubclassOf< AActor > > & | InDoorBPs ) |
在文件 ProceduralBuilding.cpp 第 164 行定义.
引用了 BaseBPs, BaseMeshes, CornerBaseBPs, CornerBaseMeshes, DoorBPs , 以及 DoorMeshes.
void AProceduralBuilding::SetBaseParameters | ( | const TSet< int > & | InDoorsIndexPosition, |
const TArray< bool > & | InUseWallMesh, | ||
int | InNumFloors, | ||
int | InLengthX, | ||
int | InLengthY, | ||
bool | InCorners, | ||
bool | InUseFullBlocks ) |
在文件 ProceduralBuilding.cpp 第 136 行定义.
引用了 Corners, DoorsIndexPosition, LengthX, LengthY, NumFloors, UseFullBlocks , 以及 UseWallMesh.
void AProceduralBuilding::SetBodyMeshes | ( | const TArray< UStaticMesh * > & | InBodyMeshes, |
const TArray< TSubclassOf< AActor > > & | InBodyBPs, | ||
const TArray< UStaticMesh * > & | InCornerBodyMeshes, | ||
const TArray< TSubclassOf< AActor > > & | InCornerBodyBPs, | ||
const TArray< UStaticMesh * > & | InWallMeshes, | ||
const TArray< TSubclassOf< AActor > > & | InWallBPs ) |
在文件 ProceduralBuilding.cpp 第 180 行定义.
引用了 BodyBPs, BodyMeshes, CornerBodyBPs, CornerBodyMeshes, WallBPs , 以及 WallMeshes.
void AProceduralBuilding::SetTopMeshes | ( | const TArray< UStaticMesh * > & | InTopMeshes, |
const TArray< TSubclassOf< AActor > > & | InTopBPs, | ||
const TArray< UStaticMesh * > & | InCornerTopMeshes, | ||
const TArray< TSubclassOf< AActor > > & | InCornerTopBPs, | ||
const TArray< UStaticMesh * > & | InRoofMeshes, | ||
const TArray< TSubclassOf< AActor > > & | InRoofBPs ) |
在文件 ProceduralBuilding.cpp 第 196 行定义.
引用了 CornerTopBPs, CornerTopMeshes, RoofBPs, RoofMeshes, TopBPs , 以及 TopMeshes.
void AProceduralBuilding::SetVisibilityParameters | ( | const TArray< bool > & | InSideVisibility, |
const TArray< bool > & | InCornerVisibility, | ||
bool | InRoofVisibility ) |
在文件 ProceduralBuilding.cpp 第 154 行定义.
引用了 CornerVisibility, RoofVisibility , 以及 SideVisibility.
|
private |
在文件 ProceduralBuilding.cpp 第 597 行定义.
引用了 CurrentTransform, carla::geom::Rotation::GetForwardVector() , 以及 UseFullBlocks.
被这些函数引用 AddChunck().
|
private |
在文件 ProceduralBuilding.cpp 第 611 行定义.
引用了 CurrentTransform, carla::geom::Rotation::GetRightVector() , 以及 UseFullBlocks.
被这些函数引用 CreateRoof() , 以及 CreateSide().
|
protected |
在文件 ProceduralBuilding.h 第 175 行定义.
被这些函数引用 CreateBuilding() , 以及 SetBaseMeshes().
|
protected |
Meshes
Meshes | Base
在文件 ProceduralBuilding.h 第 171 行定义.
被这些函数引用 CreateBuilding() , 以及 SetBaseMeshes().
|
protected |
在文件 ProceduralBuilding.h 第 203 行定义.
被这些函数引用 CreateBuilding() , 以及 SetBodyMeshes().
|
protected |
|
protected |
在文件 ProceduralBuilding.h 第 107 行定义.
被这些函数引用 AddChunck(), ConvertOldBP_ToNativeCodeObject(), FixMobility(), HideAllChildren() , 以及 Reset().
|
protected |
在文件 ProceduralBuilding.h 第 191 行定义.
被这些函数引用 CreateBuilding() , 以及 SetBaseMeshes().
|
protected |
在文件 ProceduralBuilding.h 第 187 行定义.
被这些函数引用 CreateBuilding() , 以及 SetBaseMeshes().
|
protected |
在文件 ProceduralBuilding.h 第 219 行定义.
被这些函数引用 CreateBuilding() , 以及 SetBodyMeshes().
|
protected |
在文件 ProceduralBuilding.h 第 215 行定义.
被这些函数引用 CreateBuilding() , 以及 SetBodyMeshes().
|
protected |
在文件 ProceduralBuilding.h 第 138 行定义.
被这些函数引用 CreateSide() , 以及 SetBaseParameters().
|
protected |
在文件 ProceduralBuilding.h 第 239 行定义.
被这些函数引用 CreateBuilding() , 以及 SetTopMeshes().
|
protected |
在文件 ProceduralBuilding.h 第 235 行定义.
被这些函数引用 CreateBuilding() , 以及 SetTopMeshes().
|
protected |
在文件 ProceduralBuilding.h 第 154 行定义.
被这些函数引用 AProceduralBuilding(), CalculateSideVisibilities() , 以及 SetVisibilityParameters().
|
private |
|
protected |
在文件 ProceduralBuilding.h 第 183 行定义.
被这些函数引用 CreateBuilding() , 以及 SetBaseMeshes().
|
protected |
在文件 ProceduralBuilding.h 第 179 行定义.
被这些函数引用 CreateBuilding() , 以及 SetBaseMeshes().
|
protected |
Base Parameters
在文件 ProceduralBuilding.h 第 118 行定义.
被这些函数引用 CalculateDoorsIndexInSide() , 以及 SetBaseParameters().
|
protected |
在文件 ProceduralBuilding.h 第 103 行定义.
被这些函数引用 GetHISMComp() , 以及 Reset().
|
private |
在文件 ProceduralBuilding.h 第 308 行定义.
被这些函数引用 CreateRoof() , 以及 CreateSide().
|
protected |
在文件 ProceduralBuilding.h 第 130 行定义.
被这些函数引用 CalculateSidesLength(), CreateRoof() , 以及 SetBaseParameters().
|
protected |
在文件 ProceduralBuilding.h 第 134 行定义.
被这些函数引用 CalculateSidesLength(), CreateRoof() , 以及 SetBaseParameters().
|
protected |
在文件 ProceduralBuilding.h 第 126 行定义.
被这些函数引用 CreateBuilding() , 以及 SetBaseParameters().
|
protected |
在文件 ProceduralBuilding.h 第 247 行定义.
被这些函数引用 CreateRoof() , 以及 SetTopMeshes().
|
protected |
在文件 ProceduralBuilding.h 第 243 行定义.
被这些函数引用 CreateRoof() , 以及 SetTopMeshes().
|
protected |
在文件 ProceduralBuilding.h 第 158 行定义.
被这些函数引用 CreateRoof() , 以及 SetVisibilityParameters().
|
protected |
在文件 ProceduralBuilding.h 第 110 行定义.
被这些函数引用 AProceduralBuilding().
|
private |
在文件 ProceduralBuilding.h 第 303 行定义.
被这些函数引用 CalculateSidesLength(), CreateFloor() , 以及 Reset().
|
protected |
Base Parameters | Visibility
在文件 ProceduralBuilding.h 第 150 行定义.
被这些函数引用 AProceduralBuilding(), CalculateSideVisibilities() , 以及 SetVisibilityParameters().
|
protected |
在文件 ProceduralBuilding.h 第 231 行定义.
被这些函数引用 CreateBuilding() , 以及 SetTopMeshes().
|
protected |
|
protected |
|
protected |
在文件 ProceduralBuilding.h 第 122 行定义.
被这些函数引用 AProceduralBuilding(), CreateFloor() , 以及 SetBaseParameters().
|
protected |
在文件 ProceduralBuilding.h 第 211 行定义.
被这些函数引用 CreateBuilding() , 以及 SetBodyMeshes().
|
protected |
在文件 ProceduralBuilding.h 第 207 行定义.
被这些函数引用 CreateBuilding() , 以及 SetBodyMeshes().