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

Merge TnuaPlatformerAnimatingOutput's functionality into TnuaPlatformerState #26

Closed
idanarye opened this issue Jul 5, 2023 · 1 comment

Comments

@idanarye
Copy link
Owner

idanarye commented Jul 5, 2023

My current leading design in #24 would allow the movement actions to have a state. Users will want to animate the actions, and I can have each action have its own animating output type with information for controlling the animation for that action, but having two types for each action starts to seem like a bit too much. I'm considering, instead, to use the action's state for both state and animation.

This got me thinking - maybe the same should be done for regular animating output? My reasoning is:

  • Uniformity. The action's state will be in TnuaPlatformerState, so users will already need to get that component for animation. It would be weird to have the animation data in it only for the actions and the animation data for movement somewhere else.
  • Feature request. Give us more control over the jump trajectory. #5 (comment) shows (with a sample size of N=1) that TnuaPlatformerState is the intuitive place users look at when searching for information needed for animation. Why not just put it there?
  • The current TnuaPlatformerAnimatingOutput is not that big nor expensive to calculate that we need to make it optional.

Note that TnuaManualTurningOutput will still be a separate component, because it affects the behavior.

@idanarye
Copy link
Owner Author

This is actually already in. Well, not really, as TnuaPlatformerState is gone - but the TnuaController which replaces it actually merges the controls, the state, and the animating output.

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

No branches or pull requests

1 participant