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

Integrate templates for a new project into "Create New Project" window #3029

Open
Tracked by #15
starry-abyss opened this issue Jul 22, 2021 · 8 comments
Open
Tracked by #15

Comments

@starry-abyss
Copy link

Describe the project you are working on

I'm making games for jams from time to time and also small tech test projects, separate from long-term ones.

Describe the problem or limitation you are having in your project

Coming from IDEs and other engines' editors, it's not intuitive to me that:

  1. to start from scratch I new to press the "New Project" button;
  2. to start from template I new to do something completely different.

Describe the feature / enhancement and how it helps to overcome the problem or limitation

Hence I propose to allow template selection right after clicking the same button I would click to create a project from scratch.

The enhanced "Create New Project" window of Project Manager will visualize possible choices, one of them being starting from scratch. This allows to postpone the choice to after I pressed the "New Project" button (and assist with the choice).

Describe how your proposal will work, with code, pseudo-code, mock-ups, and/or diagrams

The enhanced "Create New Project" window, inspired by other popular engines:

image

One can choose a template from standard, downloaded or user's own (all shown together).

"Download more" button will open the asset library, which is currently located in a tab of the main Project Manager window. This will allow to download new templates and to un(tag) them as the favorite, to then be shown in the "Create New Project" window.

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

No. Currently, the "Create New Project" window is separate from templates. This proposal is about integrating (a selection of) templates into the "Create New Project" window.

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

There is no way currently to customize "Create New Project" screen from add-ons.

However, implementing this proposal will allow such a customization as a side effect.

@Calinou
Copy link
Member

Calinou commented Jul 22, 2021

See also #1481.

Unfortunately, most project templates currently available on the asset library aren't of a high quality to be promoted in an official manner. They are often unmaintained and don't follow Godot conventions such as the various style guides. Developing project templates officially is also not a viable option due to the low amount of people who could dedicate enough time to doing so.

I'm also of the opinion that some of the larger project templates can give false hopes to new developers, and that it's better not to push them forward too much. Sometimes, tempering your expectations is the right thing to do.

@starry-abyss
Copy link
Author

There are already some good templates e.g. here: https://github.com/GDquest
The proposal is not about promoting all available assets, it's only about a few selected favorites by default.

Developing project templates officially is also not a viable option due to the low amount of people who could dedicate enough time to doing so.

Keep in mind that the examples on the picture are for a purpose of humor. Realistic templates for this screen (by default) would be like "3rd person movement and camera" or "2d side view movement", with names still corresponding to genres for easier understanding.

I'm also of the opinion that some of the larger project templates can give false hopes to new developers, and that it's better not to push them forward too much. Sometimes, tempering your expectations is the right thing to do.

In Unreal Engine you have e.g. a first-person shooter template. In it you control a guy who just shoots boxes, jumps and crouches:

image

I think you underestimate your skills. No big team needed to develop such a template in Godot. :)

@Calinou
Copy link
Member

Calinou commented Jul 22, 2021

I think you underestimate your skills. No big team needed to develop such a template in Godot. :)

If we officially promote templates in the project manager, people will expect a high level of polish for all the templates promoted in the project manager. Other engines have set a high level of expectations there, and it would be a shame if Godot compared negatively in this regard.

@starry-abyss
Copy link
Author

starry-abyss commented Jul 22, 2021

Please note demo projects are not the same as project templates.

Demo projects are what you see on social media, and one can open them to study how they work. EXAMPLE
Project template is a basic starting point for a user's new project, to save time. EXAMPLE

@golddotasksquestions
Copy link

Honestly even if this would do nothing else but to set up sensible default settings in a way more suitable to different projects, it would be a tremendous improvement over what we have right now.

Things like Project Settings, Input Map, Import settings, default viewport (2D/3D), environment settings, main scene setup ...

These are all repetitive tasks that make no sense to be repeated over and over again and again by the experienced users and for newcomers it would be an immense help to start up a project and be ready to go without having to spend hours and hours first learning on how to set up the engine for your needs.

Case in point because it is asked so often: Pixel Perfect 2D games: https://www.reddit.com/r/godot/comments/oshs19/how_to_make_a_pixel_perfect_2d_pixel_art_game/h6oxjwp?utm_source=share&utm_medium=web2x&context=3

Experienced users know a lot of these, why not make it a one click button when you start a new project? It would save so much time for everyone.

@iSaluki
Copy link

iSaluki commented Jul 17, 2022

Whilst there would be a fair amount of work involved in initially setting this feature up, it would be an amazing boost to many developer's workflows.

@nathanfranke
Copy link
Contributor

I've got dozens of small projects i use for prototyping and creating bug reports (MRPs). Most of them are really simple, e.g. a node with a script with something in _ready, sometimes an autoload. The more tedious creating these are, the less likely contributors are to make MRPs.

@iSaluki
Copy link

iSaluki commented Jul 21, 2022

I would be willing to help create these projects, but I feel like they should use best practices and be structured properly - which I'm not sure I'd be able to do.

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

6 participants