⌚
Timeflow
  • ⌚Introduction
  • 📗User Guide
    • â–ļī¸Getting Started
      • ✅Requirements
      • âŦ‡ī¸Installation
      • 🚀Quick Start
      • âœī¸Workflow
      • đŸŽŦRender Pipeline
      • â¯ī¸Editor vs Runtime
      • đŸĻŋHow it Works
      • â›‘ī¸Potential Issues
      • ⚡Optimization
      • 🔨3rd Party Tools
      • đŸ”ĸUpgrading Guide
    • â„šī¸Timeflow Editor
      • đŸŽ›ī¸Menu Bar
      • â˛ī¸Time
      • Local Time Scope
      • 🧰Work Area
      • âš™ī¸Settings
      • âŗUpdate Settings
      • đŸ“ēDisplay Lists
      • đŸ”ģMarkers
      • đŸ”ĩObject
      • 🏭Managed Objects
      • ⚡Quick Select Objects
      • âš’ī¸Tools
    • đŸŽŦTimeflow View
      • 🔩Toolbar
        • 🔑Auto Keyframing
        • â¯ī¸Play Controls
        • đŸĨ…Work Area
        • â¯ī¸Current Time
        • đŸŽŧMusical Timing
        • 🌐Grid and Snap
        • 🔸Keyframe Values
        • đŸ”ģMarkers
      • â˛ī¸Timeline
      • 📐Time Navigation
      • Local Time Scope
      • 🎏Track View
      • â†˜ī¸Selection
      • 📰Object Panel
      • đŸ“ēDisplay Lists
      • 🍱Channels
      • đŸŖProperties
      • 🔗Channel Link
      • đŸšĨSwitches
      • 📅Values Column
      • đŸ›¤ī¸Tracks
      • 🔸Keyframes
      • đŸ“ļAlignment Tools
      • ⌛Time Offset
      • đŸ”ĸInfo Panel
      • 📉Graph View
      • âœ‚ī¸Keyframe Tools
    • 🍰Menus & Shortcuts
      • 📃Context Menus
        • â†–ī¸Select Menu
        • 📰Object Menu
        • 🍱Channel Menu
        • đŸ›¤ī¸Tracks Menu
        • 🔸Keyframes Menu
        • đŸ”ģMarkers Menu
        • 📰View Menu
        • 📰Events Menu
        • đŸĨ…Work Area Menu
      • đŸ—ƒī¸File Menu
      • âš’ī¸Timeflow Menu
        • đŸ•ēAdd Behavior
        • đŸ”ļAnimation
        • 🍱Composition
        • đŸ“ēDisplay
        • ⏊Jump To
        • 👨‍đŸ‘Ļ‍đŸ‘ĻHierarchy
        • 🌐Mesh
        • 👉Select
        • 📚Tracks
        • 🌈Track Colors
        • â†”ī¸Transform
        • đŸ‘ī¸Visibility
        • đŸ› ī¸Editor
      • đŸ”ĩGame Objects Menu
      • đŸŽ›ī¸Presets
      • âš™ī¸Preferences
        • Assets
        • ⌛Time
        • đŸŗī¸â€đŸŒˆTracks
        • âšĒObjects
        • 🧮Channels
        • đŸ”ļKeyframes
        • 🔠Input
        • đŸ“ĨImport
        • đŸ–ŧī¸Rendering
        • đŸŽ›ī¸Overrides
        • 🍱Extras
      • *ī¸âƒŖKeyboard Shortcuts
        • Managing Shortcuts
      • âœ´ī¸Quick Menu
  • Reference
    • đŸ”ĩTimeflow Object
      • đŸĸTracks
      • 🏭Behaviors
      • ⏰Events
      • đŸ—ƒī¸Channels
    • 💃Timeflow Controller
      • đŸŽžī¸Timeflow Playback
    • đŸĒ„Behaviors
      • đŸŽžī¸Animation
        • 🔸Keyframer
        • â†”ī¸Tween
        • 🔀Blend
        • đŸŽĸMotion Path
        • đŸ‘¯Animation Clips
        • 🌴Animator Blend Trees
        • 😁Blend Shapes
      • 🤖Automation
        • 🛸Auto Bank
        • 🧭Auto Rotate
        • 📐Distance
        • ⏰Event
        • đŸ›Šī¸Flyby
        • 🏃Follow
        • 👀Look At
        • đŸŽ¯Look At Target
        • 🎲Noise
        • 🚊Place On Path
        • đŸī¸Place On Surface
      • 🔊Audio
        • 🔊Audio Track
        • đŸŽŧAudio Spectrum
        • đŸŽĩAudio Sample
        • đŸŽ™ī¸Audio Reactive
      • 🎹MIDI
        • 🎹Midi File
        • đŸĨMidi Tween
        • 📡Midi Receiver
          • đŸŽ›ī¸Minis Setup (New Input System)
          • đŸšĨMidiJack Setup (Legacy Input)
      • 🏁Rendering
        • đŸŽžī¸Render To Disk
        • 📋Render Queue
        • đŸ“Ŋī¸Video Encoding
        • 💡Tips & Optimizations
        • âēī¸Unity Recorder
      • 🔧Tools
        • â„šī¸Animator Info
        • 🧮Align Children
        • đŸ’ŦComment
        • #ī¸âƒŖFPS Counter
        • 📈Graph
        • 🔗Property Link
        • 🔄Rotator
        • ✨Particle System Update
        • 🌈Trail Renderer Update
        • đŸ“ēVideo Player Update
    • đŸ—ƒī¸Precomposing
    • 🏭Prefabs
    • 🎨Advanced Presets
    • đŸŽ›ī¸Editor Overrides
      • 🏹Transform Editor Override
    • 🔌Integrations
      • đŸ§™â€â™‚ī¸Adventure Creator
      • đŸŽ›ī¸MIDI Jack | Minis
      • đŸ¤ēSpine Animation
      • đŸ“Ŋī¸Unity Timeline
      • ➰Unity Splines
    • đŸĒSamples
      • đŸ•šī¸Demo App
      • đŸŽžī¸Cutscenes
      • 🏓Physics
      • 🍧Shader Properties
      • ⚡Visual Effect Graph (VFX)
    • 📖Glossary
    • 📗Scripting
    • đŸ“ŖPublished Works
    • âš ī¸Known Issues
    • 🆘Support
    • đŸ§ĒBeta
    • Roadmap
    • đŸ”ĸVersion History
    • ÂŠī¸Terms & Privacy
