godotengine / godot

Godot Engine – Multi-platform 2D and 3D game engine
https://godotengine.org
MIT License
90.82k stars 21.14k forks source link

Missing import asset storage options and poor click-economy and performance for asset extraction #75924

Open smix8 opened 1 year ago

smix8 commented 1 year ago

Godot version

c3ed7af

System information

Windows 10

Issue description

In Godot 3 imported 3D asset had the option directly in the "Import" tab to change the storage types of sub-assets for a convenient full asset extraction. E.g. to extract meshes to .mesh, materials to .material and animations to .anim and textures to single files.

import_properties

In Godot 4 the same option does not exist or is limited to e.g. "Extract Textures". Replacement options are split up and buried in the "Advanced Import" menu. This menu handling requires many more steps and has unavoidable extra slow preimport and reimport steps as well.

The core issue is that what was a matter of seconds to setup in Godot 3 now takes minutes to do in Godot 4 if you want to extract all the assets to single file (or even hours on complex assets due to all the additional import steps).

E.g. you need to open the "Advanced Import" menu which triggers an unavoidable slow asset preimport. You need to find and change all the options for e.g. extract materials or extract meshes to the filepaths with requires many more button pressed and path / folder selection steps. When you are done you need to do another full reimport. In Godot 4 a reimport is in general far slower cause it includes far more complex import steps than just the asset extract in Godot 3. Some of those more complex import steps are duplicates of the already done first import consuming a lot of time for nothing.

Extracting all imported files to single files is often needed for a number of reasons where a direct scene inheritance of the imported file is not an option.

Common reasons are:

The solution could properly be to add back the storage selection directly in the "Import" tab or add a convenient button for full asset extract or make the "Advanced Importer" menu (a lot) faster and require less clicks to do the same as in Godot 3.

Steps to reproduce

Missing options in the 3D asset "Import" tab compared to Godot 3. General slow workflow with the "Advanced Import" menu due to preimport and many more import steps and button presses required.

Minimal reproduction project

na

Nodragem commented 7 months ago

I was going to create an issue exactly about that!

At the moment, if we want to have animations to which we add/modify tracks, we need to use Advanced...>Actions>Set Animation Save Paths, then we need to find each animation in the scene outliner, and click on Keep Custom Tracks.

At the very least, we need the "simple import" tab to be closer to what Godot 3 was proposing, so that importing animation in external file with Keep Custom Tracks is as easy.

Then, inside the Advanced Import, we need something like Advanced...>Actions>Extract Animations, where we can set the paths and the options.

fire commented 3 weeks ago

I suspect that was done because the original system in 4.0 didn't have support for extracting textures.

Then, the ability to overwrite texture / material paths with ones from the filesystem was added.

Eventually we'll get the uid system.

huwpascoe commented 3 weeks ago

The UID system is the one reduz is currently making a PR for?

fire commented 3 weeks ago

@smix8 mentioned that in Godot Engine 3 we did not have the feature to rename material paths https://github.com/godotengine/godot/issues/42278