Dungeon Generator  1.6.6
Procedural 3D dungeon generator plugin for Unreal Engine 5. Easy generation of levels, mini-maps and missions.
ADungeonGenerateActor Class Reference

#include <DungeonGenerateActor.h>

Inheritance diagram for ADungeonGenerateActor:
ADungeonGenerateBase

Public Member Functions

 ADungeonGenerateActor (const FObjectInitializer &initializer)
 
virtual ~ADungeonGenerateActor () override=default
 
void GenerateDungeon ()
 
void GenerateDungeonWithParameter (UDungeonGenerateParameter *DungeonGenerateParameter)
 
void DestroyDungeon ()
 
int32 FindFloorHeight (const float z) const
 
int32 FindVoxelHeight (const float z) const
 
UDungeonMiniMapTextureLayerGenerateMiniMapTextureLayerWithSize (const int32 textureWidth=512, const bool createMaskTexture=false)
 
UDungeonMiniMapTextureLayerGenerateMiniMapTextureLayerWithScale (const int32 dotScale=1, const bool createMaskTexture=false)
 
UDungeonMiniMapTextureLayerGetGeneratedMiniMapTextureLayer () const
 
float GetGridSize () const
 
FVector GetRoomMaxSize () const
 
void SetInstancedMeshCullDistance (const FInt32Interval &cullDistance)
 
virtual void PreInitializeComponents () override
 
virtual void PostInitializeComponents () override
 
virtual void BeginPlay () override
 
virtual void Tick (float DeltaSeconds) override
 
- Public Member Functions inherited from ADungeonGenerateBase
 ADungeonGenerateBase (const FObjectInitializer &initializer)
 
virtual ~ADungeonGenerateBase () override=default
 
bool IsGenerated () const noexcept
 
FVector GetStartLocation () const
 
FBox GetStartBoundingBox () const
 
FVector GetGoalLocation () const
 
FBox CalculateBoundingBox () const
 
FVector2D GetLongestStraightPath () const noexcept
 
uint32_t CalculateTextureWidthHeight () const
 
UTexture2D * GenerateMiniMapTextureWithSize (uint32_t &worldToTextureScale, uint32_t textureWidthHeight, uint32_t currentLevel) const
 
UTexture2D * GenerateMiniMapTextureWithScale (uint32_t &worldToTextureScale, uint32_t &textureWidth, uint32_t dotScale, uint32_t currentLevel) const
 
void AddVegetationInstancedMesh (const FTransform &transform, UStaticMesh *staticMesh, const FInt32Interval &cullDistances)
 
void BeginVegetationTransaction ()
 
void EndVegetationTransaction ()
 
void VegetationDestroyAll ()
 
uint32_t CalculateCRC32 () const noexcept
 

Protected Member Functions

void MulticastOnGenerateDungeon ()
 
- Protected Member Functions inherited from ADungeonGenerateBase
bool BeginDungeonGeneration (const UDungeonGenerateParameter *parameter, const bool hasAuthority)
 
void EndDungeonGeneration ()
 
std::shared_ptr< const dungeon::Generator > GetGenerator () const
 
void BeginGeneration ()
 
bool OnQueryAisleGeneration (const FVector &center, const int32 identifier, const EDungeonDirection direction)
 
void EndGeneration (UDungeonRandom *synchronizedRandom, const UDungeonAisleGridMap *aisleGridMap)
 
void OnAddFloor (const AddStaticMeshEvent &function)
 
void OnAddSlope (const AddStaticMeshEvent &function)
 
void OnAddWall (const AddStaticMeshEvent &function)
 
void OnAddRoof (const AddStaticMeshEvent &function)
 
void OnAddPillar (const AddPillarStaticMeshEvent &function)
 
void OnAddCatwalk (const AddStaticMeshEvent &function)
 
void CollectPlayerStartExceptPlayerStartPIE (TArray< APlayerStart * > &startPoints)
 
void MovePlayerStart (const TArray< APlayerStart * > &startPoints)
 
void FlushLoadStreamLevels ()
 
void AsyncLoadStreamLevels (const bool bShouldBlockOnLoad)
 
void UnloadStreamLevels (const bool flushStreamLevels)
 
virtual void EndPlay (const EEndPlayReason::Type EndPlayReason) override
 

Protected Attributes

TObjectPtr< UDungeonGenerateParameterDungeonGenerateParameter
 