Powered by GitBook
On this page
  • Using Channel Link
  • Capturing Data
  • Start Recording
  • Work Area Only
  • Resume
  • Clear Data
  • Clear On Record
  • Displaying Data
  • Scripting Graph Data
  1. Reference
  2. Behaviors
  3. Tools

Graph

A utility for capturing and displaying data in the Graph View

PreviousFPS CounterNextProperty Link

Last updated 8 months ago

This behavior is used in the Unity Editor only for capturing and displaying data in the Timeflow . Use the Graph tool to help visualize animation for analysis and troubleshoot issues.

To add a Graph tool, right-click on an object in the Timeflow view and select from the context menu: Add Tool > Graph

Please note that this behavior is for analysis only and does not presently provide any utility for baking, converting, or exporting data.

Graph can be used in one of two ways; either use Channel Link to route data into the Graph channel, or use scripting to send data from your own custom scripts. Both methods are explained in more detail below.

Using Channel Link

Drag the channel link well to connect the Graph channel with an input source. This can be used to connect to any numeric value channel.

Graph only displays singular float values. If connected to a multi-numeric property, you may select which axis/attribute to display. When connected to an int or other non-float value, it is converted to floating point for display purposes.

Capturing Data

Initially the graph data is empty and will not show anything in the Graph View until data has been captured. Select the object to view the Graph settings in the Inspector, which provides the primary controls for recording data.

Start Recording

The Graph component only records values when recording is enabled. Press Start Recording to begin recording values. This also starts playback in the Timeflow view for convenience.

Work Area Only

Note that when Work Area Only is toggled, it also affects the work area setting in the Timeflow view accordingly. Looping is also disabled in the view so that recording doesn't repeat and overwrite itself, with playback instead stopping at the end of the work area or timeline duration and recording ending.

Resume

If enabled, playback resumes from the current time. Otherwise if Resume is disabled, pressing Start Recording rewinds to the beginning of the Work Area if in use, or the beginning of the timeline.

Clear Data

Press this button any time to clear the captured data. If Work Area Only is enabled, only the data in the work area is cleared. This operation is undoable.

Clear On Record

If enabled, the data is cleared automatically when recording starts. This is helpful to prevent overlapping captured data.

Displaying Data

Data is displayed in the Graph View similar to other channels, however the graph data cannot be selected or manipulated and is only for display.

Use the shortcut key F to fit the graph data in view.

Scripting Graph Data

This method is useful for visualizing data generated from custom scripts to expose otherwise abstract data into a visual form for inspection. This can be helpful to diagnose issues with timing and interpolation that may be too difficult to spot with logging or other debugging methods.

To integrate this with your own custom script, get a reference to the Graph component and simply call RecordValue(float value). Use the above interface in the Graph inspector to start and stop recording, or control it with your script.

Please refer to the Graph component script for further reference and code comments.

Assets/AxonGenesis/Timeflow/Behaviors/Tools/Graph.cs

Graph Example

You may also refer to the example scene provided with a basic scripting example:

Assets/AxonGenesis/Timeflow/Examples/Scenes/Tools/Graph.unity

Use the to capture data in a specific region of time. This is helpful to isolate a specific moment in an animation and to limit data being captured to that time range, while preserving data outside of the range.

Data is captured based on the actual frame rate of playback and the setting in the , as well as the local of the Graph behavior. It is possible for example to use or other update setting to capture data at specific time intervals. Unless Strict Tolerance is used, graph data may actually be captured between frames.

đŸĒ„
🔧
📈
Work Area
Graph View
Timeflow Preferences
Update Settings
Time Tolerance
Force Framerate
Click the pencil icon on the Channel Link to edit the link and select an input axis.
The controls are highlighted in red while recording.