-
-
Notifications
You must be signed in to change notification settings - Fork 21.4k
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
Warning about upgrading mesh format to 4.2 is unclear about next steps, and there's no visual feedback when the conversion takes a long time #83287
Comments
I'm not sure that there is much we can do here. The engine upgrades the mesh at load time. It doesn't iterate over the project and auto detect meshes to upgrade or anything. So it can't exactly provide a loading bar or anything. But I understand the issue as updating the meshes can take some time. Did you not get toasts popping up as well? The warning should display in a toast |
We can change the window title while meshes are being upgraded, but not much more can be done if the editor is unable to display toasts or a progress dialog. |
Well if there is no other way around it I guess any indication of progress is better than none. At least you know the editor didn't hang up due to an error |
We discussed this on the Godot contributors chat today (#general). I'll reclassify this as a bug as after discussion the UX flaws make it really difficult to deal with this upgrade, so we should solve this before 4.2. Some takeaways about the problem from that discussion: Problem statement by @akien-mga:
And by @clayjohn:
Suggestion for a solution by @clayjohn:
Editor script by @KoBeWi that can be used to resave all resources (might need tweaking to handle @tool
extends EditorScript
var files: Array[String]
func _run() -> void:
files = []
add_files("res://")
for file in files:
print(file)
var res = load(file)
ResourceSaver.save(res)
func add_files(dir: String):
for file in DirAccess.get_files_at(dir):
if file.get_extension() == "tscn" or file.get_extension() == "tres":
files.append(dir.path_join(file))
for dr in DirAccess.get_directories_at(dir):
add_files(dir.path_join(dr)) Edit: I realize I partially hijacked this issue which was solely about the conversion taking a long time without visual feedback. We should aim at solving both problems at once, but if we don't we can split it further into two issues. |
Godot version
v4.2.beta.custom_build [b137180]
System information
Godot v4.2.beta (b137180) - Windows 10.0.19045 - Vulkan (Forward+) - dedicated NVIDIA GeForce RTX 2060 SUPER (NVIDIA; 31.0.15.3758) - AMD FX(tm)-8350 Eight-Core Processor (8 Threads)
Issue description
I'm opening a large 3d project and Godot was unresponsive for several minutes.
The console showed the following:
I do get the warnings in the debugger but only when the editor unfreezes itself.
I understand this could be considered an enhancement but to me it seems like a UX bug. Launching the editor without a console has been possible for a while and it's the default on platforms like Steam. For non-console users the experience is an unresponsive window with no idea of what's happening. If this were intended behavior there would be no output on the console either.
Steps to reproduce
Expected: I get some sort of progress bar in the editor while the meshes are converted to the new surface format, as well as the warning about backwards compatibility
Actual: the editor hangs for minutes. No visual indication of what it's doing
Minimal reproduction project
N/A
The text was updated successfully, but these errors were encountered: