This tutorial shows how to add animation to a 3D object and how to toggle it on and off.
First add a 3D object to your scene. In this example a default 3D model Flamingo will be used. Open the Program view by pressing
Tab and go to Patches > Objects: Basic > 3D Model
While in Program view, drag and drop the 3D model to the Root or inside a nested scene patch. Connect the model to the Scene patch to see it in the viewport.
Tab to hide the Program view, and click on the 3D model to select it. Now press
Shift+Tab to enter the 3D model patch.
This is a shortcut for pressing the edit button on the patch (pencil icon) and is useful if you have several objects in the scene and want to edit objects quickly.
Inside the object you can see a few patches. Open the Mesh patch to look at it’s slots.
This patch shows the 3D object in the scene. This tutorial goes through how to add animation to the object’s position, rotation and scale.
While still inside the 3D model patch, go to the Patches list and search for Toggle Sine Animation. Drag and drop this patch into the model.
The Sine Oscillator creates a looping animation between two values, which are the Min and Max values. This patch contains four editable slots.
- Ray Up from Object: Choose an object which works as an interactive button for toggling the animation on and off.
- Animation Speed in Seconds: How long the animation plays in seconds.
- Min/Max: Minimum and maximum values for the animation.
The Float output will be connected to the position, rotation or scale slots in the Mesh patch. To be able to do this, it needs a converter patch between them to work. Connect Float to the X, Y and Z slots.
7 on your keyboard to add a XYZ to Vector patch. This will convert the Oscillator values (Min/Max) into Vector format, which can be then attached to the Mesh. Connect it to one, two or all of the position, rotation and scale slots to see the animation.
The Min and Max values are set to 0 and 1, which means the object is animated between those values. The model moves 1 meter and then goes back to it’s original position at 0. You can add negative values like -5 for example to make it animate with more range. You can also animate only one or two of the XYZ coordinates to create more unique animations.
To change the interaction object for toggling the animation, select the object you want to use from the drop down menu on the Ray Up from Object patch. This can be any object in the scene.
In this example the toggle is the flamingo model, so when it is clicked the animation will stop. Clicking on the flamingo again continues the animation. To interact with objects, hide the Program view with
Tab and press
V to enter the VR Camera. Now press
H to hide the grid and all other tools and enable interactions. Now the object can be clicked and it will toggle the animation on and off.
To change how fast or slow the object animates, change the value in Animation Speed in Seconds. The lower the value, the faster the animation will be. For example the value 5 means the animation plays in 5 seconds, and 1 means it plays in one second and will be much faster. You can enter any value expect 0, which will not play anything.
You can also have multiple Oscillators to have a different animation for different slots. Just leave the Ray Up the same to enable the animation toggle on the same object.
In this example the position and rotation have their own animations. Position is animated with X coordinate and rotation is animated with Y and Z.
When animating scale, it’s good to know that to keep the object in it’s own proportions, all the three XYZ coordinates should be animated. Otherwise it will make empty coordinate slots into 0 value, which will scale the object so small it’s invisible.
However, animating only two coordinates for scale can create fun 2D effects. It will leave one value to 0, making the object look flat like a paper.
Here’s an example where the animation is toggled from the pink cylinder. Clicking the cylinder starts or stops the animation.
Play around with the slots and values to find what works the best for your objects.