-
-
Notifications
You must be signed in to change notification settings - Fork 44
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
Crashes Godot when attempting Visual Selection #201
Comments
Here's a quick screenshot that I was able to grab when just trying to click on the block. This seems to happen regardless of whether or not I'm tapping on a Cyclops block, or any other object in my scene. You'll need to zoom in, but that's definitely a Visual Selection, even though I'm just clicking and not click-dragging. Also, here's the logs from that test that show some different errors than we were getting before: Expand for additional Error LogsGodot Engine v4.3.stable.arch_linux - https://godotengine.org
Vulkan 1.3.293 - Forward+ - Using Device #0: AMD - AMD Radeon RX 6750 XT
ERROR: Node not found: "/root/CyclopsAutoload" (absolute path attempted from "/root/@EditorNode@16887/@Panel@13/@VBoxContainer@14/DockHSplitLeftL/DockHSplitLeftR/DockHSplitMain/@VBoxContainer@25/DockVSplitCenter/@VSplitContainer@52/@VBoxContainer@53/@PanelContainer@98/MainScreen/@CanvasItemEditor@9272/@VSplitContainer@9094/@HSplitContainer@9096/@HSplitContainer@9098/@Control@9099/@SubViewportContainer@9100/@SubViewport@9101/Node3D/block0").
at: get_node (scene/main/node.cpp:1789)
SCRIPT ERROR: Invalid access to property or key 'builder' on a base object of type 'null instance'.
at: CyclopsBlock._process (res://addons/cyclops_level_builder/nodes/cyclops_block.gd:207)
WARNING: 1 RID of type "Canvas" was leaked.
at: _free_rids (servers/rendering/renderer_canvas_cull.cpp:2483)
WARNING: 9 RIDs of type "CanvasItem" were leaked.
at: _free_rids (servers/rendering/renderer_canvas_cull.cpp:2485)
ERROR: 1 shaders of type SceneForwardClusteredShaderRD were never freed
at: ~ShaderRD (servers/rendering/renderer_rd/shader_rd.cpp:845)
ERROR: 1 RID allocations of type 'N10RendererRD12LightStorage11ShadowAtlasE' were leaked at exit.
ERROR: 1 RID allocations of type 'N10RendererRD15MaterialStorage8MaterialE' were leaked at exit.
ERROR: 1 RID allocations of type 'N10RendererRD15MaterialStorage6ShaderE' were leaked at exit.
ERROR: 1 RID allocations of type 'N10RendererRD14TextureStorage12RenderTargetE' were leaked at exit.
ERROR: 12 RID allocations of type 'N10RendererRD14TextureStorage7TextureE' were leaked at exit.
ERROR: 1 RID allocations of type 'N16RendererViewport8ViewportE' were leaked at exit.
WARNING: 1 RID of type "UniformBuffer" was leaked.
at: _free_rids (servers/rendering/rendering_device.cpp:5601)
WARNING: 20 RIDs of type "Texture" were leaked.
at: finalize (servers/rendering/rendering_device.cpp:5758)
ERROR: 72 RID allocations of type 'PN18TextServerAdvanced22ShapedTextDataAdvancedE' were leaked at exit.
ERROR: 1 RID allocations of type 'PN18TextServerAdvanced12FontAdvancedE' were leaked at exit.
WARNING: ObjectDB instances leaked at exit (run with --verbose for details).
at: cleanup (core/object/object.cpp:2284)
ERROR: 6 resources still in use at exit (run with --verbose for details).
at: clear (core/io/resource.cpp:604)
ERROR: Pages in use exist at exit in PagedAllocator: N7Variant5Pools11BucketSmallE
at: ~PagedAllocator (./core/templates/paged_allocator.h:170) |
Unfortunately, the .cpp errors are hard to debug because they do not offer any clue as to what it is that is causing the error. I have fixed the triangulation error in a patch that I'm working on, but I've been working on it for months now and don't know when I'm going to be able to check it in. My guess is that one of your blocks has no data in it. Try deleting all the CyclopsBlocks in the scene and then create a new cube using the bottom panel. |
Yeah, I hear you. The cpp errors are not very helpful... Unfortunately, this issue is reproducible with a fresh project and a fresh CyclopsBlock. I'm able to reproduce this consistently by reverting the project back to its pre-Cyclops state, running through the setup steps again, and adding an initial CyclopsBlock. Even after adding additional blocks and using the Cyclops Editor to add additional block features, outside of the Cyclops editor, clicking doesn't work, and clicking-dragging crashes Godot. I've been able to reproduce the issue in the following scenarios:
It seems that Cyclops is taking over the built-in editor and conflicting with the click/visual-selection functionality. I pulled down the repo and will continue to investigate! ❤️ |
I'm not sure what to say since it works on my machine. Does the same thing happen in a blank project? Perhaps it's due to a name clash with something in another part of your project. |
Currently in the process of tracking it down. I've actually started knocking out a bunch of the cpp errors one by one! I've got Stand Up in a few minutes, so I can't give a full update, but I'll give a rundown of what I've done so far when I get the chance! I'll also push up the project I'm working in to hopefully make it easier to reproduce, but we'll see! 😅 In the meantime, here's a more refined set of reproduction steps:
Result: Godot crashes |
I just merged a branch I've been working on for a few months now. You might want to check out the latest dev version and see if it is causing the same issues. |
How are you selecting it? The CyclopsBlock should be unselectable by the regular Godot tool, and the Cyclops move tool will only be available if at least one CyclopsBlock is selected. |
Latest main branch is working much more smoothly! No more crashes, and Viewport visual selection of other objects works without crashing again. Though, the first Cyclops tool defaults to "on" by default and has to be manually deselected. But that's not a major gripe. As for the CPP errors, they seem to be more frequent with the version in the main branch. I'll continue tracking them down with the latest from the main branch and see if I can push up a PR that resolves them. 🎉 Most of them just have to do with attempting to iterate on or call methods for empty arrays or null values. Which, on its surface doesn't necessarily harm anything, but definitely adds to the instability I was facing. I noticed that as I started knocking those errors out, stability started to improve 👍
In the meantime, here's a more refined set of reproduction steps:
1. Open default scene in your project (without any Cyclops blocks)
2. Create a fresh new Cyclops Block
+ 3. Select it in the node list
4. Deselect it
5. Attempt to visual select anything in the standard Viewport
Result: Godot crashes
Yeah, that's kind of a bummer, but I imagine there's limitations! 😅 |
First time using Cyclops Level Builder. It's very intriguing! But it seems to get into a buggy state that results in a crash whenever I use it.
Problem
Cyclops Blocks are not selectable in the Viewport. Attempting to Visual Select the block crashes Godot completely.
Reproduction Steps
Result
Observations
I first noticed this when attempting to visually select something in the viewport. It seems that you can't visually select anything in the viewport anymore.
When I was playing around with this during reproduction, I noticed that simply trying to click on a Cyclops Block seemed to trigger the Visual Selection. It was subtle, since I wasn't clicking-dragging, but just tapping within the viewport seems to trigger Visual Selection, which is weird. Even when I wasn't in Cyclops mode, when I tapped in the viewport (without a Cyclops block selected), I noticed the yellow Cyclops dot briefly appear where I clicked. That might be a place to look!
I also noticed a number of errors in the logs that suggests there are some concerning errors being thrown in the GDScripts. None of these errors show in the version of the project right before adding Cyclops. 🤔
Screenshot
Logs
Expand below to see the Full Log
Expand to see the entire log (Lots of errors!)
The text was updated successfully, but these errors were encountered: