-
Notifications
You must be signed in to change notification settings - Fork 262
[Proposal] Animation State Machine #560
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
base: master
Are you sure you want to change the base?
Conversation
proofread pt 1
proofread pt 1
…, proposal is for a system which does not yet exist and now reflects that better
|
After testing and playing around on my fork for two weeks; I feel confident enough about this proposal. Removing draft status now. Also, I'm aware that the name (AnimationStateMachine) sounds atrocious. I welcome any suggestions. |
|
While we do need an Animation manager, much of the headache from animations is at an engine level. Multiple animations modifying the same component data don't play nice with eachother. Would this be coupled with an engine PR? |
|
Given permission, I could implement this as a System/Component pair inside RobustToolbox itself. I believe this system could also alleviate some of the headaches about animations by adding some validation code inside the ASM-System itself. (For example: Validating that separate state machines aren't trying to animate the same component simultaneously). |
This PR contains a proposal for solving the lack of a generalized system for running animations on entities (mostly those using
SpriteComponent) without having to implement another component/system pair every single time. I'm submitting this as a draft since I'm uncertain how much it should go into the details and was hoping for feedback. This is of course also a chance for everybody to ask questions and add any wishes, requirements or other ideas I might have missed.Google Doc with further details (Contains details and changes that haven't made it into the proposal yet).
Hopping mice example code: https://github.com/Ataman/space-station-14/blob/asm/Content.Client/Animations/StateMachine/AnimationStateMachineActions/Animations/HoppingAnimationStateMachineAnimationAction.cs