Skip to content
This repository has been archived by the owner on Feb 13, 2024. It is now read-only.

Genshin Impact only shows black screen #1624

Open
Zistack opened this issue Sep 30, 2020 · 7 comments
Open

Genshin Impact only shows black screen #1624

Zistack opened this issue Sep 30, 2020 · 7 comments
Labels

Comments

@Zistack
Copy link

Zistack commented Sep 30, 2020

  1. Please check that no similar bug is already reported. Have a look on the list of open bugs at https://github.com/anbox/anbox/issues

Well, this issue seems similar in terms of the outwardly observable behavior, but the errors in the logs look quite a bit different from what I'm seeing, which is why I decided to create a new issue.

  1. Make sure you are running the latest version of Anbox before reporting an issue. Update snap to latest: snap refresh --devmode --edge anbox

I'm running this on Arch Linux, so I'm installing it from the anbox-git AUR package.

  1. Make sure you have debug logs enabled:
    sudo snap set anbox debug.enable=true

I just saved the logs from adb logcat to a file. Seems to contain the same information. Not sure how you would do this from a git installation.

  1. Reproduce the error while debug logs enabled.
  2. Run the anbox logs collection utility and attach the tar file.
    sudo /snap/bin/anbox.collect-bug-info

The file I saved off of adb logcat: genshin.log

  1. ** Please paste the result of anbox system-info below:**
anbox system-info output
version: local-170f1e0
cpu:
  arch:  x86
  brand: AMD Ryzen Threadripper 1950X 16-Core Processor 
  features: 
    - aes
    - sse4_1
    - sse4_2
    - avx
    - avx2
os:
  name: Arch Linux
  version: 
  snap-based: false
kernel:
  version: Linux version 5.8.12-arch1-1-anbox (linux-anbox@archlinux) (gcc (GCC) 10.2.0, GNU ld (GNU Binutils) 2.35) #1 SMP PREEMPT Tue, 29 Sep 2020 16:35:42 +0000
  binder: false
  ashmem: true
graphics:
  egl:
    vendor: Mesa Project
    version: 1.5
    extensions:
      - EGL_ANDROID_blob_cache
      - EGL_ANDROID_native_fence_sync
      - EGL_CHROMIUM_sync_control
      - EGL_EXT_buffer_age
      - EGL_EXT_create_context_robustness
      - EGL_EXT_image_dma_buf_import
      - EGL_EXT_image_dma_buf_import_modifiers
      - EGL_KHR_cl_event2
      - EGL_KHR_config_attribs
      - EGL_KHR_create_context
      - EGL_KHR_create_context_no_error
      - EGL_KHR_fence_sync
      - EGL_KHR_get_all_proc_addresses
      - EGL_KHR_gl_colorspace
      - EGL_KHR_gl_renderbuffer_image
      - EGL_KHR_gl_texture_2D_image
      - EGL_KHR_gl_texture_3D_image
      - EGL_KHR_gl_texture_cubemap_image
      - EGL_KHR_image
      - EGL_KHR_image_base
      - EGL_KHR_image_pixmap
      - EGL_KHR_no_config_context
      - EGL_KHR_reusable_sync
      - EGL_KHR_surfaceless_context
      - EGL_EXT_pixel_format_float
      - EGL_KHR_wait_sync
      - EGL_MESA_configless_context
      - EGL_MESA_drm_image
      - EGL_MESA_image_dma_buf_export
      - EGL_MESA_query_driver
      - EGL_NOK_texture_from_pixmap
      - EGL_WL_bind_wayland_display
  gles2:
    vendor: X.Org
    vendor: OpenGL ES 3.2 Mesa 20.1.8
    extensions:
      - GL_EXT_blend_minmax
      - GL_EXT_multi_draw_arrays
      - GL_EXT_texture_filter_anisotropic
      - GL_EXT_texture_compression_s3tc
      - GL_EXT_texture_compression_dxt1
      - GL_EXT_texture_compression_rgtc
      - GL_EXT_texture_format_BGRA8888
      - GL_OES_compressed_ETC1_RGB8_texture
      - GL_OES_depth24
      - GL_OES_element_index_uint
      - GL_OES_fbo_render_mipmap
      - GL_OES_mapbuffer
      - GL_OES_rgb8_rgba8
      - GL_OES_standard_derivatives
      - GL_OES_stencil8
      - GL_OES_texture_3D
      - GL_OES_texture_float
      - GL_OES_texture_float_linear
      - GL_OES_texture_half_float
      - GL_OES_texture_half_float_linear
      - GL_OES_texture_npot
      - GL_OES_vertex_half_float
      - GL_EXT_draw_instanced
      - GL_EXT_texture_sRGB_decode
      - GL_OES_EGL_image
      - GL_OES_depth_texture
      - GL_AMD_performance_monitor
      - GL_OES_packed_depth_stencil
      - GL_EXT_texture_type_2_10_10_10_REV
      - GL_NV_conditional_render
      - GL_OES_get_program_binary
      - GL_APPLE_texture_max_level
      - GL_EXT_discard_framebuffer
      - GL_EXT_read_format_bgra
      - GL_EXT_frag_depth
      - GL_NV_fbo_color_attachments
      - GL_OES_EGL_image_external
      - GL_OES_EGL_sync
      - GL_OES_vertex_array_object
      - GL_OES_viewport_array
      - GL_ANGLE_texture_compression_dxt3
      - GL_ANGLE_texture_compression_dxt5
      - GL_EXT_occlusion_query_boolean
      - GL_EXT_robustness
      - GL_EXT_texture_rg
      - GL_EXT_unpack_subimage
      - GL_NV_draw_buffers
      - GL_NV_read_buffer
      - GL_NV_read_depth
      - GL_NV_read_depth_stencil
      - GL_NV_read_stencil
      - GL_EXT_draw_buffers
      - GL_EXT_map_buffer_range
      - GL_KHR_debug
      - GL_KHR_robustness
      - GL_KHR_texture_compression_astc_ldr
      - GL_NV_pixel_buffer_object
      - GL_OES_depth_texture_cube_map
      - GL_OES_required_internalformat
      - GL_OES_surfaceless_context
      - GL_EXT_color_buffer_float
      - GL_EXT_sRGB_write_control
      - GL_EXT_separate_shader_objects
      - GL_EXT_shader_implicit_conversions
      - GL_EXT_shader_integer_mix
      - GL_EXT_tessellation_point_size
      - GL_EXT_tessellation_shader
      - GL_ANDROID_extension_pack_es31a
      - GL_EXT_base_instance
      - GL_EXT_compressed_ETC1_RGB8_sub_texture
      - GL_EXT_copy_image
      - GL_EXT_draw_buffers_indexed
      - GL_EXT_draw_elements_base_vertex
      - GL_EXT_gpu_shader5
      - GL_EXT_polygon_offset_clamp
      - GL_EXT_primitive_bounding_box
      - GL_EXT_render_snorm
      - GL_EXT_shader_io_blocks
      - GL_EXT_texture_border_clamp
      - GL_EXT_texture_buffer
      - GL_EXT_texture_cube_map_array
      - GL_EXT_texture_norm16
      - GL_EXT_texture_view
      - GL_KHR_blend_equation_advanced
      - GL_KHR_context_flush_control
      - GL_KHR_robust_buffer_access_behavior
      - GL_NV_image_formats
      - GL_OES_copy_image
      - GL_OES_draw_buffers_indexed
      - GL_OES_draw_elements_base_vertex
      - GL_OES_gpu_shader5
      - GL_OES_primitive_bounding_box
      - GL_OES_sample_shading
      - GL_OES_sample_variables
      - GL_OES_shader_io_blocks
      - GL_OES_shader_multisample_interpolation
      - GL_OES_tessellation_point_size
      - GL_OES_tessellation_shader
      - GL_OES_texture_border_clamp
      - GL_OES_texture_buffer
      - GL_OES_texture_cube_map_array
      - GL_OES_texture_stencil8
      - GL_OES_texture_storage_multisample_2d_array
      - GL_OES_texture_view
      - GL_EXT_blend_func_extended
      - GL_EXT_buffer_storage
      - GL_EXT_float_blend
      - GL_EXT_geometry_point_size
      - GL_EXT_geometry_shader
      - GL_EXT_shader_samples_identical
      - GL_KHR_no_error
      - GL_KHR_texture_compression_astc_sliced_3d
      - GL_OES_EGL_image_external_essl3
      - GL_OES_geometry_point_size
      - GL_OES_geometry_shader
      - GL_OES_shader_image_atomic
      - GL_EXT_clip_cull_distance
      - GL_EXT_disjoint_timer_query
      - GL_EXT_texture_compression_s3tc_srgb
      - GL_EXT_window_rectangles
      - GL_MESA_shader_integer_functions
      - GL_EXT_clip_control
      - GL_EXT_memory_object
      - GL_EXT_memory_object_fd
      - GL_EXT_semaphore
      - GL_EXT_semaphore_fd
      - GL_EXT_texture_compression_bptc
      - GL_KHR_parallel_shader_compile
      - GL_NV_alpha_to_coverage_dither_control
      - GL_AMD_framebuffer_multisample_advanced
      - GL_EXT_EGL_image_storage
      - GL_EXT_texture_sRGB_R8
      - GL_EXT_texture_shadow_lod
      - GL_MESA_framebuffer_flip_y
      - GL_EXT_depth_clamp
      - GL_EXT_texture_query_lod

Please describe your problem:

So, I'm trying to run this game, Genshin Impact (package name: com.miHoYo.GenshinImpact). I'm doing this by launching the session manager in single-window mode (this probably isn't necessary, but results in the most observable and controllable behavior), and then trying to launch the game from there. It goes to a black screen, occasionally makes some 'click'-like noises, but otherwise is completely broken.

What were you expecting?:

Ideally, the game would run without issue.

Additional info:

The game requires the arm64-v8a abi, and I'm pretty sure it requires Google Play Services. I'm using an image with houdini, OpenGApps, and SuperSU (just 'cause) (specifically, the one provided by the anbox-image-gapps-rooted AUR package). It's a 64-bit application. It appears to be a Unity game, for what it is worth.

I'm running a custom kernel compiled according to the instructions here for kernels version 5.7 and newer. Not sure why anbox system-info says binder: false, because /dev/binderfs/ is properly mounted and ready to go.

$ uname -a
Linux solarflare 5.8.12-arch1-1-anbox #1 SMP PREEMPT Tue, 29 Sep 2020 16:35:42 +0000 x86_64 GNU/Linux

I know my installation is also a bit different from what is typically prescribed. I'm not sure how to do it properly, what with the kernel rebuild and all being necessary for my kernel version. If it would help for me to install anbox in a different way, let me know.

If there's any other information that I can extract, I would be happy to do so. I'd try to debug it myself if I knew how to interpret the log messages.

Thanks,
Zistack

@rodrigosggouvea
Copy link

Among Us have the same issue

@Bright-Shard
Copy link

I do think this is a different issue. The solution for the linked issue is single-window mode, but that didn't fix it for me. It might also just be an Arch issue; I'm assuming Zistack is on Arch because the guide they followed is on the Arch Wiki, and I'm on Manjaro.

I've tested Among Us and Block Fortress: Empires. Launching Roblox crashed Anbox altogether. Still, other apps like Discord and Fastmail launch just fine...
Any idea what the problem might be?

@Irgendwer01
Copy link

Irgendwer01 commented Dec 13, 2020

@Bright-Shard i think it's an issue with Unity Apps
can u try reproduce it with other Unity Apps?

@Bright-Shard
Copy link

I don't know of many Unity apps... if you have some for me to try let me know.
I do think it's an issue with Unity. I successfully reproduced the problem on Parrot Security, a Debian-based distro, so it's not just an Arch issue. The only other difference I can think of is I used geeks-r-us' Play Store installer, but I don't see how that could break games.

@vivekTheUnknown
Copy link

I also have the same issue, game either get a black screen or fail to go past the splash screen, although app work just fine. I have in installed this on Arch Linux using Anbox-git & Anbox-image-gapps.

@cmumme
Copy link

cmumme commented May 13, 2021

i think it's an issue with Unity Apps

Roblox was not made with Unity.

@stale
Copy link

stale bot commented Apr 27, 2022

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the decaying label Apr 27, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests

6 participants