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

Implement background building of project solution #849

Open
martinruefenacht opened this issue May 17, 2020 · 6 comments · May be fixed by godotengine/godot#91420
Open

Implement background building of project solution #849

martinruefenacht opened this issue May 17, 2020 · 6 comments · May be fixed by godotengine/godot#91420

Comments

@martinruefenacht
Copy link

Describe the project you are working on:
I am working on a management based game with the frontend written in GDscript, but the backend written in C#.

This applies to any C# utilising project.

Describe the problem or limitation you are having in your project:
Currently this is not a huge issue, but the build time could start getting very annoying since the building forces a panel "Building project solution". This is essentially a useless panel and blocks any kind of work in the editor.

screen

This is related to #241. These panels are (in my opinion) useless and distracting.

Describe the feature / enhancement and how it helps to overcome the problem or limitation:
Move the building of the project into a background process and show the status (if required at all) to the mono builds panel with a progress bar, such that the editor can be used as normal.

Describe how your proposal will work, with code, pseudocode, mockups, and/or diagrams:

Simply remove the project building panel or have a non-interrupting method of displaying the build progress. The same as #241.

If this enhancement will not be used often, can it be worked around with a few lines of script?:

No.

Is there a reason why this should be core and not an add-on in the asset library?:

I don't think this is accessible by a plug in.

@Jummit
Copy link

Jummit commented May 17, 2020

The same could be said about baking lighting. Although I don't know if the editor would be usable even if you could interact with it whilst baking.

@ghost
Copy link

ghost commented May 17, 2020

i agree with this so much, these panels should be reworked and have a different behviour, for this particular one i think it should be a background process just as the op said, but for the build failed panel i think it should be replaced by a red fading tooltip

@Calinou
Copy link
Member

Calinou commented May 17, 2020

Related to #323 and #35.

How long is the project building on average? If it's less than 1 second most of the time, we should consider removing it entirely. Otherwise, we'll have to add some kind of toast to notify that the project is currently being built.

@martinruefenacht
Copy link
Author

martinruefenacht commented May 17, 2020

@Calinou My current build time is 3 seconds, and that is a the beginning of this project.

I think just having a toast to give a progress bar would be fine in my opinion. My main concern is that it blocks using the editor during that time.

It may be worth having a global "background task in progress" toast or panel of some form for all tasks that are backgrounded.

@Calinou Calinou changed the title Background building of project solution Implement background building of project solution Mar 30, 2021
@atirut-w
Copy link

It may be worth having a global "background task in progress" toast or panel of some form for all tasks that are backgrounded.

Something just like Unity's background tasks, maybe?

@neikeq
Copy link

neikeq commented Feb 28, 2022

Note, you can already build the solution in the background outside Godot (from command line or an IDE).
I plan to add background building in the Godot editor, but only when building manually. When launching the game, it will still be a blocking build, as that what the editor build hook API allows.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants