FOnInteriorSpawned | OnActorsSpawned[Get] |
int | |
SpawnMode[Get] | |
UMaterialInterface * | ProceduralMaterial[Get] |
bool | |
TArray< FString > | CutHoleLabels[Get] |
TMap< FString, FMRUKSpawnGroup > | SpawnGroups[Get] |
void | SpawnActors ( AMRUKRoom * Room ) |
void | |
void | GetSpawnedActors ( TArray< AActor * > & Actors ) |
TArray< AActor * > | |
TArray< AActor * > | |
AActor * | SpawnAnchorActorForLabel ( AMRUKAnchor * Anchor, const FString & Label, const FMRUKSpawnGroup & SpawnGroup, const FRandomStream & RandomStream ) |
AActor * | SpawnAnchorActorForLabel_Implementation ( AMRUKAnchor * Anchor, const FString & Label, const FMRUKSpawnGroup & SpawnGroup, const FRandomStream & RandomStream ) |
AActor * | |
AActor * | |
FVector | ComputeCustomScaling ( AMRUKAnchor * Anchor, AActor * SpawnedActor, const FVector & StretchedScale ) |
FVector | ComputeCustomScaling_Implementation ( AMRUKAnchor * Anchor, AActor * SpawnedActor, const FVector & StretchedScale ) |
bool | SelectSpawnActorCustom ( AMRUKAnchor * Anchor, const FMRUKSpawnGroup & SpawnGroup, const FRandomStream & RandomStream, FMRUKSpawnActor & OutSpawnActor ) |
bool | SelectSpawnActorCustom_Implementation ( AMRUKAnchor * Anchor, const FMRUKSpawnGroup & SpawnGroup, const FRandomStream & RandomStream, FMRUKSpawnActor & OutSpawnActor ) |
FVector | ComputeCustomAlign ( AMRUKAnchor * Anchor, AActor * Actor, const FBox & ChildBounds, const FVector & Scale ) |
FVector | ComputeCustomAlign_Implementation ( AMRUKAnchor * Anchor, AActor * Actor, const FBox & ChildBounds, const FVector & Scale ) |
bool | ShouldAnchorFallbackToProceduralMesh ( const FMRUKSpawnGroup & SpawnGroup ) |
bool | ShouldSpawnActorForAnchor ( AMRUKAnchor * Anchor, const FString & Label, FMRUKSpawnGroup & OutSpawnGroup ) |
TArray< AActor * > | |
AActor * | |
AActor * | |
AActor * | SpawnProceduralMeshForAnchorIfNeeded ( AMRUKAnchor * Anchor ) |
TArray< AActor * > | SpawnProceduralMeshesInRoom ( AMRUKRoom * Room ) |
bool | SelectSpawnActorClosestSize ( AMRUKAnchor * Anchor, const FMRUKSpawnGroup & SpawnGroup, FMRUKSpawnActor & OutSpawnActor ) |
bool | SelectSpawnActorRandom ( const FMRUKSpawnGroup & SpawnGroup, const FRandomStream & RandomStream, FMRUKSpawnActor & OutSpawnActor ) |
bool | SelectSpawnActorFromSpawnGroup ( AMRUKAnchor * Anchor, const FMRUKSpawnGroup & SpawnGroup, const FRandomStream & RandomStream, FMRUKSpawnActor & OutSpawnActor ) |
void | AttachAndFitActorToAnchor ( AMRUKAnchor * Anchor, AActor * Actor, EMRUKSpawnerScalingMode ScalingMode, EMRUKAlignMode AlignMode, bool bCalculateFacingDirection, bool bMatchAspectRatio ) |
void | BeginPlay ( ) |
void | OnRoomCreated ( AMRUKRoom * Room ) |
void | OnRoomUpdated ( AMRUKRoom * Room ) |
void | OnRoomRemoved ( AMRUKRoom * Room ) |
void | RemoveActors ( AMRUKRoom * Room ) |
FOnInteriorSpawned AMRUKAnchorActorSpawner::OnActorsSpawned |
---|
Event that gets fired when the interior spawner finished spawning actors. |
int AMRUKAnchorActorSpawner::AnchorRandomSpawnSeed |
---|
Seed to use for the random generator that decideds wich actor class to spawn if there a given multiple for a label. negative values will have the effect to initialize the random generator to a random seed. |
EMRUKSpawnMode AMRUKAnchorActorSpawner::SpawnMode |
---|
Whether actors should be spawned automatically after the mixed reality utility kit has been initialized. This should not be changed after the scene has been loaded. |
UMaterialInterface* AMRUKAnchorActorSpawner::ProceduralMaterial |
---|
Material to use when falling back to procedural material. |
bool AMRUKAnchorActorSpawner::ShouldFallbackToProcedural |
---|
Whether or not the spawner should fallback to procedural meshes in case no actor class has been defined for a label. This behaviour can be overwritten on the label basis in SpawnGroups. |
TArray<FString> AMRUKAnchorActorSpawner::CutHoleLabels |
---|
Labels for which holes should be created in the parents plane mesh. E.g. if holes are needed in the walls where the windows and doors are, specify DOOR_FRAME and WINDOW_FRAME. |
TMap<FString, FMRUKSpawnGroup> AMRUKAnchorActorSpawner::SpawnGroups |
---|
A map of Actor classes to spawn for the given label. |
AMRUKAnchorActorSpawner::DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam ( FOnInteriorSpawned , AMRUKRoom * , Room ) |
---|
No description available.
|
void AMRUKAnchorActorSpawner::SpawnActors ( AMRUKRoom * Room ) |
---|
Spawns the meshes for the given labels above on the anchor positions in each room. There might be multiple actor classes for a give label. If thats the case a actor class will be chosen radomly. The seed for this random generator can be set by AnchorRandomSpawnSeed. This function will be called automatically after the mixed reality utility kit initialized unless the option SpawnOnStart is set to false. If there is no actor class specified for a label then a procedural mesh matching the anchors volume and plane will be generated. |
void AMRUKAnchorActorSpawner::GetSpawnedActorsByRoom ( AMRUKRoom * Room, TArray< AActor * > & Actors ) |
---|
Return all spawned actors from the give room. Parameters Room The room from which the actors should be returned ActorsThe spawned actors. |
void AMRUKAnchorActorSpawner::GetSpawnedActors ( TArray< AActor * > & Actors ) |
---|
Return all spawned actors from all rooms. Parameters Actors The spawned actors. |
TArray< AActor * > AMRUKAnchorActorSpawner::SpawnAnchorActorsInRoom ( AMRUKRoom * Room, const FRandomStream & RandomStream ) |
---|
This method gets called by the AnchorActorSpawner when it wants to spawn actors and procedural meshes in the room. It's possible to overwrite this function in Blueprint or C++ to implement custom spawning logic. The protected methods in the AnchorActorSpawner contain helper functions which can be useful when implementing a custom spawning logic. When implementing a custom spawning logic you may want to use SpawnAnchorActor() to spawn the actual actor and take care of it's orientation and scaling to match the anchors bounds. Parameters Room The room to spawn actors for. RandomStreamA random stream to be used with the random selection mode. Returns A list of all spawned actors. |
virtual TArray< AActor * > AMRUKAnchorActorSpawner::SpawnAnchorActorsInRoom_Implementation ( AMRUKRoom * Room, const FRandomStream & RandomStream ) |
---|
No description available.
|
AActor * AMRUKAnchorActorSpawner::SpawnAnchorActorForLabel ( AMRUKAnchor * Anchor, const FString & Label, const FMRUKSpawnGroup & SpawnGroup, const FRandomStream & RandomStream ) |
---|
This method gets called by the default implementation of the SpawnAnchorActorsInRoom() for every label that should spawn a actor. By overwriting this function it is possible to inject custom spawning logic for actors on a per label basis. When implementing a custom spawning logic you may want to use SpawnAnchorActor() to spawn the actual actor and take care of it's orientation and scaling to match the anchors bounds. Parameters Anchor The anchor to spawn a actor for. LabelThe label to spawn a actor for. SpawnGroupInformation on which actor should be spawned. RandomStreamA random stream for implementing the random selection logic. Returns The spawned actor. |
virtual AActor * AMRUKAnchorActorSpawner::SpawnAnchorActorForLabel_Implementation ( AMRUKAnchor * Anchor, const FString & Label, const FMRUKSpawnGroup & SpawnGroup, const FRandomStream & RandomStream ) |
---|
No description available.
|
AActor * AMRUKAnchorActorSpawner::SpawnAnchorActor ( AMRUKAnchor * Anchor, const FMRUKSpawnActor & SpawnActor ) |
---|
This method gets called by the default implementation of SpawnAnchorActorForLabel() to spawn the anchor and orient and scale it correct to the given anchor. If you are planning to implement a custom spawning logic you likely want to use this function in the end to actually spawn the actor as it takes care of orientation and scaling of the actor with regards to the anchor bounds. Parameters Anchor The anchor to spawn the actor for. SpawnActorInformation on which actor should be spawned. Returns The spawned actor. |
virtual AActor * AMRUKAnchorActorSpawner::SpawnAnchorActor_Implementation ( AMRUKAnchor * Anchor, const FMRUKSpawnActor & SpawnActor ) |
---|
No description available.
|
FVector AMRUKAnchorActorSpawner::ComputeCustomScaling ( AMRUKAnchor * Anchor, AActor * SpawnedActor, const FVector & StretchedScale ) |
---|
Override this method to inject custom scaling logic into the orientation process of an actor. The scale that this method returns gets used to scale the actor that will be spawned. Parameters Anchor The anchor for which the actor gets spawned. SpawnedActorThe actor that gets spawned. StretchedScaleThe scale that would need to be applied to the actor to make it match with the bounding box of the anchor. In case it's a plane anchor only the X and Y component of the scale are relevant. Returns The scale that should be applied to the actor. In case it's a plane anchor only the X and Y component are relevant. |
virtual FVector AMRUKAnchorActorSpawner::ComputeCustomScaling_Implementation ( AMRUKAnchor * Anchor, AActor * SpawnedActor, const FVector & StretchedScale ) |
---|
No description available.
|
bool AMRUKAnchorActorSpawner::SelectSpawnActorCustom ( AMRUKAnchor * Anchor, const FMRUKSpawnGroup & SpawnGroup, const FRandomStream & RandomStream, FMRUKSpawnActor & OutSpawnActor ) |
---|
Override this method to inject custom actor selection logic. This will be called for every actor that gets spawned by the AMRUKAnchorActorSpawner. Parameters Anchor The anchor for which a actor should be spawned SpawnGroupThe group of actors that can be used for decision making. RandomStreamA random stream to randomize outputs if necessary. OutSpawnActorThe actor which should be spawned. Returns Whether the selection process was successful or not. |
virtual bool AMRUKAnchorActorSpawner::SelectSpawnActorCustom_Implementation ( AMRUKAnchor * Anchor, const FMRUKSpawnGroup & SpawnGroup, const FRandomStream & RandomStream, FMRUKSpawnActor & OutSpawnActor ) |
---|
No description available.
|
FVector AMRUKAnchorActorSpawner::ComputeCustomAlign ( AMRUKAnchor * Anchor, AActor * Actor, const FBox & ChildBounds, const FVector & Scale ) |
---|
Override this method to inject custom scaling logic into the orientation process of an actor. The scale that this method returns gets used to scale the actor that will be spawned. Parameters Anchor The anchor for which the actor gets spawned. ActorThe actor that gets spawned. ChildBoundsthe rotated bounding box of the actor that should be spawned. For planes only X and Y components are relevant. ScaleThe scale that will be applied to the actor that will be spawned in place of the anchor. For planes only X and Y components are relevant. Returns The offset that should be applied to the actor. In case it's a plane anchor only the X and Y component are relevant. |
virtual FVector AMRUKAnchorActorSpawner::ComputeCustomAlign_Implementation ( AMRUKAnchor * Anchor, AActor * Actor, const FBox & ChildBounds, const FVector & Scale ) |
---|
No description available.
|
bool AMRUKAnchorActorSpawner::ShouldAnchorFallbackToProceduralMesh ( const FMRUKSpawnGroup & SpawnGroup ) |
---|
Check if for the given SpawnGroup a procedural mesh should be spawned. Parameters SpawnGroup The spawn group to check Returns Whether a procedural mesh should be spawned or not |
bool AMRUKAnchorActorSpawner::ShouldSpawnActorForAnchor ( AMRUKAnchor * Anchor, const FString & Label, FMRUKSpawnGroup & OutSpawnGroup ) |
---|
Check if there should be spawned a actor for the given label. This function may return false in case the spawner should fallback to a procedural mesh. Parameters Anchor The anchor where the actor should be spawned LabelThe label of the anchor OutSpawnGroupWill be set in case a actor should be spawned Returns Whether or not a actor should be spawned for the anchor |
TArray< AActor * > AMRUKAnchorActorSpawner::SpawnProceduralMeshesOnWallsIfNoWallActorGiven ( AMRUKRoom * Room ) |
---|
Spawn a procedural mesh for all walls if no wall actor is given to the spawner. This will take care of generating seamless UVs for the walls. Parameters Room The room to spawn in. |
AActor * AMRUKAnchorActorSpawner::SpawnProceduralMeshOnFloorIfNoFloorActorGiven ( AMRUKRoom * Room ) |
---|
Spawn a procedural mesh for the floor if no floor actor is given to the spawner. Parameters Room The room to spawn in. |
AActor * AMRUKAnchorActorSpawner::SpawnProceduralMeshOnCeilingIfNoCeilingActorGiven ( AMRUKRoom * Room ) |
---|
Spawn a procedural mesh for the ceiling if no ceiling actor is given to the spawner. Parameters Room The room to spawn in. |
AActor * AMRUKAnchorActorSpawner::SpawnProceduralMeshForAnchorIfNeeded ( AMRUKAnchor * Anchor ) |
---|
Spawn a procedural mesh for the given anchor if the settings on the AnchorActorSpawner say so. Parameters Anchor The anchor for which the procedural mesh should be spawned |
TArray< AActor * > AMRUKAnchorActorSpawner::SpawnProceduralMeshesInRoom ( AMRUKRoom * Room ) |
---|
Spawn procedural meshes for every anchor that needs them. Including walls, ceiling and floor. The method determines if procedural mesh should be spawned or not based on the settings of the AnchorActorSpawner. Parameters Room The room to spawn in. |
bool AMRUKAnchorActorSpawner::SelectSpawnActorClosestSize ( AMRUKAnchor * Anchor, const FMRUKSpawnGroup & SpawnGroup, FMRUKSpawnActor & OutSpawnActor ) |
---|
Select the SpawnActor based on the size that matches best the anchor bounds. Parameters Anchor The anchor for which a actor should be spawned. SpawnGroupThe spawn group. OutSpawnActorThe found spawn actor. Returns True if a SpawnActor could be found. Otherwise, false. |
bool AMRUKAnchorActorSpawner::SelectSpawnActorRandom ( const FMRUKSpawnGroup & SpawnGroup, const FRandomStream & RandomStream, FMRUKSpawnActor & OutSpawnActor ) |
---|
Select the SpawnActor randomly Parameters SpawnGroup The spawn group. RandomStreamThe random stream to use for the random selection. OutSpawnActorThe found spawn actor. Returns True if a SpawnActor could be found. Otherwise, false. |
bool AMRUKAnchorActorSpawner::SelectSpawnActorFromSpawnGroup ( AMRUKAnchor * Anchor, const FMRUKSpawnGroup & SpawnGroup, const FRandomStream & RandomStream, FMRUKSpawnActor & OutSpawnActor ) |
---|
Select a SpawnActor from the SpawnGroup with respect to the given selection mode in SpawnGroup. Parameters Anchor The anchor for which the actor should be spawned. SpawnGroupThe spawn group. RandomStreamThe random stream OutSpawnActorThe found spawn actor Returns True if a spawn actor has been found. Otherwise, false. |
void AMRUKAnchorActorSpawner::AttachAndFitActorToAnchor ( AMRUKAnchor * Anchor, AActor * Actor, EMRUKSpawnerScalingMode ScalingMode, EMRUKAlignMode AlignMode, bool bCalculateFacingDirection, bool bMatchAspectRatio ) |
---|
Orient and scale the given actor to the anchors plane or volume bounds. Parameters Anchor The anchor ActorThe actor which should be oriented and scaled to the given anchor. ScalingModeThe scaling mode that should be used when doing the matching. bCalculateFacingDirectionWhether or not the facing direction of the anchor should be calculated and used for the orientation process. bMatchAspectRatioWhether or not the aspect ratio of the anchor should be matched. |
void AMRUKAnchorActorSpawner::BeginPlay ( ) |
---|
No description available.
|
void AMRUKAnchorActorSpawner::OnRoomCreated ( AMRUKRoom * Room ) |
---|
No description available.
|
void AMRUKAnchorActorSpawner::OnRoomUpdated ( AMRUKRoom * Room ) |
---|
No description available.
|
void AMRUKAnchorActorSpawner::OnRoomRemoved ( AMRUKRoom * Room ) |
---|
No description available.
|
void AMRUKAnchorActorSpawner::RemoveActors ( AMRUKRoom * Room ) |
---|
No description available.
|