-
-
Notifications
You must be signed in to change notification settings - Fork 22k
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
Fix non const animation node _process
virtual function
#97020
Fix non const animation node _process
virtual function
#97020
Conversation
I'm not seeing how I can register compatibility methods for Also, how do changes to the C++ bindings work? Is |
There is no way to safely change a virtual method in a binary compatible way. Instead, you need to add a new virtual method under a new name, and then selectively call whichever one is implemented (usually preferring the new one first). You can check if a virtual method is implemented via the |
Actually, looking at the PR in more detail, I'm not sure changing |
@dsnopek Thanks for your reply, sorry I got to this so late. I can give that a try as I'm working on one such GDExtension, I'll get back to you on that. |
5d831bf
to
d95c4e9
Compare
@dsnopek just tested what you suggested, loading a GDExtension that overrides the const version of this method, on godot compiled with these changes. Works great, no errors! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Seems fine from the perspective of GDExtension!
983b525
to
683322f
Compare
The commits will need to be squashed before this can be merged. |
683322f
to
ec62978
Compare
Thanks! |
Quick fix for #74807
I'm working on a motion matching implementation, and am currently improving its API. I currently think the best way to do this by extending AnimationRootNode, but the docs mention the _process method is deprecated, and that many APIs are missing to be able to extend animation nodes. I guess my question is, is this the case? If so, is there anything planned to support this in coming releases?