Skip to content
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

[Godot4 beta 11] WorldEnvironment Background Mode as Canvas freezes editor. #72236

Open
vxSpctr opened this issue Jan 28, 2023 · 4 comments
Open

Comments

@vxSpctr
Copy link

vxSpctr commented Jan 28, 2023

Godot version

v4.0.beta11.official

System information

macOS 12.6.1, Forward+ (Vulkan?), Intel Iris Graphics 550 1536 MB

Issue description

Editor becomes unusable when WorldEnvironment Background Mode is set as Canvas (freezes editor).

Can still reproduce at v4.0.beta16.official [518b9e5]

Coming from [68805] as suggested by @clayjohn

For me it only happens at the Forward+ Renderer. Mobile and Compatibility are working as expected. The workaround suggested (background_canvas_max_layer = 1) does not fix the behavior on my end.

Steps to reproduce

  1. Create 3D environment.
  2. Add CanvasLayer
  3. Inherit Sprite 2D
  4. Add WorldEnvironment
  5. Create Environment and set Background mode as Canvas
  6. Editor becomes unusable.

Minimal reproduction project

CanvasBackgroundBug.zip

@clayjohn
Copy link
Member

I cannot reproduce this bug on Beta 16 running on macOS 12.6.1 intel iris 6100 graphics. Nor can I reproduce on my PopOS 22.04 device (intel Xe graphics).

I tried to repro with the attached MRP and a clean project.

@vxSpctr
Copy link
Author

vxSpctr commented Jan 29, 2023

Here is a video of the behavior with the sample project (where you only have to set the environment background mode to Canvas)

I'm sorry for the small text.

https://gfycat.com/bewitchedsnappycleanerwrasse

@clayjohn
Copy link
Member

@vxSpctr If you run the engine from the command line, do you get an errors printed out when it freezes like that?

@vxSpctr
Copy link
Author

vxSpctr commented Jan 30, 2023

@clayjohn this is the error that pops up while swapping to Canvas in the Background of the Environment, I attach the full text output as a .txt, the error shows at line 202.

[mvk-info] Created 3 swapchain images with initial size (106, 128) and contents scale 2.0 for screen Built-in Retina Display.
[mvk-error] VK_ERROR_DEVICE_LOST: MTLCommandBuffer "vkQueueSubmit CommandBuffer on Queue 0-0" execution failed (code 2): Caused GPU Timeout Error (00000002:kIOAccelCommandBufferCallbackErrorTimeout)

commandline.txt

EDIT: After googling the error and further testing, I can confirm it is a performance issue on my Mac.

Eliminating random processes from the services running in the background allowed my GPU to properly finish whatever Godot was attempting to do when setting the background as Canvas. Looks like I either clean up demanding services when I'm working on my project or upgrade to an M1 at this point. Not quite sure if there is anything you can do at Godot's end as I'm confirming it is a performance issue caused by my low/old specs.

@clayjohn clayjohn modified the milestones: 4.0, 4.x Feb 23, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants