Bounce Tool Thumbnail

Bounce Tool

Create realistic and stylized bouncing animations with detailed control over gravity, bounciness, squash & stretch, and synchronized rotations.

Overview & Purpose

The Bounce tool is the heart of the Bounce toolset in the Anim Toys pack. It allows users to procedurally generate complex bounce animations for an input image or element. It simulates physical properties like gravity and bounciness, and offers extensive controls for deforming the image (squash and stretch) as it impacts and rebounds. Additionally, it can synchronize rotations (somersaults) with the bounce cycle.

This tool also serves as the data source for the Bounce Save and Bounce Stretcher tools, allowing for advanced animation workflows.

Parameters

Basic Bounce

ParameterDescriptionDefault
Starting Height Sets the initial height (in pixels relative to the input image's bottom edge within the bounce container) from which the image will drop to begin bouncing. A value of 0 places the image at the baseline. 815
Gravity Controls the acceleration that pulls the image downwards and slows its upward rebound. Higher values mean stronger gravity. 0.05
Bounciness Determines the rebound height as a factor of the previous bounce's maximum height. A value of 1.0 means full rebound height; lower values reduce subsequent bounce heights. 0.9
Threshold Bounce Frames Sets a minimum duration (in frames) for a full bounce cycle. If the calculated next bounce is shorter than this value, the bouncing stops. Helps prevent overly rapid, jittery bounces. 1

Squash

Controls how the image deforms vertically upon hitting the baseline.

ParameterDescriptionDefault
Squashiness Determines how much the image squashes vertically. The actual amount depends on the downward velocity at impact. 0.5
Squash Multiplier Further increases the squash effect beyond what Squashiness provides. 5.0
Frames/Squash Limit Sets the maximum number of frames the squash animation (squash down and return to original shape) can take, regardless of impact velocity. 7
Squash Time Factor A non-linear control to fine-tune the duration of the squash. Lower values shorten the squash time. A value of 0 effectively turns off squashing. 0.5
Squash Easing Selects the easing curve for the squash deformation: Linear (constant rate) or Ease (eases in and out of the most squashed position). Linear
Squash Bulge Factor Controls how much the image widens horizontally to compensate for vertical squash. A value of 1 attempts to maintain the image's original area. Values over 1 overcompensate. 1.0

Stretch

Controls how the image deforms vertically as it rebounds from the baseline.

ParameterDescriptionDefault
Stretchiness Determines how responsive the vertical stretch is to the rebound velocity. 0.5
Stretch Multiplier Further increases the stretch effect. High values can lead to a jello effect if upward velocity isn't enough to clear the baseline. 3.0
Stretch Rebound Factor Controls how long it takes for the stretched image to return to its normal height. 0 means an instant snap-back; 1 means it takes until the next baseline impact. 1.0
Stickiness Helps mitigate a sticky or jello appearance when bounce velocity is low by reducing the applied stretch. Useful for the end of a bounce cycle. 1.0
Stretch Narrowing Factor Controls how much the image narrows horizontally to compensate for vertical stretch. A value of 1 attempts to maintain area. 1.0

Baseline Timing

ParameterDescriptionDefault
Baseline Pause Time Number of frames the image will hold at its most squashed state on the baseline before unsquashing and rebounding. 0
Min Time at Baseline Ensures the image visually reaches the baseline for at least this many frames per bounce, preventing perceived floating bounces. 1

Somersault

Controls synchronized rotation of the image during each bounce.

ParameterDescriptionDefault
Half Turns per Bounce Number of 180-degree turns the image performs during each bounce cycle (from takeoff to next landing). Even numbers land upright; odd numbers alternate orientation. Negative values reverse rotation direction. Rotation pauses during squash. 0
Somersault Time Factor Controls how much of the available airtime is used for the somersault. 1.0 uses all available time; 0.5 completes the turns around the middle of the bounce. 1.0

Tool Actions

Action ButtonDescription
Show Bounce Container Toggles the visibility of an outline representing the calculation area for the bounce. Useful for precise positioning. The button text changes to Hide Bounce Container when the outline is visible.
Save Bounce Data Calculates and stores the complete bounce animation data (position, deformation, angle for every frame) internally within this node. This data is then accessible by the Bounce Save and Bounce Stretcher tools, or for export. A notification will appear confirming the save.
Create Polygon Generates a new PolylineMask tool in the composition, drawing a path representing the bounce trajectory. This polygon is static and independent of the Bounce tool once created. Requires data to be saved first.
Export Bounce Data Opens a file dialog to save the internally stored bounce data as a CSV (Comma Separated Values) file. This file can be used in other applications like Blender. Requires data to be saved first. Important: You must enter the full desired file path, including the filename and the .csv extension (e.g., C:\MyBounces\bounce_01.csv or /Users/YourName/Documents/bounce_data.csv).

Common Controls

Standard Fusion Transform node common controls (Motion Blur, Quality, etc.) are available under the Common tab.

Usage Guide

  1. Add the Bounce tool to your flow and connect an image.
  2. Adjust Basic Bounce parameters (Starting Height, Gravity, Bounciness, Threshold Bounce Frames) to define the core motion. Use the Show Bounce Container action to visualize the baseline.
  3. Fine-tune Squash and Stretch parameters to control image deformation on impact and rebound. Pay attention to how velocity influences these effects.
  4. Use Baseline Timing to add pauses or ensure ground contact.
  5. If desired, enable Somersault controls for synchronized rotations.
  6. For advanced workflows (under Tool Actions):
    • Click Save Bounce Data to make the animation data available.
    • Click Create Polygon to visualize the bounce path.
    • Click Export Bounce Data to save a CSV for external use.
  7. Adjust Common controls like Motion Blur for final polish.

Examples & Tips

« Back to Bounce Tools