#include <DungeonInteriorDecorator.h>
|
| | FDungeonInteriorDecorator ()=default |
| |
| | FDungeonInteriorDecorator (UDungeonInteriorDatabase *asset, const std::shared_ptr< CDungeonInteriorGenerationExclusionVolume > &unplaceableBounds, const std::shared_ptr< dungeon::Random > &synchronizedRandom, const FVector2D &gridSize) |
| |
| virtual | ~FDungeonInteriorDecorator () |
| |
| bool | IsValid () const noexcept |
| |
| UDungeonInteriorDatabase * | GetAsset () |
| |
|
const UDungeonInteriorDatabase * | GetAsset () const |
| |
| void | ResetExclusionBounds (const std::shared_ptr< CDungeonInteriorGenerationExclusionVolume > &interiorExclusionBounds) |
| |
| std::shared_ptr< CDungeonInteriorGenerationExclusionVolume > | GetExclusionBounds () const noexcept |
| |
| bool | IntersectExclusionBounds (const FBox &bounds) const |
| |
| bool | IsInsideOrOnExclusionBounds (const FVector &location) const |
| |
| void | ClearDecorationLocation (const std::shared_ptr< CDungeonInteriorGenerationExclusionVolume > &interiorExclusionBounds=nullptr) |
| |
| void | AddDecorationLocation (const FVector &location, const double yaw) |
| |
| size_t | GetDecorationLocationSize () const noexcept |
| |
| void | ShuffleDecorationLocation () |
| |
| void | TrySpawnActors (UWorld *world, const FString &folderPath, const TArray< FString > &tags, const bool hasAuthority) |
| |
| void | TrySpawnActor (const AActor *baseActor, const FString &folderPath) |
| |
| TArray< FDungeonInteriorParts > | Select (const TArray< FString > &interiorTags) const |
| |
| std::shared_ptr< FDungeonInteriorDecorator > | CreateInteriorDecorator (const FBox &placeableBounds) const |
| |
| void | ReserveVegetationGenerationRoomBounds (const FBox &decorationBounds) |
| |
| void | ReserveVegetationGenerationAisleGrid (const FVector ¢erPosition, const dungeon::Grid &grid) |
| |
| void | TrySpawnVegetation (ADungeonGenerateBase *ownerActor, const TArray< FString > &tags, const bool isSlopeGrid) const |
| |
Interior decorator class ダンジョン内装装飾
http://www.archmagerises.com/news/2021/6/12/how-to-procedurally-generate-and-decorate-3d-dungeon-rooms-in-unity-c
interior filter tags room: aisle, slope, hall, hanare, start, goal location: center, wall, roof priority: major
◆ FDungeonInteriorDecorator() [1/2]
| FDungeonInteriorDecorator::FDungeonInteriorDecorator |
( |
| ) |
|
|
default |
◆ FDungeonInteriorDecorator() [2/2]
constructor
- Author
- Shun Moriya
- Copyright
- 2023- Shun Moriya All Rights Reserved.
◆ ~FDungeonInteriorDecorator()
| FDungeonInteriorDecorator::~FDungeonInteriorDecorator |
( |
| ) |
|
|
virtual |
◆ AddDecorationLocation()
| void FDungeonInteriorDecorator::AddDecorationLocation |
( |
const FVector & |
location, |
|
|
const double |
yaw |
|
) |
| |
◆ ClearDecorationLocation()
内装位置をクリアして新たな生成禁止範囲を設定します
◆ CreateInteriorDecorator()
| std::shared_ptr< FDungeonInteriorDecorator > FDungeonInteriorDecorator::CreateInteriorDecorator |
( |
const FBox & |
placeableBounds | ) |
const |
Extract DecorationLocation in bounds 装飾位置の抽出
◆ GetAsset()
◆ GetDecorationLocationSize()
| size_t FDungeonInteriorDecorator::GetDecorationLocationSize |
( |
| ) |
const |
|
noexcept |
◆ GetExclusionBounds()
◆ IntersectExclusionBounds()
| bool FDungeonInteriorDecorator::IntersectExclusionBounds |
( |
const FBox & |
bounds | ) |
const |
◆ IsInsideOrOnExclusionBounds()
| bool FDungeonInteriorDecorator::IsInsideOrOnExclusionBounds |
( |
const FVector & |
location | ) |
const |
◆ IsValid()
| bool FDungeonInteriorDecorator::IsValid |
( |
| ) |
const |
|
noexcept |
◆ ReserveVegetationGenerationAisleGrid()
| void FDungeonInteriorDecorator::ReserveVegetationGenerationAisleGrid |
( |
const FVector & |
centerPosition, |
|
|
const dungeon::Grid & |
grid |
|
) |
| |
植生メッシュを生成するグリッドを追加します この関数で追加された範囲はTrySpawnVegetationで植生メッシュが生成されます。
◆ ReserveVegetationGenerationRoomBounds()
| void FDungeonInteriorDecorator::ReserveVegetationGenerationRoomBounds |
( |
const FBox & |
decorationBounds | ) |
|
植生メッシュを生成する範囲を追加します この関数で追加された範囲はTrySpawnVegetationで植生メッシュが生成されます。
- Author
- Shun Moriya
- Copyright
- 2025- Shun Moriya All Rights Reserved.
◆ ResetExclusionBounds()
◆ Select()
| TArray< FDungeonInteriorParts > FDungeonInteriorDecorator::Select |
( |
const TArray< FString > & |
interiorTags | ) |
const |
◆ ShuffleDecorationLocation()
| void FDungeonInteriorDecorator::ShuffleDecorationLocation |
( |
| ) |
|
内装位置をシャッフルします サーバーとクライアントが同じ回数を呼ぶように注意して下さい
◆ TrySpawnActor()
| void FDungeonInteriorDecorator::TrySpawnActor |
( |
const AActor * |
baseActor, |
|
|
const FString & |
folderPath |
|
) |
| |
◆ TrySpawnActors()
| void FDungeonInteriorDecorator::TrySpawnActors |
( |
UWorld * |
world, |
|
|
const FString & |
folderPath, |
|
|
const TArray< FString > & |
tags, |
|
|
const bool |
hasAuthority |
|
) |
| |
Spawns an actor at the added decoration position. Decoration positions that have been successfully spawned are deleted.
追加された装飾位置にアクタをスポーンします。 スポーンに成功した装飾位置は削除されます。
◆ TrySpawnVegetation()
| void FDungeonInteriorDecorator::TrySpawnVegetation |
( |
ADungeonGenerateBase * |
ownerActor, |
|
|
const TArray< FString > & |
tags, |
|
|
const bool |
isSlopeGrid |
|
) |
| const |
Spawn vegetation mesh 植生メッシュをスポーンします
The documentation for this struct was generated from the following files:
- DungeonInteriorDecorator.h
- DungeonInteriorDecorator.cpp
- DungeonVegetationDecorator.cpp