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

If a project is ran and main_scene is not set, show a pop up with a dropdown list that lets them change the main scene #1134

Closed
xodene opened this issue Jan 7, 2015 · 20 comments

Comments

@xodene
Copy link
Contributor

xodene commented Jan 7, 2015

I don't think it's a good experience to have to open up the project settings dialog, find the main_scene variable and set the scene file just to run the project the first time. It's especially not friendly to new users who just want to see something running.

For the convenience of the user, if main_scene is not set, the editor should show a pop up asking the user to select the project's main scene from a drop down list of every scene that exists in the project. The pop up can have an additional statement saying that the project's main scene can always be edited from the project settings in the future. The user will now know that they can change the main scene anytime. The pop up will solve the issue of a new user having to search for "Project Settings" and the main_scene setting.

@adolson
Copy link
Contributor

adolson commented Jan 7, 2015

+1

@NathanWarden
Copy link
Contributor

If nobody already has I'd be happy to take a stab at this either next week or possibly this weekend if I get some time.

This would only be my third change to Godot so I'm not familiar with exactly where things need to be discussed. Do implementation details need to be discussed as a new thread in the Google mailing list, or should they continue in this thread?

Thanks,
Nathan

@adolson
Copy link
Contributor

adolson commented Jan 16, 2015

Not everything needs to be discussed on the mailing list. Mostly for bigger things, I'd reckon. Many PRs have been submitted and merged without discussion, especially things that fix bugs or improve overall usability.

@NathanWarden
Copy link
Contributor

Thanks, sounds good!

@adolson
Copy link
Contributor

adolson commented Jan 16, 2015

I just thought [more] about this, and the first-created isn't necessarily going to what you want to run. I'd say, instead of the first-created scene, it should just set it to the current scene when run via F5/Play button, if main_scene isn't set. The hook to check that is [obviously] already there, since it's throwing the error.

@NathanWarden
Copy link
Contributor

That makes sense. I'll try that.

@mamarilmanson
Copy link

I think there needs to be beginner and advanced features... :)

@akien-mga
Copy link
Member

I still think this issue raises a valid usability enhancement, especially when doing quick projects to make proof of concepts or similar it's annoying to always have to go to the project settings and set the main scene to (I think in >90% of cases you want the first and only created scene be the main scene).

Check the (closed) PR #1242 which has some interesting further discussion of the concept, but did not reach a final consensus as far as I know.

I personally think that an option that would propose to the user to set the current scene as main scene when clicking "Run" for the first time without main scene defined would be a nice addition.

@KioriSun
Copy link

I was going to suggest this, I'd like to add that in the new scene creation window there should be an option to set the newly created scene as main, and simply when you have a new project, as in main_scene = null, that option is auto enabled.

Also, in there regard it would be great if there was a button somewhere in the editor to switch current scene to the main scene, or a menu entry whatever. Specially if you are testing lots of things, it gets annoying having to revisit project setting all the time.

Alternatively, the editor could be tweaked so that i always runs the selected scene, and not the main scene.

Like Akien mentioned this is a usability issue.

@nunodonato
Copy link
Contributor

@KioriSun if you are testing lots of things in different things you can just press F6 or use the "play current scene" button, there is no need to switch the main scene.

I like @akien-mga idea of asking the user to set the current scene when running the first time

@reduz
Copy link
Member

reduz commented Feb 14, 2016

I'm not sure if this is a good idea. This was discussed before (wonder
where), and the conclusion was that adds more problems than it solves. It's
best that the user is told to set the main scene so he/she learns that this
must be done and the option exists, otherwise the user will freak out not
understanding why the first scene is the one that runs.

On Sun, Feb 14, 2016 at 6:30 AM, Nuno Donato [email protected]
wrote:

@KioriSun https://github.com/KioriSun if you are testing lots of things
in different things you can just press F6 or use the "play current scene"
button, there is no need to switch the main scene.

I like @akien-mga https://github.com/akien-mga idea of asking the user
to set the current scene when running the first time


Reply to this email directly or view it on GitHub
#1134 (comment).

@xodene
Copy link
Contributor Author

xodene commented Feb 17, 2016

I think what makes up most of this usability issue is the fact that the user has to go search for "Project Settings" to simply get something running. I like the idea of giving the editor an easy to access button or dropdown menu to select the main scene. Or, consider the solution proposed by @akien-mga and show the user a pop-up menu, asking them to select the main scene if it's not set. This would solve all the searching a new user would have to do just to set the main scene.

@adolson
Copy link
Contributor

adolson commented Feb 17, 2016

I agree. I would take the time to educate the user, too. Something along
the lines of:

You have not set a default scene for this project yet. You may set this now
by choosing one from the menu below and clicking Continue. Note that you
can change your project's default scene later on by going to Project
Settings.

Alternately, you can always just run the current scene directly by pressing
F6.

Set Default Scene: <menu list here, with current scene selected by default>

Continue / Cancel

On Wed, Feb 17, 2016 at 1:21 PM, Maximillian [email protected]
wrote:

I think what makes up most of this usability issue is the fact that the
user has to go search for "Project Settings" to simply get something
running. I like the idea of giving the editor an easy to access button or
dropdown menu to select the main scene. Or, consider the solution proposed
by @akien-mga https://github.com/akien-mga and show the user a pop-up
menu, asking them to select the main scene if it's not set. This would
solve all the searching a new user would have to do just to set the main
scene.


Reply to this email directly or view it on GitHub
#1134 (comment).

@razcore-rad
Copy link
Contributor

+1 on the pop-up if no scene is set as main scene when first running the project

@xodene xodene changed the title Set the project's main scene to the first scene created If a project is ran and main_scene is not set, show a pop up with a dropdown list that lets them change the main scene Feb 17, 2016
@xodene
Copy link
Contributor Author

xodene commented Feb 17, 2016

I see that my initial proposal wouldn't work out, so I edited the original post and title. I'm now suggesting the editor should show a pop up that allows the user to change main_scene if it's not set, for convenience.

@reduz
Copy link
Member

reduz commented Feb 17, 2016

Yeah I guess something should be added in Tree so the project settings is
opened and the main scene property is hihglihted

On Wed, Feb 17, 2016 at 5:04 PM, Răzvan Cosmin Rădulescu <
[email protected]> wrote:

+1 on the pop-up if no scene is set as main scene when first running the
project


Reply to this email directly or view it on GitHub
#1134 (comment).

@KioriSun
Copy link

I think @adolson has just described how user-friendly software should operate. It would be great to have that.

In fact a lot of features in Godot could be self-explanatory(no docs required) as more pop-ups/tooltips are implemented, and maybe as icons are changed to become more visible/eye catchy.

I see that Godot has the potential of being the most user friendly engine out there, and it kind of already is, users just have a hard time figuring out where stuff is, or how it's done, but the actual functionality is there.

And many a times it's only a few clicks away.

@AlexHolly
Copy link
Contributor

I can select the main scene but it is not saving the settings on project restart

@akien-mga
Copy link
Member

Ah indeed, this issue has been fixed by 972c2ad already :)

Keeping it open for now to check @AlexHolly's last comment, most likely the editor settings should be saved when using this new feature (otherwise, saving the scene should work, at least it did for me).

@akien-mga akien-mga added this to the 2.1 milestone Jul 18, 2016
@AlexHolly
Copy link
Contributor

Hmm I just tried to add a new node and saved the scene + run but the main scene it is still not saved. I can see that the main scene was set in the settings but it is not saved(project restart).

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

No branches or pull requests

10 participants