Advanced Usage --> Scripting Object Behaviors

Modified on Fri, May 10 at 3:59 PM

Scripting Object Behaviors

Coming soon!

Judah Mantell

Last Update 2 years ago

In SceneForge, every object in the scene has a script assigned to it.  By default this script is blank and doesn't do anything, but by clicking the Edit Object Script button in the properties panel, you can edit and customize the script.

Script Commands

SceneForge scripts are basic in the way they are written but are powerful in what they can do. 


A command is made up of two things:  The Command and the Arguments. Much like a programming language, the Command tells the system what to do, and the arguments are extra bits of information that will be used.  

Some commands have no arguments and some have more than one.

The script editor itself will let you know if something is spelled incorrectly or missing an argument to make things easier.


Sometimes you will need to specify a Scene Object.  Rather than typing the name of the object, when needed an Object Selection window will appear for you to select the desired object.

Once selected, the object's unique ID will be added to the script editor.


In some cases where only one Scene Object needs to be specified, you can write "this" to reference the Scene Object that the script is on.  In most cases this will be what you want.


Below is a list of all currently available commands and will be updated as more get added:

Command Name is what you type in.

Description is what the command does.

Arguments are what other info is required.

Example is an example of this command being used.

Notes are extra bits of info that may be helpful.

Universal Commands

These are commands that either are object agnostic (wait, for example) or can be used on any object type.

As mentioned above, if the last argument takes an ObjectID, if "this" is written, it will default to the object this script is on.


Additionally, commands that change a value over a specified duration can optionally be eased by simply adding "Ease" to the end of the command.

CommandDescriptionArgumentsExample
WaitWaits the specified duration (seconds) before the next command is executed.Decimal (Seconds)Wait 0.5
Object.ShowShows the specified object if it was previously hidden.ObjectIDObject.Show ObjectID
Object.HideHides the specified object if it was previously visible.ObjectIDObject.Hide ObjectID
Object.MoveAxisMoves the object on the specified axis the specified distance over the specified time.Axis, Distance (Decimal), Duration (Seconds), ObjectIDObject.MoveAxis Z 2 1 ObjectID
Object.MoveMoves the object the specified amount on each axis over the specified duration.X-Distance (Decimal), Y-Distance (Decimal), Z-Distance (Decimal), Duration (Seconds), ObjectIDObject.Move 0.1 3 0 ObjectID
Object.RotateRotates the object the specified amount on each axis over the specified duration.X-Angle (Decimal), Y-Angle (Decimal), Z-Angle (Decimal), Duration (Seconds), ObjectIDObject.Rotate 0 90 0 3 ObjectID
Object.RotateAxisRotates the object on the specified axis by the specified amount over the specified duration.Axis, Degrees (Decimal), Duration (Seconds), ObjectIDObject.RotateAxis Y 90 3 ObjectID
Object.LookAtRotates the object on the Y axis to face the specified object.Look Target (ObjectID), Duration (Seconds), ObjectIDObject.LookAt ObjectID 3 ObjectID
Object.ScaleScales the object uniformly to the specified scale over the specified duration.Scale (Decimal), Duration (Decimal), ObjectIDObject.Scale 1.5 3 ObjectID

Editor Commands

These are commands that affect the SceneForge editor.  It's useful for automating different basic tasks as your scene gets animated.

CommandDescriptionArgumentsExample
Editor.ShowInFloorPlanShows the object in the floor plan.ObjectIDEditor.ShowInFloorPlan ObjectID
Editor.HideInFloorPlanHides the object in the floor plan.ObjectIDEditor.HideInFloorPlan ObjectID
Editor.SelectSelects the specified object and focuses the scene camera on it.ObjectIDEditor.Select ObjectID

Light Commands

These are commands that only apply to lights that are added to the scene.  Much like movement, values that change over a duration can be eased by adding "Ease" to the end of the command.

CommandDescriptionArgumentsExample
Light.IntensityChanges the light intensity over the specified durationLumens (Integer), Duration (Seconds), ObjectIDLight.Intensity 500 0.1 ObjectID
Light.TemperatureChanges the light temperature over the specified duration.Temperature (Integer), Duration (Seconds), ObjectIDLight.Temperature 1000 0.5 ObjectID
Light.RotationIf the light is on a stand (Spotlight or Box Light), change the rotation angle over the specified duration.Rotation Angle (Integer), Duration (Seconds), ObjectIDLight.Rotation 90 4 ObjectID
Light.SpotAngleIf the light is a spotlight, adjust the spot angle over the specified duration.Spot Angle (Integer), Duration (Seconds), ObjectIDLight.SpotAngle 100 3 ObjectID

Camera Commands

These are commands that only apply to cameras that are added to a scene.  An optional "Ease" command can be added.

CommandDescriptionArgumentsExample
Camera.FocalLengthChanges the focal length over the specified duration.Focal Length (Integer), Duration (Seconds), ObjectIDCamera.FocalLength 32 10 ObjectID
Camera.Tripod.HeightIf the camera is on a tripod, adjust the height over the specified duration.Height (Decimal), Duration (Seconds), ObjectIDCamera.Tripod.Height 1.8 3 ObjectID
Camera.Tripod.PanIf the camera is on a tripod, adjust the pan angle over the specified duration.Pan(Decimal), Duration (Seconds), ObjectIDCamera.Tripod.Pan 90 2 ObjectID
Camera.Tripod.TiltIf the camera is on a tripod, adjust the tilt angle over the specified duration.Tilt (Decimal), Duration (Seconds), ObjectIDCamera.Tripod.Tilt 45 3 ObjectID
Camera.Crane.HeightIf the camera is on a Crane, adjust the height over the specified duration.Height (Decimal), Duration (Seconds), ObjectIDCamera.Crane.Height 80 3 ObjectID
Camera.Crane.RotateIf the camera is on a crane, adjust the rotation over the specified duration.Rotation (Decimal), Duration (Seconds), ObjectIDCamera.Crane.Rotation 45 4 ObjectID

Dynamic Track Commands

These are commands that only apply to dynamic tracks that are added to a scene.

CommandDescriptionArgumentsExample
Track.EaseSets the track's ease toggle to the specified value.Boolean (True/False),ObjectIDTrack.Ease false ObjectID
Track.DurationSets the track's duration.Duration (Seconds), ObjectIDTrack.Duration 40 ObjectID
Track.PlayPlays the track motion.ObjectIDTrack.Play ObjectID
Track.StopStops the track's motion.ObjectIDTrack.Stop ObjectID

Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select at least one of the reasons
CAPTCHA verification is required.

Feedback sent

We appreciate your effort and will try to fix the article