Avatar 3.0/Expressions/Speed Sliders: Difference between revisions

From VR Wiki
(Created page with "{{Note|This tutorial was written during the initial release of Avatar 3.0 (~~~~~). Things may change over time, so '''YMMV'''.}} Speed sliders let you speed up and slow...")
 
 
Line 50: Line 50:
# Go to Expressions.
# Go to Expressions.
# Find and select your Speed button.
# Find and select your Speed button.
# Change by rotating your analog stick or mouse.
# Change by rotating your analog stick or mouse. '''NOTE:''' If you're using a different maxspeed from 2, replace the "50%" below with default speed multiplied by 100
{{Note|If you're using a different maxspeed from 2, replace the "50%" below with default speed × 100}}
## 50% is 1x speed
## 50% is 1x speed
## <50% is slower speeds, to a minimum of 0% (frozen).
## <50% is slower speeds, to a minimum of 0% (frozen).
## >50% is faster speeds, to a maximum of whatever you decided your max Speed to be.
## >50% is faster speeds, to a maximum of whatever you decided your max Speed to be.
# When satisfied, press the trigger.
# When satisfied, press the trigger.
# To reset to 1x, change back to 50%.
# To reset to 1x, change back to 50%.

Latest revision as of 19:30, 11 August 2020

Note: This tutorial was written during the initial release of Avatar 3.0 (14:27, 11 August 2020 (CDT)). Things may change over time, so YMMV.

Speed sliders let you speed up and slow down specially-configured animations by rotating a radial puppet, which is a control that allows you to smoothly change a value by rotating your analog sticks.

Principle of Operation

What we're going to be doing here is mapping our radial puppet to a Float named AnimSpeed. This float will then be used to change the Speed multiplier of animations.

Radial puppets have a range from 0.0 (0%) to 1.0 (100%). On top of this, we can't simply map the speed to the param, we have to use the multiplier, so we end up needing to do a little math to get our desired results.

In the end, I decided I wanted a max speed of 2x normal speed, and a minimum speed of 0x (so I can freeze animations). We therefore know we have to set Speed in our animations to 2, but we need to figure out the default value for AnimSpeed (range of 0-1, remember?).

So:

In my case, this was pretty simple and ended up being 0.5 (1/2).

Parameter Setup

  1. If your avatar doesn't have one already, create a new ExpressionParams in your project and add it to your Avatar Descriptor.
  2. Create a new Parameter called AnimSpeed.
  3. Make it a Float.

Menu Setup

  1. Create a new control on the menu on which you want your radial puppet.
  2. Set the name to Speed or whatever.
  3. Change Type to Radial Puppet.
  4. Leave Parameter as [None].
  5. Set Parameter Rotation to AnimSpeed.

Animation Tweaks

  1. Open the Animator your animation is in.
  2. Open the Parameters tab.
  3. Add a new Float Parameter reference.
    1. Set the name to AnimSpeed.
    2. Set the default to 0.5 or whatever your default AnimSpeed should be from the calculation above.
  4. For each animation you want speed controlled:
    1. Set Speed to the max speed you want. In my case, 2 for 2x max speed.
    2. Check Parameter next to Multiplier.
    3. Select AnimSpeed from the dropdown.

You're done.

Using In-Game

Note: This function can be used before or after using a speed-controlled animation.
  1. Whip out your wheel menu.
  2. Go to Expressions.
  3. Find and select your Speed button.
  4. Change by rotating your analog stick or mouse. NOTE: If you're using a different maxspeed from 2, replace the "50%" below with default speed multiplied by 100
    1. 50% is 1x speed
    2. <50% is slower speeds, to a minimum of 0% (frozen).
    3. >50% is faster speeds, to a maximum of whatever you decided your max Speed to be.
  1. When satisfied, press the trigger.
  2. To reset to 1x, change back to 50%.