godotengine / godotengine/godot
Moving directory reimports image assets and recalculates all metadata
- Dominant language
- C++
- Stars
- 117k
- Forks
- 26.8k
- PR merge metrics
- PR metrics pending
Description
### Tested versions
4.2.2 - reproducable
### System information
Windows 7
### Issue description
Moving a directory of already imported assets (jpgs in this case) re-imports them at great computational expense.
I don't know what the import process entails, but given the insane temporary resource usage (12GB of RAM for this use-case), I expect part of it is analysing the images themselves to gather metadata, which makes sense. However, when moving a directory, Godot should only need to change relative file locations in the metadata; not do anything computationally expensive like recalculate all of the imagery metadata.
### Steps to reproduce
1) Create a new project
2) add a directory of several hundred MB of pictures to the project. Ideally some of them should be 30+MB in size.
3) Create a subfolder.
3) In godot, drag the directory of images into the subfolder
### Minimal reproduction project (MRP)
N/A
Contributor guide
Research direction
No implementation files or tests are named. Start by reproducing the directory move with several hundred MB of large images, then trace Godot's asset-import handling to identify why existing image metadata is recalculated. Done means moving the directory updates its relative locations without reprocessing the image data or causing excessive temporary memory use.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- performance, tooling
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100