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
Changing (highmemory) scene cause GDscript to force to run next line and crash? #9253
Comments
I had a problem too when I reached 1gb of RAM allocated in Godot: #8279 |
Well, I started a new project, to test with nearly no MB usage. And yes, the code of the old scene didn't kept running when it changes to a new lightweight scene. So, problem doesn't exist in low usage of RAM... Ehm... does Godot really get overall unstable when scenes starting to use 1GB+ RAM? We have slightly different troubles but I guess both problems are in the end about high memory usage, and I guess not reproducible on low memory usage. It seems for this case that "get_tree().change_scene("")" with not block the current thread but instead it starts new thread skipping "get_tree().change_scene()" code whenever loading the next scene takes too long. Similar like Async code... but I'm sure Godot is not fully async..? I guess I have to work around it... for now... |
First of all thank you for your report and sorry for the delay. We released Godot 3.0 in January 2018 after 18 months of work, fixing many old issues either directly, or by obsoleting/replacing the features they were referring to. We still have hundreds of issues whose relevance/reproducibility needs to be checked against the current stable version, and that's where you can help us. For bug reports, please also make sure that the issue contains detailed steps to reproduce the bug and, if possible, a zipped project that can be used to reproduce it right away. This greatly speeds up debugging and bugfixing tasks for our contributors. Our Bugsquad will review this issue more in-depth in 15 days, and potentially close it if its relevance could not be confirmed. Thanks in advance. Note: This message is being copy-pasted to many "stale" issues (90+ days without activity). It might happen that it is not meaningful for this specific issue or appears oblivious of the issue's context, if so please comment to notify the Bugsquad about it. |
As there was no update since the previous post, we close this issue. If it is still relevant in the way it was described and discussed above, please comment to ask for it to be reevaluated. If it is only partly relevant, or if the original issue has changed, it would be better to open a new issue (potentially referring to this one) focused on the current state. |
Operating system or device - Godot version:
Windows 10.
Godot 2.1.3
Pure Node2D
Issue description:
Code of the old scene keeps going even after I call this function:
get_tree().change_scene("res://Game/Credits.tscn")
Steps to reproduce:
So I've SceneA and SceneB
SceneA use 1.5 GB ram when it's running (contains heavy assets made in DragonBones). So when I change from SceneA to SceneB with "get_tree().change_scene()", GDscript just continue the code of SceneA till it crashes, doesn't even have time to load SceneB.
When I test the same code again in HTML5 version it works... the scene does change, but according to the debugger the code in SceneA kept going till it crashed (just almost immediately). But at least it loads the SceneB and game is still functional.
This function I cast from SceneA:
Is this a bug? Or do I have to destroy/clear SceneA somehow before I change to SceneB?
The text was updated successfully, but these errors were encountered: