Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Animation #869

Open
wants to merge 13 commits into
base: master
Choose a base branch
from
Open

Animation #869

wants to merge 13 commits into from

Conversation

ikeough
Copy link
Contributor

@ikeough ikeough commented Aug 22, 2022

BACKGROUND:
We're starting to work on stories in Hypar, and one of the stories we are often asked to tell is how things are installed. The most effective way to tell this story is an animation.

DESCRIPTION:
This PR adds GeometricElement.Animation property. The animation is added to the geometric element because it is associated with the animation of the element's transform.

FUTURE WORK:

  • Animations do not serialize to JSON.
  • Animations have linear interpolation currently. We can add support for cubic spline and step interpolation in the future.
  • Animations all have the name prefix animation_ (see video). There isn't an obvious way to change this.
  • This changes our transforms in glTF from using matrices to using translation, rotation, and scale, because animations animate each of these channels separately. To do this, we use the Animation class uses the System.Numerics quaternion implementation which is more fully-featured than our own. It's possible that we could move matrices and quaternions to System.Numerics.

REQUIRED:

  • All changes are up to date in CHANGELOG.md.
Screen.Recording.2022-08-31.at.1.20.01.PM.mov

This change is Reviewable

@ikeough ikeough marked this pull request as ready for review August 31, 2022 20:44
@ikeough ikeough added this to the 2.0 milestone Apr 15, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant