Introduction
The following document presents all the endpoints callable via Data Hub on a running Engine instance. All changes are applied immediately. However, changes to some properties of the World Settings in Live mode might result in a restart of Pixotope modules and a brief reduction in performance.
To learn about more advanced usage of these endpoints jump to: Advanced RPC Usage.
Object Setting
Calls allowing for scene manipulation.
SetProperty
SetProperty
Set a property value for a given actor. Apart from basic types, supports properties in structs, arrays and asset names.
Params
ObjectSearch | STRING ARRAY STRING | Unique name of the target Actor , or Actor.Component , or a special_tag , or an array of multiple object searches. Hover over the star left of your property in the Engine to learn the desired value. |
PropertyPath | STRING ARRAY STRING | Dot-separated path to the targeted property, or an array of such paths. Hover over the star left of your property in the Engine to learn the desired value. |
Value | STRING STRING ARRAY ANY | The value to be applied. Strings are parsed into proper formats, but raw numbers should be (for the most part) supported too. If provided with an array will try to match to the array of PropertyPaths. Supports struct imports in both a format of JSON or the Unreal's text import format. |
BroadcastUpdate | BOOL OPTIONAL | Should Engine send an Update message for changed values? Default: true |
ApplyClamp | BOOL OPTIONAL | Should we apply clamp values defined in property's metadata. Default: false |
PairObjectSearchesAndPropertyPaths | BOOL OPTIONAL | Default: false |
AvalancheWorld | STRING OPTIONAL OPTIONAL | Optionally target an avalanche world. |
Example 1 - Set intensity on a light component. Call (you send) Topic: { "Type": "Call", "Target": "TJCGWS040-Engine", "RespondTo": "TJCGWS040-TestClient", "Method": "SetProperty", "ID": "000" } Message: { "Params": { "ObjectSearch": "SpotLight_1.LightComponent0", "PropertyPath": "Intensity", "Value": 100 } } CallResult (you can receive, if subscribed) Topic: { "Type": "CallResult", "Target": "TJCGWS040-TestClient", "ExecutedOn": "TJCGWS040-Engine", "Method": "SetProperty", "ID": "000" } Message: {"Result":[{}]} Update (you can receive, if subscribed) Topic: { "Type": "Update", "Target": "BROADCAST", "Source": "TJCGWS040-Engine", "Name": "World.PropertyChanged" } Message: { "Value": { "Owner": "SpotLight_1.LightComponent0", "Name": "Intensity", "PrettyName": "Intensity", "Type": "float", "AdjustmentStatus": "MODIFIED", "Value": "100.000000" } } |
Example 2 - Set intensity and color of two light components at once. Don't broadcast updates. Call (you send) Topic: { "Type": "Call", "Target": "TJCGWS040-Engine", "RespondTo": "TJCGWS040-TestClient", "Method": "SetProperty", "ID": "000" } Message: { "Params": { "ObjectSearch": [ "SpotLight_1.LightComponent0", "SpotLight2.LightComponent0" ], "PropertyPath": [ "Intensity", "LightColor" ], "Value": [ 100, "(R=255,G=0,B=0)" ], "BroadcastUpdate": false } } CallResult (you can receive, if subscribed) Topic: { "Type": "CallResult", "Target": "TJCGWS040-TestClient", "ExecutedOn": "TJCGWS040-Engine", "Method": "SetProperty", "ID": "000" } Message: {"Result":[{}]} |
Example 3 - Apply blue color grading to the graphics. Call (you send) Topic: { "Type": "Call", "Target": "TJCGWS040-Engine", "RespondTo": "TJCGWS040-TestClient", "Method": "SetProperty", "ID": "000" } Message: { "Params": { "ObjectSearch": "post_process_handler", "PropertyPath": [ "Settings.bOverride_ColorGamma", "Settings.ColorGamma.X", "Settings.ColorGamma.Y", "Settings.ColorGamma.Z" ], "Value": [ true, 0.0, 0.0, 1.0 ] } } CallResult (you can receive, if subscribed) Topic: { "Type": "CallResult", "Target": "TJCGWS040-TestClient", "ExecutedOn": "TJCGWS040-Engine", "Method": "SetProperty", "ID": "000" } Message: {"Result":[{}]} Update (you can receive, if subscribed) Topic: { "Type": "Update", "Target": "BROADCAST", "Source": "TJCGWS040-Engine", "Name": "World.PropertyChanged" } Message: { "Value": { "Owner": "PostProcessHandler_0", "ObjectSearchTag": "post_process_handler", "Path": "Settings.", "Name": "bOverride_ColorGamma", "PrettyName": "Override Color Gamma", "Type": "bool", "AdjustmentStatus": "MODIFIED", "Value": "True" } } Update (you can receive, if subscribed) Topic: { "Type": "Update", "Target": "BROADCAST", "Source": "TJCGWS040-Engine", "Name": "World.PropertyChanged" } Message: { "Value": { "Owner": "PostProcessHandler_0", "ObjectSearchTag": "post_process_handler", "Path": "Settings.ColorGamma.", "Name": "X", "PrettyName": "X", "Type": "float", "AdjustmentStatus": "MODIFIED", "Value": "0.000000" } } Update (you can receive, if subscribed) Topic: { "Type": "Update", "Target": "BROADCAST", "Source": "TJCGWS040-Engine", "Name": "World.PropertyChanged" } Message: { "Value": { "Owner": "PostProcessHandler_0", "ObjectSearchTag": "post_process_handler", "Path": "Settings.ColorGamma.", "Name": "Y", "PrettyName": "Y", "Type": "float", "AdjustmentStatus": "MODIFIED", "Value": "0.000000" } } Update (you can receive, if subscribed) Topic: { "Type": "Update", "Target": "BROADCAST", "Source": "TJCGWS040-Engine", "Name": "World.PropertyChanged" } Message: { "Value": { "Owner": "PostProcessHandler_0", "ObjectSearchTag": "post_process_handler", "Path": "Settings.ColorGamma.", "Name": "Z", "PrettyName": "Z", "Type": "float", "AdjustmentStatus": "MODIFIED", "Value": "1.000000" } } |
ResetProperty
ResetProperty
Reset a property value for a given actor.
Params
ObjectSearch | STRING ARRAY STRING | Unique name of the target Actor , or Actor.Component , or a special_tag , or an array of multiple object searches. Hover over the star left of your property in the Engine to learn the desired value. |
PropertyPath | STRING ARRAY STRING | Dot-separated path to the targeted property, or an array of such paths. Hover over the star left of your property in the Engine to learn the desired value. |
BroadcastUpdate | BOOL OPTIONAL | Should Engine send an Update message for changed values? Default: true |
AvalancheWorld | STRING OPTIONAL OPTIONAL | Optionally target an avalanche world. |
Example - Reset the graphics color grading gamma. (Set in a SetProperty example.) Call (you send) Topic: { "Type": "Call", "Target": "TJCGWS040-Engine", "RespondTo": "TJCGWS040-TestClient", "Method": "ResetProperty", "ID": "000" } Message: { "Params": { "ObjectSearch": "post_process_handler", "PropertyPath": "Settings.ColorGamma" } } CallResult (you can receive, if subscribed) Topic: { "Type": "CallResult", "Target": "TJCGWS040-TestClient", "ExecutedOn": "TJCGWS040-Engine", "Method": "ResetProperty", "ID": "000" } Message: {"Result":[{}]} |
CallFunction
CallFunction
Call a method on a given object. This is the main and recommended way of handling live input and controls.
Params
ObjectSearch | STRING ARRAY STRING |
FunctionName | STRING |
FunctionArguments | STRING ARRAY OPTIONAL |
AvalancheWorld | STRING OPTIONAL OPTIONAL |
SetVisibility
SetVisibility
Set actor's / component's visibility.
Params
ObjectSearch | STRING ARRAY STRING |
BroadcastUpdate | BOOL OPTIONAL |
Visibility | BOOL |
AvalancheWorld | STRING OPTIONAL OPTIONAL |
ResetVisibility
ResetVisibility
Reset actor's / component's visibility.
Params
ObjectSearch | STRING ARRAY STRING | Unique name of the target Actor , or Actor.Component , or a special_tag , or an array of multiple object searches. Hover over the star left of your property in the Engine to learn the desired value. Actors only! |
BroadcastUpdate | BOOL OPTIONAL | Should Engine send an Update message for changed values? Default: true |
AvalancheWorld | STRING OPTIONAL OPTIONAL | Optionally target an avalanche world. |
SetMobility
SetMobility
Set actor's / component's mobility.
Params
ObjectSearch | STRING ARRAY STRING | Unique name of the target Actor , or Actor.Component , or a special_tag , or an array of multiple object searches. Hover over the star left of your property in the Engine to learn the desired value. Actors only! |
Mobility | ENUM | Allowed values: NO_TRANSFORM, STATIC, STATIONARY, or MOVABLE |
BroadcastUpdate | BOOL OPTIONAL | Should Engine send an Update message for changed values? Default: true |
AvalancheWorld | STRING OPTIONAL OPTIONAL | Optionally target an avalanche world. |
ResetMobility
ResetMobility
Reset actor's / component's mobility.
Params
ObjectSearch | STRING ARRAY STRING | Unique name of the target Actor , or Actor.Component , or a special_tag , or an array of multiple object searches. Hover over the star left of your property in the Engine to learn the desired value. Actors only! |
BroadcastUpdate | BOOL OPTIONAL | Should Engine send an Update message for changed values? Default: true |
AvalancheWorld | STRING OPTIONAL OPTIONAL | Optionally target an avalanche world. |
SetTransform
Set actor's or component's relative transform.
Params
ObjectSearch | STRING ARRAY STRING | Unique name of the target Actor , or Actor.Component , or a special_tag , or an array of multiple object searches. Hover over the star left of your property in the Engine to learn the desired value. |
Transform | FLOAT ARRAY OPTIONAL | Consecutively: LocX, LocY, LocZ, RotX, RotY, RotZ, SclX, SclY, SclZ . Invalid or missing values will be ignored. Can be an array longer than 9 to apply different transforms when targetting multiple objects. |
Location | FLOAT ARRAY OPTIONAL | Consecutively: LocX, LocY, LocZ . Invalid or missing values will be ignored. |
Rotation | FLOAT ARRAY OPTIONAL | Consecutively: RotX, RotY, RotZ . Invalid or missing values will be ignored. |
Scale | FLOAT ARRAY OPTIONAL | Consecutively: SclX, SclY, SclZ . Invalid or missing values will be ignored. |
IgnorePattern | BOOL ARRAY OPTIONAL | Allows to ignore certain values from being applied. Consecutively: LocX, LocY, LocZ, RotX, RotY, RotZ, SclX, SclY, SclZ . Can be an array longer than 9 to apply different ignore patterns when targetting multiple objects. Default: all false |
IsDelta | BOOL OPTIONAL | Should given transform values be added to the exiting transform. Default: false |
IsLocalTranslation | BOOL OPTIONAL | If IsDelta, should we add location along local axis. Default: false |
IsLocalRotation | BOOL OPTIONAL | If IsDelta, should we add rotation along local axis. Default: true |
BroadcastUpdate | BOOL OPTIONAL | Should Engine send an Update message for changed values? Default: true |
AvalancheWorld | STRING OPTIONAL OPTIONAL | Optionally target an avalanche world. |
ResetTransform
Reset object's transform.
Params
ObjectSearch | STRING ARRAY STRING | Unique name of the target Actor , or Actor.Component , or a special_tag , or an array of multiple object searches. Hover over the star left of your property in the Engine to learn the desired value. |
ResetPattern | BOOL ARRAY OPTIONAL | Consecutively: LocX, LocY, LocZ, RotX, RotY, RotZ, SclX, SclY, SclZ . Default: all false |
BroadcastUpdate | BOOL OPTIONAL | Should Engine send an Update message for changed values? Default: true |
AvalancheWorld | STRING OPTIONAL OPTIONAL | Optionally target an avalanche world. |
SetRenderLayer
SetRenderLayer
Set actor's or component's render layer.
Params
ObjectSearch | STRING ARRAY STRING | Unique name of the target Actor , or Actor.Component , or a special_tag , or an array of multiple object searches. Hover over the star left of your property in the Engine to learn the desired value. |
BroadcastUpdate | BOOL OPTIONAL | Should Engine send an Update message for changed values? Default: true |
RenderLayer | ENUM | Allowed values: BACKGROUND, FOREGROUND, AR_HOLDOUT, AR_SHADOW_CATCHER, VS_TRANSLUCENT, AR_TRANSLUCENT . |
AvalancheWorld | STRING OPTIONAL OPTIONAL | Optionally target an avalanche world. |
ResetRenderLayer
ResetRenderLayer
Reset actor's or component's render layer.
Params
ObjectSearch | STRING ARRAY STRING | Unique name of the target Actor , or Actor.Component , or a special_tag , or an array of multiple object searches. Hover over the star left of your property in the Engine to learn the desired value. |
BroadcastUpdate | BOOL OPTIONAL | Should Engine send an Update message for changed values? Default: true |
AvalancheWorld | STRING OPTIONAL OPTIONAL | Optionally target an avalanche world. |
ResetObject
ResetObject
Reset all object's adjustments.
Params
ObjectSearch | STRING ARRAY STRING | Unique name of the target Actor , or Actor.Component , or a special_tag , or an array of multiple object searches. Hover over the star left of your property in the Engine to learn the desired value. |
ShouldResetComponents | BOOL OPTIONAL | Default: true |
BroadcastUpdate | BOOL OPTIONAL | Should Engine send an Update message for changed values? Default: true |
AvalancheWorld | STRING OPTIONAL OPTIONAL | Optionally target an avalanche world. |
Object Spawning
A group of calls allowing for spawning and deleting actors and components from the scene.
SpawnActor
SpawnActor
Spawn a new actor.
Params
ActorType | STRING |
BroadcastUpdate | BOOL OPTIONAL |
SpawnComponent
SpawnComponent
Add a component to an actor.
Params
ObjectSearch | STRING ARRAY STRING |
ComponentType | STRING |
BroadcastUpdate | BOOL OPTIONAL |
DeleteSpawnedObject
DeleteSpawnedObject
Delete an existing actor. Works only for the actors previously spawned through the API.
Params
ObjectSearch | STRING ARRAY STRING | Unique name of the target Actor , or Actor.Component , or a special_tag , or an array of multiple object searches. Hover over the star left of your property in the Engine to learn the desired value. API-spawned Actors only! |
BroadcastUpdate | BOOL OPTIONAL | Should Engine send an Update message for changed values? Default: true |
DeleteAllSpawnedActors
DeleteAllSpawnedActors
Delete all spawned actors.
Params
BroadcastUpdate | BOOL OPTIONAL | Should Engine send an Update message for changed values? Default: true |
RenameSpawnedActor
RenameSpawnedActor
Rename a previously spawned actor.
Params
ObjectSearch | STRING ARRAY STRING |
NewName | STRING |
BroadcastUpdate | BOOL OPTIONAL |
SetActorParent
SetActorParent
Set one actor to be another's parent.
No params.
Object Getting
Calls allowing for getting the information about the scene.
GetProperty
GetProperty
Send JSON describing a property to Data Hub.
Params
ObjectSearch | STRING ARRAY STRING | Unique name of the target Actor , or Actor.Component , or a special_tag , or an array of multiple object searches. Hover over the star left of your property in the Engine to learn the desired value. |
PropertyPath | STRING ARRAY STRING | Dot-separated path to the targeted property, or an array of such paths. Hover over the star left of your property in the Engine to learn the desired value. |
RecursionDepth | INT OPTIONAL | Default: 1 |
PairObjectSearchesAndPropertyPaths | BOOL OPTIONAL | Default: false |
AvalancheWorld | STRING OPTIONAL OPTIONAL | Optionally target an avalanche world. |
GetFunction
GetFunction
Send JSON describing a function to Data Hub.
Params
ObjectSearch | STRING ARRAY STRING |
FunctionName | STRING |
AvalancheWorld | STRING OPTIONAL OPTIONAL |
GetTransform
Send JSON describing actor's or component's relative transform to Data Hub.
Params
ObjectSearch | STRING ARRAY STRING | Unique name of the target Actor , or Actor.Component , or a special_tag , or an array of multiple object searches. Hover over the star left of your property in the Engine to learn the desired value. |
AvalancheWorld | STRING OPTIONAL OPTIONAL | Optionally target an avalanche world. |
GetObject
GetObject
Send JSON describing an object to Data Hub.
Params
ObjectSearch | STRING ARRAY STRING | Unique name of the target Actor , or Actor.Component , or a special_tag , or an array of multiple object searches. Hover over the star left of your property in the Engine to learn the desired value. |
RecursionDepth | OPTIONAL | Default: 1 |
AvalancheWorld | STRING OPTIONAL OPTIONAL | Optionally target an avalanche world. |
GetWorld
GetWorld
Send JSON describing the currently active world to Data Hub.
Params
ShouldIncludeActors | BOOL OPTIONAL | Default: true |
RecursionDepth | INT OPTIONAL | Default: 1 |
AvalancheWorld | STRING OPTIONAL OPTIONAL | Optionally target an avalanche world. |
Example 1 - Get World's metadata only. Call (you send) Topic: { "Type": "Call", "Target": "XXX-Engine", "RespondTo": "XXX-Client", "Method": "GetWorld", "ID": "000" } Message: {"Params":{"ShouldIncludeActors":false}} CallResult (you can receive, if subscribed) Topic: { "Type": "CallResult", "Target": "XXX-Client", "ExecutedOn": "XXX-Engine", "Method": "GetWorld", "ID": "000" } Message: { "Result": [ { "World": { "Name": "LVL_PixotopeVSSample", "PrettyName": "LVL_PixotopeVSSample", "Type": "Editor", "CompositingMode": "Internal", "IsDirty": false } } ] } |
Example 2 - Get a list of actors. Call (you send) Topic: { "Type": "Call", "Target": "XXX-Engine", "RespondTo": "XXX-Client", "Method": "GetWorld", "ID": "000" } Message: { "Params": { "ShouldIncludeActors": true, "RecursionDepth": 0 } } CallResult (you can receive, if subscribed) Topic: { "Type": "CallResult", "Target": "XXX-Client", "ExecutedOn": "XXX-Engine", "Method": "GetWorld", "ID": "000" } Message: { "Result": [ { "World": { "Name": "LVL_PixotopeVSSample", "PrettyName": "LVL_PixotopeVSSample", "Type": "Editor", "CompositingMode": "Internal", "IsDirty": false, "Actors": [ { "Name": "WorldSettings_1", "PrettyName": "WorldSettings1", "Type": "WorldSettings", "AdjustmentStatus": "ORIGINAL", "Visibility": true, "Mobility": "NO_TRANSFORM", "RenderLayer": "NONE" } ] } } ] } |
Adjustments
Calls exposed by the Pixotope Engine's adjustment system.
GetPropertyAdjustmentStatus
GetPropertyAdjustmentStatus
Check if a particular property was modified. Possible AdjustmentStatus values: UNKNOWN, DEFAULT, MODIFIED, SPAWNED, EDITOR
.
Params
ObjectSearch | STRING ARRAY STRING | Unique name of the target Actor , or Actor.Component , or a special_tag , or an array of multiple object searches. Hover over the star left of your property in the Engine to learn the desired value. |
PropertyPath | STRING ARRAY STRING | Dot-separated path to the targeted property, or an array of such paths. Hover over the star left of your property in the Engine to learn the desired value. |
GetVisibilityAdjustmentStatus
GetVisibilityAdjustmentStatus
Check if a particular object's visibility was modified. Possible AdjustmentStatus values: UNKNOWN, DEFAULT, MODIFIED, SPAWNED, EDITOR
.
Params
ObjectSearch | STRING ARRAY STRING | Unique name of the target Actor , or Actor.Component , or a special_tag , or an array of multiple object searches. Hover over the star left of your property in the Engine to learn the desired value. |
GetMobilityAdjustmentStatus
GetMobilityAdjustmentStatus
Check if a particular object's mobility was modified. Possible AdjustmentStatus values: UNKNOWN, DEFAULT, MODIFIED, SPAWNED, EDITOR
.
Params
ObjectSearch | STRING ARRAY STRING | Unique name of the target Actor , or Actor.Component , or a special_tag , or an array of multiple object searches. Hover over the star left of your property in the Engine to learn the desired value. |
GetTransformAdjustmentStatus
Check if a particular object's transform was modified. Possible AdjustmentStatus values: UNKNOWN, DEFAULT, MODIFIED, SPAWNED, EDITOR
.
Params
ObjectSearch | STRING ARRAY STRING | Unique name of the target Actor , or Actor.Component , or a special_tag , or an array of multiple object searches. Hover over the star left of your property in the Engine to learn the desired value. |
GetRenderLayerAdjustmentStatus
GetRenderLayerAdjustmentStatus
Check if a particular object's render layer was modified. Possible AdjustmentStatus values: UNKNOWN, DEFAULT, MODIFIED, SPAWNED, EDITOR
.
Params
ObjectSearch | STRING ARRAY STRING | Unique name of the target Actor , or Actor.Component , or a special_tag , or an array of multiple object searches. Hover over the star left of your property in the Engine to learn the desired value. |
GetObjectAdjustmentStatus
GetObjectAdjustmentStatus
Check if a particular object was modified. Possible AdjustmentStatus values: UNKNOWN, DEFAULT, MODIFIED, SPAWNED, EDITOR
.
Params
ObjectSearch | STRING ARRAY STRING | Unique name of the target Actor , or Actor.Component , or a special_tag , or an array of multiple object searches. Hover over the star left of your property in the Engine to learn the desired value. |
WasObjectSpawned
WasObjectSpawned
Check if a particular object was spawned with API.
Params
ObjectSearch | STRING ARRAY STRING | Unique name of the target Actor , or Actor.Component , or a special_tag , or an array of multiple object searches. Hover over the star left of your property in the Engine to learn the desired value. |
WasAnyObjectSpawned
WasAnyObjectSpawned
Check if any object was spawned.
No params.
WasAnythingModifed
WasAnythingModifed
Check if any objects, parameters or settings were modified in this world.
No params.
ForgetAllAdjustments
ForgetAllAdjustments
Remove all adjustments without reseting the state of the world.
No params.
RevertAllAdjustments
RevertAllAdjustments
Revert all adjustments applied to this world.
Params
BroadcastUpdate | BOOL OPTIONAL | Should Engine send an Update message for changed values? Default: true |
PullAdjustments
PullAdjustments
Applies adjustments from store.
Params
Revert | BOOL OPTIONAL | Revert all local adjustments before pulling. Default: true |
BroadcastUpdate | BOOL OPTIONAL | Should Engine send an Update message for changed values? Default: true |
ApplyAdjustmentsHierarchy
ApplyAdjustmentsHierarchy
Applies adjustments from parameter.
Params
BakeCommonAdjustments
BakeCommonAdjustments
Bakes common adjustments permanently into the world. Works in the editor mode only.
Params
Multimachine | BOOL OPTIONAL | Default: true |
SaveEditor | BOOL OPTIONAL | Default: false |
TurnGroupIntoCommonAdjustments
TurnGroupIntoCommonAdjustments
Params
Multimachine | BOOL OPTIONAL | Default: true |
Cinematic
PlaySequence
PlaySequence
Play a given level sequence.
Params
AssetPath | STRING | Path of the sequence asset to play. |
AdditionalLoops | INTEGER OPTIONAL | Number of additional loops to play. Set to -1 to loop infinitely. Default: 0 |
AvalancheWorld | STRING OPTIONAL OPTIONAL | Optionally target an avalanche world. |
StopSequence
StopSequence
Stop a given level sequence.
Params
AssetPath | STRING | Path of the sequence asset to stop. |
AvalancheWorld | STRING OPTIONAL OPTIONAL | Optionally target an avalanche world. |
GetAvailableSequences
GetAvailableSequences
Returns a list of asset paths for available sequences.
No params.
Materials
GetAvailableMaterialParameterCollections
GetAvailableMaterialParameterCollections
Get available material parameter collection asset paths.
No params.
GetMaterialParameterCollection
GetMaterialParameterCollection
Get details for a material parameter collection.
Params
SetMaterialParameterCollection
SetMaterialParameterCollection
Set values on a material parameter collection.
Params
AssetPath | STRING |
ScalarNames | STRING ARRAY OPTIONAL |
ScalarValues | FLOAT ARRAY OPTIONAL |
VectorNames | STRING ARRAY OPTIONAL |
VectorValues | FLOAT ARRAY OPTIONAL |
GetDynamicMaterialParameters
GetDynamicMaterialParameters
Params
ObjectSearch | STRING ARRAY STRING | Unique name of the target Actor , or Actor.Component , or a special_tag , or an array of multiple object searches. Hover over the star left of your property in the Engine to learn the desired value. |
SetDynamicMaterialParameters
SetDynamicMaterialParameters
Params
ObjectSearch | STRING ARRAY STRING |
ScalarNames | STRING ARRAY OPTIONAL |
ScalarValues | FLOAT ARRAY OPTIONAL |
VectorNames | STRING ARRAY OPTIONAL |
VectorValues | FLOAT ARRAY OPTIONAL |
Latency Calibration
Latency.Calibrate
Latency.Calibrate
Initiate a latency calibration session
Params
MaxLagMaximum candidate lag | INT OPTIONAL |
InputBuffersHow many frames to accumulate before updating calibration | INT OPTIONAL |
SamplesHow many samples to use in this calibration | INT OPTIONAL |
Latency.Stop
Latency.Stop
Stop a latency calibration session Same return as the above Latency.Calibrate call if all goes well.
No params.
Other
GetVersion
GetVersion
Returns Pixotope and Unreal Engine versions.
No params.
ExecuteConsoleCommand
ExecuteConsoleCommand
Execute a command in the engine console.
Params
Command | STRING | An engine console command to execute. |
BroadcastUpdate | BOOL OPTIONAL | Should Engine send an Update message for changed values? Default: true |
GetCompositingMode
GetCompositingMode
Send the compositing mode of current world. Possible return values: Internal, External
No params.
OpenLevel
OpenLevel
Load a new level without closing the project.
Params
LevelPath | STRING | Example: Levels/TestMap0 |
ReopenLevel
ReopenLevel
Reload the current level without closing the project.
No params.
Kill
Kill
Closes the engine straight away.
No params.
GetAutolayout
GetAutolayout
Feature under development.
Send a list of function descriptions that were marked for auto-layouting.
Params
ObjectSearch | STRING ARRAY STRING | Unique name of the target Actor , or Actor.Component , or a special_tag , or an array of multiple object searches. Hover over the star left of your property in the Engine to learn the desired value. |
GetSpecialObjectMappings
GetSpecialObjectMappings
Get all the object names mapped to a certain object search tag.
Params
ObjectSearchTag | STRING | Pixotope object search tag. For example: post_process_handler . |
GetAllSpecialObjectMappings
GetAllSpecialObjectMappings
Get all the object search tags with object names mapped to them.
No params.
BroadcastWorldUpdate
BroadcastWorldUpdate
Force a broadcast for a particular property.
Params
UpdateType | STRING | Only PropertyChanged supported for now. |
ObjectSearch | STRING ARRAY STRING | Unique name of the target Actor , or Actor.Component , or a special_tag , or an array of multiple object searches. Hover over the star left of your property in the Engine to learn the desired value. |
PropertyPath | STRING ARRAY STRING | Dot-separated path to the targeted property, or an array of such paths. Hover over the star left of your property in the Engine to learn the desired value. |
AvalancheWorld | STRING OPTIONAL OPTIONAL | Optionally target an avalanche world. |
SaveEditor
SaveEditor
Trigger saving dirty editor packages.
No params.
Undo
Undo
Undo the latest editor change. Works only in edit mode.
No params.
Redo
Redo
Redo the latest undone editor change. Works only in edit mode.
No params.
HighlightObject
HighlightObject
Params
ObjectSearch | STRING ARRAY STRING | Unique name of the target Actor , or Actor.Component , or a special_tag , or an array of multiple object searches. Hover over the star left of your property in the Engine to learn the desired value. |
AvalancheWorld | STRING OPTIONAL OPTIONAL | Optionally target an avalanche world. |
UnhighlightObject
UnhighlightObject
Params
ObjectSearch | STRING ARRAY STRING | Unique name of the target Actor , or Actor.Component , or a special_tag , or an array of multiple object searches. Hover over the star left of your property in the Engine to learn the desired value. |
AvalancheWorld | STRING OPTIONAL OPTIONAL | Optionally target an avalanche world. |
UnhighlightAllObjects
UnhighlightAllObjects
No params.
GetCurrentTimecode
GetCurrentTimecode
This call is scheduled for deprecation. Please subscribe to SystemInfo update instead.
Returns the current timecode if datahub is in synchronized mode. Calling this with a NoSync
param set to true is recommended, to avoid the message being delayed.
No params.
GetAssetThumbnails
GetAssetThumbnails
Params
AssetPaths | STRING ARRAY |
AsJPEG | BOOL OPTIONAL |
AsBMP | BOOL OPTIONAL |
GetViewportShot
GetViewportShot
No params.
IsCompilingShaders
IsCompilingShaders
Returns the current timecode if datahub is in synchronized mode.
No params.
Avalanche (Motion Design)
Requires Pixotope Players plugin to be enabled.
AvalancheGetAvailableAssets
AvalancheGetAvailableAssets
Params
IncludeThumbnails | BOOL OPTIONAL | default: false |
AvalancheGetAssetDetails
AvalancheGetAssetDetails
Params
AvalancheTakeIn
AvalancheTakeIn
Params
AvalancheWorld | STRING OPTIONAL |
ControllerIds | STRING ARRAY OPTIONAL |
ControllerValues | STRING ARRAY OPTIONAL |
AvalancheTakeOut
AvalancheTakeOut
Params
AvalancheWorld | STRING OPTIONAL | Optionally target an avalanche world. |
AvalancheAnimationCommand
AvalancheAnimationCommand
Params
AvalancheWorld | STRING OPTIONAL |
AnimationAction | STRING |
AnimationNames | STRING ARRAY OPTIONAL |
TargetAll | BOOL OPTIONAL |
TargetDefaultIn | BOOL OPTIONAL |
TargetDefaultOut | BOOL OPTIONAL |
StartAtTime | FLOAT OPTIONAL |
StartAtMark | STRING OPTIONAL |
NumLoops | INT OPTIONAL |
PlayMode | STRING OPTIONAL |
PlaybackSpeed | FLOAT OPTIONAL |
Remote Control
Requires Pixotope Players plugin to be enabled.
RemoteControlGetPresets
RemoteControlGetPresets
No params.
RemoteControlGetPresetDetails
RemoteControlGetPresetDetails
Params
PresetId | STRING OPTIONAL |
AvalancheWorld | STRING OPTIONAL OPTIONAL |
RemoteControlSetControllers
RemoteControlSetControllers
Params
PresetId | STRING OPTIONAL |
AvalancheWorld | STRING OPTIONAL OPTIONAL |
ControllerIds | STRING ARRAY |
ControllerValues | STRING ARRAY |
Templates
Requires Pixotope Templates plugin to be enabled.
Advanced RPC Usage
Object Search
Many commands take ObjectSearch as their first argument. It allows to target world's actors, components, and some other special objects with the commands. Typically, in order to target actors, one can just type a unique name of this actor. To find out the unique name of an actor, move the mouse over the label of the actor in World Outliner in the Editor, and the unique name will be shown in the tooltip.
ObjectSearch also accepts certain predefined names for targeting special objects:
compositing_mesh
light_component
light_actor
compositing_plane
material_handler
post_process_handler
camera_root
tracked_camera
world_settings
level_blueprint
bpe_manager
Otherwise the object search will by default look for the first actor in the scene of the given name.
Alternatively, it is possible to access the following advanced search modes:
. (component search, by adding a dot after actors nameand following it with the component name, ex. SomeActor0.SomeComponent42)
all_of_type (followed by a type name will target all actors of a given type currently existing in the scene)
first_of_type (followed by a type name will target the first actor of a given type currently existing in the scene)
default_object (followed by a type name will target the default object of that type)
Property Path
PropertyPath parameter, required by many calls, is used to target certain properties(fields) on objects. For properties existing directly in particular object's class the property path will be just this properties' name. However for children of struct properties path will consist of consecutive property names separated with a dot. For example: Parameters.Position.X (targeting float X in Position vector in Parameters struct).
Ignore Property Value
In case that we are sending SetProperty or SetSettings we might sometimes want our call to be ignored for particular properties. To achieve that pass :::ignore::: string as a value.
Call Responses
Every executed call responds with a CallResult message that holds either relevant data or an error message.
Call Result
Every successful call result coming from the Engine holds a JSON array field (called Result). It is an array because almost any executed Call can be scaled to target muliple objects.
Error
If a call fails, the call result message holds an Error field instead of Result. This field can inform on what was the reason for the failure.
Update
Certain calls can optionally broadcast meaningful Update messages throughout the network. It can be useful for keeping otherwise uninvolved client software up to date with what's happening in the engine.
Adding Adjustments
Pixotope Engine has a feature allowing all the remote changes done in Live or Live Preview to be saved and later applied on start again. In order to add your Call as an adjustment add to it a param named IsAdjustment, set to true.
Filtering Results
Often a call will return too much data, and that might take too long parsing or be just unpleasant to work with. In order to filter only the fields you are interested in from your CallResult add a param named ResultFilter, with a array of json fields you want to be sent. Dot-separated paths to particular fields are supported.
For example: ResultFilter=["Object.Components.Name"] would result in only component names being sent on GetObject.
Avoiding Frame Drops
Add an optional param ParamSplitBetweenFrames to your call to configure on which array param should we try to split between and execute every element separately in order to avoid dropping frames. This will efectively treat every element of that array param together with other params as a separate API call, but it will combine the results into a single result message.
Avoiding Synchronization Delays
It is possible to bypass synchronization (and the resulting delay) for select Calls by adding a param NoSync set to true.