Navigation
API > API/Plugins > API/Plugins/AvalancheMedia
This class defines the interface and base of a playable group.
A playable group is intended to group playables according to the underlying rendering implementation. In most cases, it corresponds to a game instance, either owned or not, local to the process or remote.
It tracks and manage the playables state, transitions and visibility constraints.
The design goal of this class is to allow hooking the playable framework to any game instance, including PIE so it can work with any work flow (editor, PIE, game, nDisplay, etc).
Ideally, the playable class itself should be "game instance" agnostic and do all it's bidding on it's container through this class.
| Name | UAvaPlayableGroup |
| Type | class |
| Header File | /Engine/Plugins/VirtualProduction/Avalanche/Source/AvalancheMedia/Public/Playable/AvaPlayableGroup.h |
| Include Path | #include "Playable/AvaPlayableGroup.h" |
Syntax
UCLASS ()
class UAvaPlayableGroup : public UObject
Inheritance Hierarchy
- UObjectBase → UObjectBaseUtility → UObject → UAvaPlayableGroup
Structs
| Name | Remarks |
|---|---|
| FPlayableGroupCreationInfo | PlayableGroup creation information contains the necessary information to create an instance of a playable group. |
| FVisibilityRequest |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual bool ConditionalBeginPlay
(
const FAvaInstancePlaySettings& InWorldPlaySettings |
Begin playing the game instance's world if it wasn't already. | Playable/AvaPlayableGroup.h | |
virtual bool ConditionalCreateWorld() |
Creates the game instance's world if it wasn't already. | Playable/AvaPlayableGroup.h | |
virtual bool ConditionalRequestUnloadWorld
(
bool bForceImmediate |
Unloads the game instance's world if no more playables are loaded. | Playable/AvaPlayableGroup.h | |
void FindPlayablesBySourceAssetPath
(
const FSoftObjectPath& InSourceAssetPath, |
Finds all the playables that are instances of the given source asset. | Playable/AvaPlayableGroup.h | |
void ForEachPlayable
(
TFunctionRef< bool(UAvaPlayable*)> InFunction |
Playable/AvaPlayableGroup.h | ||
void ForEachPlayableTransition
(
TFunctionRef< bool(UAvaPlayableTransition*)> InFunction |
Playable/AvaPlayableGroup.h | ||
FName GetChannelName() |
Returns the broadcast channel name this playable group is part of. | Playable/AvaPlayableGroup.h | |
UGameInstance * GetGameInstance() |
Returns this group's game instance, if it has one. | Playable/AvaPlayableGroup.h | |
virtual UTextureRenderTarget2D * GetManagedRenderTarget() |
Returns the currently managed render target. | Playable/AvaPlayableGroup.h | |
UAvaPlayableGroupManager * GetPlayableGroupManager() |
Playable/AvaPlayableGroup.h | ||
virtual UWorld * GetPlayWorld() |
Returns this group's play world, if it has one. | Playable/AvaPlayableGroup.h | |
virtual UTextureRenderTarget2D * GetRenderTarget() |
Current logic for the render target: use the game instance's if present, fallback to internal one if not. | Playable/AvaPlayableGroup.h | |
bool HasPlayables() |
Returns true if there are any valid registered playables. | Playable/AvaPlayableGroup.h | |
bool HasPlayingPlayables() |
Returns true if there are any valid registered playables that are currently playing. | Playable/AvaPlayableGroup.h | |
bool HasTransitions() |
Playable/AvaPlayableGroup.h | ||
virtual bool IsRenderTargetReady() |
Playable/AvaPlayableGroup.h | ||
bool IsSynchronizedEventPushed
(
const FString& InEventSignature |
Playable/AvaPlayableGroup.h | ||
virtual bool IsWorldPlaying() |
Playable/AvaPlayableGroup.h | ||
void NotifyLevelStreaming
(
UAvaPlayable* InPlayable |
Notify the playable group that a playable is loading an asset. | Playable/AvaPlayableGroup.h | |
void PushSynchronizedEvent
(
FString&& InEventSignature, |
Playable/AvaPlayableGroup.h | ||
void RegisterPlayable
(
UAvaPlayable* InPlayable |
Register a playable to this group when it is created. | Playable/AvaPlayableGroup.h | |
void RegisterPlayableTransition
(
UAvaPlayableTransition* InPlayableTransition |
Playable/AvaPlayableGroup.h | ||
void RegisterVisibilityConstraint
(
const TWeakInterfacePtr< IAvaPlayableVisibilityConstraint >& InVisibilityConstraint |
Playable/AvaPlayableGroup.h | ||
virtual void RequestEndPlayWorld
(
bool bInForceImmediate |
Playable/AvaPlayableGroup.h | ||
void RequestSetVisibility
(
UAvaPlayable* InPlayable, |
Playable/AvaPlayableGroup.h | ||
void SetLastAppliedCameraPlayable
(
UAvaPlayable* InPlayable |
Keep track of the last playable that applied it's camera in the viewport/controller. | Playable/AvaPlayableGroup.h | |
virtual void SetManagedRenderTarget
(
UTextureRenderTarget2D* InManageRenderTarget |
The playback graph determines if this playable group will render in a broadcast channel's render target or an offscreen one. | Playable/AvaPlayableGroup.h | |
virtual void SetupView
(
FSceneViewFamily& InViewFamily, |
Playable/AvaPlayableGroup.h | ||
void TickTransitions
(
double InDeltaSeconds |
Tick transitions that have been registered. Returns the number of transitions that where ticked. | Playable/AvaPlayableGroup.h | |
void UnregisterPlayable
(
UAvaPlayable* InPlayable |
Unregister a playable when it is about to be deleted. | Playable/AvaPlayableGroup.h | |
void UnregisterPlayableTransition
(
UAvaPlayableTransition* InPlayableTransition |
Playable/AvaPlayableGroup.h | ||
void UnregisterVisibilityConstraint
(
const IAvaPlayableVisibilityConstraint* InVisibilityConstraint |
Playable/AvaPlayableGroup.h |
Protected
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void ConditionalRegisterWorldDelegates
(
UWorld* InWorld |
Playable/AvaPlayableGroup.h | ||
bool DisplayLoadedAssets
(
FText& OutText, |
Playable/AvaPlayableGroup.h | ||
bool DisplayPlayingAssets
(
FText& OutText, |
Playable/AvaPlayableGroup.h | ||
bool DisplayTransitions
(
FText& OutText, |
Playable/AvaPlayableGroup.h | ||
void HidePawnsForView
(
const UWorld* InPlayWorld, |
Playable/AvaPlayableGroup.h | ||
bool IsVisibilityConstrained
(
const UAvaPlayable* InPlayable |
Playable/AvaPlayableGroup.h | ||
void OnPlayableStatusChanged
(
UAvaPlayable* InPlayable |
Playable/AvaPlayableGroup.h | ||
void UnregisterWorldDelegates
(
UWorld* InWorld |
Playable/AvaPlayableGroup.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static UAvaPlayableGroup * FindPlayableGroupForWorld
(
const UWorld* InWorld, |
Search for the first playable group associated to the given world. | Playable/AvaPlayableGroup.h | |
static UAvaPlayableGroup * MakePlayableGroup
(
UObject* InOuter, |
Playable/AvaPlayableGroup.h |