-
-
Notifications
You must be signed in to change notification settings - Fork 21.5k
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
VisualScript Modules #45294
VisualScript Modules #45294
Conversation
1e55056
to
76fca75
Compare
76fca75
to
4c15d0d
Compare
Tell me when it's ready for review. |
a742b20
to
f5304e1
Compare
When you're ready, rebase and ping me. |
58f24b8
to
39b4031
Compare
@fire ping. Only things left were the breakpoints and type-guessing requiring some fixes. I had to delay it as I happened to get my build to crash, and had to do some bug hunting over the weekdays to figure it out. Everything seems fine now. Also @akien-mga or @Calinou, I don't think the Variant API is publicly exposed other than "maybe" GDNative IIRC. |
Wait what...
I get a feeling I messed up something in the rebase.... On it. Edit: Apparently I have not been using single-window mode in my recent demo projects. So seems like something got messed up. |
Will wait for the push. Good night. |
Some engine core changes were made, I asked for a review round on discord, but I need an updated branch. |
39b4031
to
eb8c3fa
Compare
Visualscript modules are similar to scripts but they allow for storing and loading parts of the visualscript aka snippet/sub-graph/module as a resource that can be utilized in any other visualscript. Added: VisualScriptModule Class as Resource types for allowing handling visualscript code snippets as resource. VisualScriptModuleNodes for interfacing with the Modules in visualscript. Changed: Creation of visualscript instances for making room for modules. Adding checks in the visualscript editor for handling modules.
eb8c3fa
to
052cf14
Compare
This should fix most of the UX and things that were annoying, couldn't reproduce the function crash bug, but I did make some changes as per my best guesses(if it still happens mind throwing the crash report/log). Though I did end up finding bugs and annoyances in the Engine itself, like on a Dual Monitor setup new subwindows open on the primary display and there is no way to override it from outside Window class as far as I can see. So popups are slightly broken on dual monitors. And some more similar stuff. Also, I think a simpler solution is to just have popups and dialogs be in the same Window. Will have to write some extra code in Window class for it, or create a subclass that extends the functionalities of the Window class. |
@swarnimarun was unable to work on this due to personal reasons, so I'll see if I can update it. |
HI @swarnimarun @fire , I'm sorry to say, I did try to cherry-pick this after implementing PR #49749. The conflicts are minimal to fix and has similar issues. |
Can you post the branch where you were able to compile? I can try debugging. |
Closing as we just removed VisualScript for 4.0, so this can no longer be evaluated as is. The VisualScript module has been moved to https://github.com/godotengine/godot-visual-script with the aim that it might be ported to a GDExtension if there are interested contributors to do so. Further work to improve the features could be done on that repository too (so currently there isn't anyone dedicated to maintain this repository, it will depend again on whether some contributors step up to do so). |
I am not quite sure about its mergeability yet, my first rebase had issues because I tried rebasing with all the commits originally(even this one had issues likely due to formatting changes in the refactor PR before merge), and the current commit history needs clean up as well.
So I believe it needs a bit more of testing and fixes if there is an issue, also because of the changes to the Window GUI which might not need some of the old changes anymore. Will make it a proper PR as soon as I can say it's mergeable.
Created this so we can start reviewing.
Fixes: godotengine/godot-visual-script#16