Open GuyUnger opened 3 years ago
little things like this can help make it more natural and intuitive
This may be true, but I don't think this promotes a good project organization. Files related to the project need to be inside of the project folder, both for technical reasons and for practical reasons. I don't believe only programmers think about good organization 🙃 So I don't think it's a stretch to ask you to copy the files you are going to use into the project folder.
Here are some tips on organizing your projects: https://docs.godotengine.org/en/stable/getting_started/workflow/project_setup/project_organization.html
And automatically copying files somewhere into the project structure on your behalf is not a great idea as it comes with a lot of problems that would need to be resolved. Ultimately, a human touch is for the best here, especially if you are going to work with other people at any point.
I get that you want to encourage people to keep things proper, but imo a workflow that realizes your idea as easy as possible and where you can clean up after leads to better games than a strained one because things have to be neat from the start
If you just want to prototype, you can still put all your files in an unsorted pile, it just needs to be inside of the project folder. This practice is applicable to any tool. For example, any good Blender tutorial would suggest you keep intermediate files next to the blend file too.
blender doesn't import files so you're less likely to lose references that way. You can drag images into flash (by far the most enjoyable engine for artists, just has a bad rep because adobe ruined it), or even any art tool like photoshop, which, obviously isn't a good comparison, but I still point it out is because those tools are made for artists and lead to good art without having to fight the software, which godot just isn't. Sure this issue specifically isn't a big deal, but only looking at problems through that programmer mindset is really what's holding the engine back imo
blender doesn't import files
Exactly, it just references them in your local file system (unless you opt to bundle them later) which means you have to be aware where those files are when you move them or the blend file around/to a different system. Which is exactly the type of problem good project organization avoids.
I'm not sure why you refer to being organized as "programmer mindset". I think it's disrespectful to artists of all fields to assume they are incapable of organization. And having to put all the files you are going to use into the project folder is hardly an unreasonable requirement that limits your creative opportunities.
I didn't refer to being organized as a "programmer mindset". I'm not arguing for having an unorganized project. I'm arguing for putting things together as easily and quickly as possible, and allowing the cleanup to be done afterwards. Adding this feature doesn't make projects unorganized, it just means that the organization has to be done after dropping in the image, instead of having to organize first and then make what you want to make. And the "programmer mindset" argument is just more general about most of the decisions made in developing godot. It's not that the decisions made are bad, but they're very rarely in favor of being a great tool for artists, because artists aren't making the tool and the programmers making it don't take their needs serious
I am sorry that you feel that way, but I don't think that this issue is a good example of that situation.
You kind of are arguing for less organized projects to save a second on copying a file yourself. If we allow files from the outside of the project folder, it makes the project structure disjointed, makes it harder to track which files are in use, where they are located and if we have a permission to open them at all. We have a lot of newcomers who have trouble keeping track of things as it is, and this would open more opportunities to mess things up. From this point of view, this has nothing to do with who makes the app. It's about the balance between making power-users happy and keeping inexperienced developers from getting lost.
And if we automagically copy and import files behind the scenes, then we have to start making arbitrary decisions about what users want to happen when this happens. Where do they want the files to drop, what do they want to do with duplicate names, etc. These problems are all resolved if you don't make Godot editor do this for you and do it yourself, exactly the way you want it. This may be my programmer's mindset speaking, but I don't find this unreasonable either. You can just copy all the files to the root folder if you want to organize it later. I don't see why this would be stopping anyone artistically inclined. Do you not keep your assets all together already?
just a bit more of where I'm coming from, I do programming and art, when I'm in programmer mode the engine is awesome, some small issues here and there, but mostly very well thought out, probably the most nice and clean experience of any game engine, but when I put on my artist hat suddenly it feels like nothing works and I keep having to fight the software with almost every little action. The points you bring up are all valid, but could also be resolved with some compromises if this easy of working was a high priority. There's no perfect solution, but in my experience the tools that are the nicest to work with do make these compromises, it sometimes creates small problems but leads to an altogether better experience, and therefore better work. Files could be put in the root folder, double file names can bring up a prompt to give it a unique name. I think your point of newcomers is actually more in favor of my suggestion. People are used to dropping images into their work from art tools, docs, presentations etc., it would be a more seamless transition. I guess this probably isn't going to get implemented, and it's not a big deal, you bring up fair points, but I do hope more thought will go into making the engine more intuitive and artist and beginner friendly. And I think you'll start seeing more fun games, especially from beginners, when you do
I guess this probably isn't going to get implemented
So far it was only me and my opinion. You can still get more support, especially if this is important to people who are poorly represented in our community (and thus aren't immediately here to read and support your idea).
Reading the discussion, I think it doesn't make much sense to fixate on what kind of workflow will lead to disorganization. If you're disorganized in the first place, a tool that one uses won't help much anyone to get more organized, unless you want and/or need to be organized.
Regarding the debate of "programmer vs. designer/artist" here, I'd like to quote Ariel Manzur (one of the Godot's project founder, quote from https://www.pocketgamer.biz/news/63746/empowering-designers-with-adventure-framework-escoria/):
"It's our responsibility to give designers and artists something they can learn." - Ariel Manzur
This is just to give a hint on Godot's development principles and/or priorities. So I suggest that we focus the discussion on making Godot more designer-friendly instead. While concerns like project organization can be raised, those concerns shouldn't end up being the major reasons to disfavor the proposal, in my opinion.
Commenting on:
I'm not sure why you refer to being organized as "programmer mindset". I think it's disrespectful to artists of all fields to assume they are incapable of organization. And having to put all the files you are going to use into the project folder is hardly an unreasonable requirement that limits your creative opportunities.
@pycbouh I have no clue how you interpreted this as being "disrespectful", to be honest. I have re-read what @GuyUnger said and couldn't find anything like that, so yeah I testify that's not what @GuyUnger meant to say at all.
Having said that, @pycbouh I suggest paying more attention, that would be respectful.
I guess this probably isn't going to get implemented
So far it was only me and my opinion [emphasis mine]. You can still get more support, especially if this is important to people who are poorly represented in our community (and thus aren't immediately here to read and support your idea).
Please don't get discouraged just because of this.
So I suggest that we focus the discussion on making Godot more designer-friendly instead.
From talking to other artistic people that I know that work in the field, as well as people working in teams with artists and designers, I have to say that there is no correlation between this proposal and being "designer-friendly". Any attempt to make such correlation only brings stereotypes about artists in the spotlight (hence the being disrespectful aspect) which are not a good reason to make the change.
I've come to realization that we already allow dragging files from the outside of the project and they will automatically be copied to the selected project directory (or the root directory if nothing else), and imported if required. So this may actually be doable. I guess there are 2 technical difficulties with that:
If we can solve them, this may actually be worth implementing.
I think it would be cool only as an option I have cases when I don't want to add the files automatically to the scene.
Describe the project you are working on
Not project specific
Describe the problem or limitation you are having in your project
It would be much more natural and convenient to drop images directly into the scene (from somewhere outside the project) than having to drop it into the filesystem and then into the scene.
Describe the feature / enhancement and how it helps to overcome the problem or limitation
Dragging an image from my computer into the 2D view would place it as a Sprite2D, dropping it in the 3D view would create a Sprite3D. Using godot often feels too much like a programmer/data centered engine, little things like this can help make it more natural and intuitive
Describe how your proposal will work, with code, pseudo-code, mock-ups, and/or diagrams
I understand that files have to be imported into the project first, but this is true for most other editors and almost always works
If this enhancement will not be used often, can it be worked around with a few lines of script?
-
Is there a reason why this should be core and not an add-on in the asset library?
-