-
Notifications
You must be signed in to change notification settings - Fork 84
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
Mesh from Heightmap errors - possibly due to threading? #70
Comments
Well it sounds like a threading issue, but that's strange because if a thread is already running, I make sure to wait until it's completed before running a new generation. Maybe Linux treats threads differently and there's extra steps I need to take to make sure it runs smoothly on every platforms. That's not going to be fun to debug. In the meantime, I added a new setting in the projects property panel in 074f078. Try disabling multi-threading for now if the issue disappear at least we will know for sure. |
Thanks for adding that!
If I change line 228 in But this isn't actually fixing the real issue, as I still get these things happening:
And now I sometimes get these errors (in different scenes) when clicking replay: And now I also sometimes get these errors when opening some scenes: Lastly, I've always been getting this (likely unrelated) error whenever I open a scene with a ConceptGraph: Windows 8.1 with Godot 3.2 stable |
Did these issues started after a specific commit?
The The rest of the issues are mostly about GraphNodes (and yes the error message points to the parent class file, that's probably a gdscript limitation / bug). I have all these sometimes but I don't know why so I have to restart the editor and they're gone. Ssometimes, it's because there's an error in a node script so the node library fails to load it but the editor still tries to create connections with this node because it's mentioned on the cgraph file.
|
I noticed it when I started playing with the Heightmap nodes you added. But I'd say it was 9e6d16f where you enabled multithreaded - but it's something more core that changed when doing that. Maybe |
Alright I'll take a look as soon as I can. I hope the issue is easy to replicate, if it's not platform dependent it's not going to be easy to track. Edit - Managed to reproduce the issue, I'll let you know if I make any progress |
Should be fixed in a3150d6, with or without multithreading. Let me know if it still doesn't work |
Awesome, yup it's fixed, thanks :) |
I'm getting these errors when generating Mesh from Heightmap:
Can't add child 'MeshInstance' to 'Output', already has a parent 'Output'.
and
res://addons/concept_graph/src/core/concept_graph.gd:230 - Invalid type in function 'add_child' in base 'Spatial'. The Object-derived class of argument 1 (previously freed instance) is not a subclass of the expected argument class.
Sometimes no MeshInstance is output, and sometime multiple are output.
And then eventually clicking replay will crash Godot.
Is this a threading issue?
That error on line 230 seems to imply the new output nodes have been freed, not the old ones.
Is it reusing references?
Or do we just have to wait for
queue_free
to actually free the output before doingadd_child
again.I'm sure you know exactly what's wrong :)
https://github.com/HungryProton/concept_graph/blob/9600a39c4aeecc081f2af7adf4cc07f711f7531c/src/core/concept_graph.gd#L216-L232
The text was updated successfully, but these errors were encountered: