Scirra / Construct-bugs

Public bug report submissions for Construct 3 and Construct Animate. Please read the guidelines then click the 'Issues' tab to get started.
https://www.construct.net
108 stars 83 forks source link

GL_OUT_OF_MEMORY & GL_INVALID_OPERATION on Chromebook #5091

Closed FromChris-com closed 3 years ago

FromChris-com commented 3 years ago

Problem description

Any C3 runtime game, whether via Preview inside the editor or uploaded to a website will crash the chromebook's chrome browser/webgl making the screen go black and producing the attached console errors. Even an entirely empty game, freshly created and upon hitting preview it will crash. See screenshots attached.

I understand this would probably fall under the crbug.com but, this is only happening with Construct 3 made games. This does not happen with C2 made games, or any other html5 game I'v been able to test on the web. (tested - html5games.com, itch, crazygames). Also the webgl seems to be running fine via testing website, for example the chromebook could handle 60fps with 1000 fish at https://webglsamples.org/aquarium/aquarium.html

Attach a .c3p

Any C3 game, project, or preview - including completely new & empty.

Steps to reproduce

  1. Run any C3 game
  2. Crashes to black screen/window & Errors in console

Observed result

Black screen - multiple errors in console: GL_OUT_OF_MEMORY: glFramebufferTexture2D GL_INVALID_OPERATION : glFramebufferTexture2D GL_INVALID_OPERATION : glCopySubTextureCHROMIUM CONTEXT_LOSTWEBGL loseContext: context lost

Expected result

Expected the game to run.

More details

Affected browsers/platforms: Chrome on Chromebook: version 93.0.4577.95 (Official Build)(32-bit) , also tried the Beta and Dev, after a Powerwash - but the problem persisted.

First affected release: tested on R260, R265.2, & R182

System details

View details

Graphics Feature Status

  • Canvas: Hardware accelerated
  • Compositing: Hardware accelerated
  • Multiple Raster Threads: Force enabled
  • Out-of-process Rasterization: Hardware accelerated
  • OpenGL: Enabled
  • Rasterization: Hardware accelerated
  • Skia Renderer: Disabled
  • Video Decode: Hardware accelerated
  • Vulkan: Disabled
  • WebGL: Hardware accelerated
  • WebGL2: Hardware accelerated

Driver Bug Workarounds

  • clear_uniforms_before_first_program_use
  • disable_discard_framebuffer
  • disable_program_caching_for_transform_feedback
  • enable_webgl_timer_query_extensions
  • exit_on_context_lost
  • use_virtualized_gl_contexts
  • disabled_extension_GL_KHR_blend_equation_advanced
  • disabled_extension_GL_KHR_blend_equation_advanced_coherent

Problems Detected

Version Information

Data exported | 2021-09-30T07:31:18.958Z -- | -- Chrome version | Chrome/93.0.4577.95 Operating system | Linux 14092.66.0 Software rendering list URL | https://chromium.googlesource.com/chromium/src/+/8d6327a30ce92ec1b02a5974db563d4265887437/gpu/config/software_rendering_list.json Driver bug list URL | https://chromium.googlesource.com/chromium/src/+/8d6327a30ce92ec1b02a5974db563d4265887437/gpu/config/gpu_driver_bug_list.json ANGLE commit id | aed9405c250d 2D graphics backend | Skia/93 f0a1e4da79c7ffbb06f547b9e0070cf05ddf7122 Command Line | /opt/google/chrome/chrome --use-gl=egl --enable-native-gpu-memory-buffers --platform-disallows-chromeos-direct-video-decoder --enable-webgl-image-chromium --enable-features=Pepper3DImageChromium,UmaStorageDimensions,ArcAdbSideloading,Crostini,SmartDim --num-raster-threads=2 --gpu-sandbox-failures-fatal=yes --gpu-sandbox-start-early --video-capture-use-gpu-memory-buffer --enable-logging --log-level=1 --use-cras --enable-wayland-server --user-data-dir=/home/chronos --device-help-content-id=fennel14 --login-profile=user --has-chromeos-keyboard --enable-touchview --form-factor=CHROMEBOOK --guest-wallpaper-large=/usr/share/chromeos-assets/wallpaper/guest_large.jpg --guest-wallpaper-small=/usr/share/chromeos-assets/wallpaper/guest_small.jpg --child-wallpaper-large=/usr/share/chromeos-assets/wallpaper/child_large.jpg --child-wallpaper-small=/usr/share/chromeos-assets/wallpaper/child_small.jpg --default-wallpaper-large=/usr/share/chromeos-assets/wallpaper/default_large.jpg --default-wallpaper-small=/usr/share/chromeos-assets/wallpaper/default_small.jpg --has-internal-stylus --ozone-nnpalm-properties={} --arc-availability=officially-supported --enterprise-enrollment-initial-modulus=15 --enterprise-enrollment-modulus-limit=19 --enable-crashpad --login-manager --first-exec-after-boot --vmodule=*arc/*=1,*night_light*=1,*/ash/wm/tablet_mode/*=1,wizard_controller=1,*/webui/chromeos/login/*=1,*/browser/ash/login/screens/*=1,enrollment_screen_handler=1,*/browser/ash/login/enrollment/*=1,*/ui/ozone/*=1,*/ui/display/manager/chromeos/*=1 --enable-features=Pepper3DImageChromium,UmaStorageDimensions,ArcAdbSideloading,Crostini,SmartDim --flag-switches-begin --flag-switches-end --ui-compositor-memory-limit-when-visible-mb=512 --silent-launch

Log Messages

  • 2021-09-30T07:17:59.889177Z ERROR chrome[10885:10885]: [gles2_cmd_decoder.cc(8651)] : [.DisplayCompositor]GL ERROR :GL_INVALID_OPERATION : glFramebufferTexture2D: <- error from previous GL command
  • 2021-09-30T07:17:59.903871Z ERROR chrome[10885:10885]: [gles2_cmd_decoder.cc(8651)] : [.DisplayCompositor]GL ERROR :GL_INVALID_OPERATION : glFramebufferTexture2D: <- error from previous GL command
  • 2021-09-30T07:17:59.918948Z ERROR chrome[10885:10885]: [gles2_cmd_decoder.cc(8651)] : [.WebGL-0x5673cc00]GL ERROR :GL_INVALID_OPERATION : glFramebufferTexture2D: <- error from previous GL command
  • 2021-09-30T07:17:59.922569Z ERROR chrome[10885:10885]: [gles2_cmd_decoder.cc(8651)] : [.DisplayCompositor]GL ERROR :GL_INVALID_OPERATION : glFramebufferTexture2D: <- error from previous GL command
  • 2021-09-30T07:17:59.936411Z ERROR chrome[10885:10885]: [gles2_cmd_decoder.cc(8651)] : [.WebGL-0x5673cc00]GL ERROR :GL_INVALID_OPERATION : glFramebufferTexture2D: <- error from previous GL command
  • 2021-09-30T07:17:59.953170Z ERROR chrome[10885:10885]: [gles2_cmd_decoder.cc(8651)] : [.DisplayCompositor]GL ERROR :GL_INVALID_OPERATION : glFramebufferTexture2D: <- error from previous GL command
  • 2021-09-30T07:17:59.957498Z ERROR chrome[10885:10885]: [gles2_cmd_decoder.cc(8651)] : [.WebGL-0x5673cc00]GL ERROR :GL_INVALID_OPERATION : glFramebufferTexture2D: <- error from previous GL command
  • 2021-09-30T07:17:59.957860Z ERROR chrome[10885:10885]: [gles2_cmd_decoder.cc(8651)] : [.DisplayCompositor]GL ERROR :GL_INVALID_OPERATION : glFramebufferTexture2D: <- error from previous GL command
  • 2021-09-30T07:17:59.969027Z ERROR chrome[10885:10885]: [gles2_cmd_decoder.cc(8651)] : [.WebGL-0x5673cc00]GL ERROR :GL_INVALID_OPERATION : glFramebufferTexture2D: <- error from previous GL command
  • 2021-09-30T07:17:59.969808Z ERROR chrome[10885:10885]: [gles2_cmd_decoder.cc(8651)] : [.DisplayCompositor]GL ERROR :GL_INVALID_OPERATION : glFramebufferTexture2D: <- error from previous GL command
  • 2021-09-30T07:17:59.985252Z ERROR chrome[10885:10885]: [gles2_cmd_decoder.cc(8651)] : [.WebGL-0x5673cc00]GL ERROR :GL_INVALID_OPERATION : glFramebufferTexture2D: <- error from previous GL command
FromChris-com commented 3 years ago

Doesn't look like the original post is showing my screenshots! Here's the attachment. (Also, I'm not sure if this is relevant or not - but I've found a little workaround, installing and using the Beta Chrome through the Google Play store on the Chromebook. This seperate mobile v. Chrome will run C3 games fine.)

CrashReport_1

CrashReport_2

emptyGame_console

RandomGame_scirraArcade

webgl_check_1

webgl_check_2

AshleyScirra commented 3 years ago

This looks very likely to be a graphics driver problem on the device. It is reporting an error with OpenGL commands carried out by the driver.

I'm afraid this appears to be out of our hands so your best bet is to file it with Google at crbug.com.