bool AutoGenerateAtStart = true
 
EDungeonMeshGenerationMethod DungeonMeshGenerationMethod = EDungeonMeshGenerationMethod::StaticMesh
 
EDungeonMeshGenerationMethod DungeonWallRoofPillarMeshGenerationMethod = EDungeonMeshGenerationMethod::HierarchicalInstancedStaticMesh
 
TObjectPtr< UDungeonMiniMapTextureLayerDungeonMiniMapTextureLayer
 
FString BuildJobTag
 
FString LicenseTag
 
FString LicenseId
 
FVector StartRoomLocation
 
FVector GoalRoomLocation
 
TMap< uint32, FDungeonInstancedMeshClustermInstancedMeshCluster
 
- Protected Attributes inherited from ADungeonGenerateBase
FDungeonGeneratorActorNotifyGenerationSuccessSignature OnGenerationSuccess
 
FDungeonGeneratorActorNotifyGenerationFailureSignature OnGenerationFailure
 
FDungeonGenerateBaseOnBeginGenerateSignature OnBeginGeneration
 
FDungeonGenerateBaseOnEndGenerateSignature OnEndGeneration
 
TMap< uint32, FDungeonVegetationClustermVegetationCluster
 
const UDungeonGenerateParametermParameter
 
UDungeonAisleGridMapmAisleGridMap
 

Additional Inherited Members

- Static Public Member Functions inherited from ADungeonGenerateBase
static const FName & GetDungeonGeneratorTag ()
 
static const FName & GetDungeonGeneratorTerrainTag ()
 
static AActor * SpawnActorImpl (UWorld *world, UClass *actorClass, const FString &folderPath, const FTransform &transform, const FActorSpawnParameters &actorSpawnParameters)
 
static UDungeonComponentActivatorComponentFindOrAddComponentActivatorComponent (AActor *actor)
 
static UTexture2D * CreateTexture (uint32_t textureWidthHeight, TConstArrayView64< uint8 > pixels=TConstArrayView64< uint8 >()) noexcept
 
static UTexture2D * DuplicateTexture (UPackage *package, const FName &name, const EObjectFlags flags, const UTexture2D *sourceTexture) noexcept
 
- Protected Types inherited from ADungeonGenerateBase
using AddStaticMeshEvent = std::function< void(UStaticMesh *, const FTransform &)>
 
using AddPillarStaticMeshEvent = std::function< void(UStaticMesh *, const FTransform &)>
 
- Static Protected Member Functions inherited from ADungeonGenerateBase
static void DestroySpawnedActors (UWorld *world)
 

Detailed Description

Dungeon generation actor ダンジョン生成アクター

Constructor & Destructor Documentation

◆ ADungeonGenerateActor()

ADungeonGenerateActor::ADungeonGenerateActor ( const FObjectInitializer &  initializer)
explicit

constructor コンストラクタ

◆ ~ADungeonGenerateActor()

virtual ADungeonGenerateActor::~ADungeonGenerateActor ( )
overridevirtualdefault

destructor デストラクタ

Member Function Documentation

◆ DestroyDungeon()

void ADungeonGenerateActor::DestroyDungeon ( )

Destroy dungeon ダンジョンを破棄します

◆ FindFloorHeight()

int32 ADungeonGenerateActor::FindFloorHeight ( const float  z) const

Finds the floor from the world Z coordinate 高さからダンジョンの階層を検索します

Parameters
[in]zZ coordinate of world
Returns
floor

◆ FindVoxelHeight()

int32 ADungeonGenerateActor::FindVoxelHeight ( const float  z) const

Finds the Z coordinate of the grid from the world Z coordinate ワールドのZ座標からボクセルのZ座標を検索します

Parameters
[in]zZ coordinate of world
Returns
Z coordinate of the grid

◆ GenerateDungeon()

void ADungeonGenerateActor::GenerateDungeon ( )

Generate new dungeon ダンジョンを生成します

◆ GenerateDungeonWithParameter()

void ADungeonGenerateActor::GenerateDungeonWithParameter ( UDungeonGenerateParameter DungeonGenerateParameter)

Generate new dungeon ダンジョンを生成します

◆ GenerateMiniMapTextureLayerWithScale()

UDungeonMiniMapTextureLayer * ADungeonGenerateActor::GenerateMiniMapTextureLayerWithScale ( const int32  dotScale = 1,
const bool  createMaskTexture = false 
)

Generates a texture layer for the minimap 1ドットあたりのスケール値を指定してミニマップのテクスチャを生成します

◆ GenerateMiniMapTextureLayerWithSize()

UDungeonMiniMapTextureLayer * ADungeonGenerateActor::GenerateMiniMapTextureLayerWithSize ( const int32  textureWidth = 512,
const bool  createMaskTexture = false 
)

Generates a texture layer for the minimap テクスチャサイズを指定してミニマップのテクスチャを生成します

◆ GetGeneratedMiniMapTextureLayer()

UDungeonMiniMapTextureLayer * ADungeonGenerateActor::GetGeneratedMiniMapTextureLayer ( ) const

Get a texture layer for a generated minimap ミニマップのテクスチャレイヤーを取得します

◆ GetGridSize()

float ADungeonGenerateActor::GetGridSize ( ) const

Gets the size of the grid グリッドのサイズを取得します

◆ GetRoomMaxSize()

FVector ADungeonGenerateActor::GetRoomMaxSize ( ) const

Get the largest room size 最も大きい部屋のサイズを取得します

◆ MulticastOnGenerateDungeon()

void ADungeonGenerateActor::MulticastOnGenerateDungeon ( )
protected

Multicast dungeon generation to all clients ダンジョン生成を全クライアントにマルチキャストします

◆ SetInstancedMeshCullDistance()

void ADungeonGenerateActor::SetInstancedMeshCullDistance ( const FInt32Interval &  cullDistance)

Sets the culling distance for InstancedMesh InstancedMeshのカリング距離を設定します

Member Data Documentation

◆ AutoGenerateAtStart

bool ADungeonGenerateActor::AutoGenerateAtStart = true
protected

Generates a dungeon at the start of the level レベル開始時にダンジョンを生成します

◆ BuildJobTag

FString ADungeonGenerateActor::BuildJobTag
protected

build job tag ビルドジョブのタグ

◆ DungeonGenerateParameter

TObjectPtr<UDungeonGenerateParameter> ADungeonGenerateActor::DungeonGenerateParameter
protected

Dungeon generation parameters ダンジョン生成パラメータ

◆ DungeonMeshGenerationMethod

EDungeonMeshGenerationMethod ADungeonGenerateActor::DungeonMeshGenerationMethod = EDungeonMeshGenerationMethod::StaticMesh
protected

Types of floors, ramps, and mezzanine meshes used for dungeon generation ダンジョン生成に使用する床、スロープ、中二階のメッシュの種類

◆ DungeonMiniMapTextureLayer

TObjectPtr<UDungeonMiniMapTextureLayer> ADungeonGenerateActor::DungeonMiniMapTextureLayer
protected

Cache of the UIDungeonMiniMapTextureLayer UIDungeonMiniMapTextureLayerのキャッシュ

◆ DungeonWallRoofPillarMeshGenerationMethod

EDungeonMeshGenerationMethod ADungeonGenerateActor::DungeonWallRoofPillarMeshGenerationMethod = EDungeonMeshGenerationMethod::HierarchicalInstancedStaticMesh
protected

Wall, ceiling, and pillar mesh types used for dungeon generation ダンジョン生成に使用する壁、天井、柱のメッシュの種類

◆ GoalRoomLocation

FVector ADungeonGenerateActor::GoalRoomLocation
protected

Location of the goal room in the dungeon ダンジョンのゴール部屋の位置

◆ LicenseId

FString ADungeonGenerateActor::LicenseId
protected

License ID ライセンスID

◆ LicenseTag

FString ADungeonGenerateActor::LicenseTag
protected

license tag ライセンスタグ

◆ mInstancedMeshCluster

TMap<uint32, FDungeonInstancedMeshCluster> ADungeonGenerateActor::mInstancedMeshCluster
protected

Manage clusters of UnstancedStaticMeshComponent or UHierarchicalInstancedStaticMeshComponent UInstancedStaticMeshComponentまたはUHierarchicalInstancedStaticMeshComponentのクラスターを管理します

◆ StartRoomLocation

FVector ADungeonGenerateActor::StartRoomLocation
protected

Location of the starting room of the dungeon PlayerStart location can be found in Get All Actors of Class

ダンジョンのスタート部屋の位置 PlayerStartの位置はGet All Actors of Classで検索して下さい


The documentation for this class was generated from the following files: