Uriopass / Egregoria

3D City Builder without a grid
http://douady.paris/blog/
GNU General Public License v3.0
1.52k stars 52 forks source link

Panics immediately #73

Open supertsy5 opened 1 year ago

supertsy5 commented 1 year ago

I am using Ubuntu 22.04 LTS

[      278 INFO  window      ] Guessed window scale factor: 1
[  1083478 INFO  egl         ] Loading Wayland library to get the current display                
[  1083596 INFO  egl         ] Loading X11 library to get the current display           
[  1084198 INFO  egl         ] Using X11 platform
[  1092966 INFO  egl         ] Display vendor "NVIDIA", version (1, 4)
[  1093010 INFO  egl         ]  EGL surface: +srgb khr
[  1093019 INFO  egl         ]  Trying native-render                                                      
[  1093038 WARN  /home/x7f178735/.cargo/registry/src/github.com-1ecc6299db9ec823/wgpu-hal-0.14.0/src/gles/egl.rs:221] No config found!
[  1093047 INFO  egl         ]  Trying presentation
[  1093068 WARN  /home/x7f178735/.cargo/registry/src/github.com-1ecc6299db9ec823/wgpu-hal-0.14.0/src/gles/egl.rs:210] EGL says it can present to the window but not natively
[  1093079 INFO  egl         ]  EGL context: +robust access EXT
[  1098692 INFO  egl         ]  EGL context: +surfaceless                                          
[  1266607 INFO  adapter     ] Vendor: NVIDIA Corporation
[  1266653 INFO  adapter     ] Renderer: GeForce GT 630/PCIe/SSE2                              
[  1266661 INFO  adapter     ] Version: OpenGL ES 3.2 NVIDIA 390.157
[  1266678 INFO  adapter     ] SL version: OpenGL ES GLSL ES 3.20                           
thread 'main' panicked at 'failed to find a suitable adapter, have you installed necessary vulkan libraries?': /home/x7f178735/github/Egregoria/wgpu_engine/src/gfx.rs:176
   0: <backtrace::capture::Backtrace as core::default::Default>::default                           
   1: log_panics::Config::install_panic_hook::{{closure}}
   2: std::panicking::rust_panic_with_hook                                                                
             at /rustc/897e37553bba8b42751c67658967889d11ecd120/library/std/src/panicking.rs:702:17
   3: std::panicking::begin_panic_handler::{{closure}}                                         
             at /rustc/897e37553bba8b42751c67658967889d11ecd120/library/std/src/panicking.rs:588:13
   4: std::sys_common::backtrace::__rust_end_short_backtrace                                
             at /rustc/897e37553bba8b42751c67658967889d11ecd120/library/std/src/sys_common/backtrace.rs:138:18
   5: rust_begin_unwind     
             at /rustc/897e37553bba8b42751c67658967889d11ecd120/library/std/src/panicking.rs:584:5
   6: core::panicking::panic_fmt
             at /rustc/897e37553bba8b42751c67658967889d11ecd120/library/core/src/panicking.rs:142:14
   7: core::panicking::panic_display
             at /rustc/897e37553bba8b42751c67658967889d11ecd120/library/core/src/panicking.rs:72:5
   8: core::panicking::panic_str
             at /rustc/897e37553bba8b42751c67658967889d11ecd120/library/core/src/panicking.rs:56:5
   9: core::option::expect_failed
             at /rustc/897e37553bba8b42751c67658967889d11ecd120/library/core/src/option.rs:1880:5
  10: <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll
  11: native_app::main
  12: std::sys_common::backtrace::__rust_begin_short_backtrace
  13: std::rt::lang_start::{{closure}}
  14: core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once
             at /rustc/897e37553bba8b42751c67658967889d11ecd120/library/core/src/ops/function.rs:283:13
      std::panicking::try::do_call
             at /rustc/897e37553bba8b42751c67658967889d11ecd120/library/std/src/panicking.rs:492:40
      std::panicking::try
             at /rustc/897e37553bba8b42751c67658967889d11ecd120/library/std/src/panicking.rs:456:19
      std::panic::catch_unwind
             at /rustc/897e37553bba8b42751c67658967889d11ecd120/library/std/src/panic.rs:137:14
      std::rt::lang_start_internal::{{closure}}
             at /rustc/897e37553bba8b42751c67658967889d11ecd120/library/std/src/rt.rs:148:48
      std::panicking::try::do_call
             at /rustc/897e37553bba8b42751c67658967889d11ecd120/library/std/src/panicking.rs:492:40
      std::panicking::try
             at /rustc/897e37553bba8b42751c67658967889d11ecd120/library/std/src/panicking.rs:456:19
      std::panic::catch_unwind
             at /rustc/897e37553bba8b42751c67658967889d11ecd120/library/std/src/panic.rs:137:14
      std::rt::lang_start_internal
             at /rustc/897e37553bba8b42751c67658967889d11ecd120/library/std/src/rt.rs:148:20
  15: main
  16: __libc_start_call_main
             at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16
  17: __libc_start_main_impl
             at ./csu/../csu/libc-start.c:392:3
  18: _start
Uriopass commented 1 year ago

You have a very old gpu. OpenGL 3.2 got out quite a long time ago and I'm not sure it can run Egregoria as I do not have the ressources to support very old versions. If you can try to get vulkan running it could work but I'm not sure you can.

Uriopass commented 1 year ago

In theory your card should support OpenGL 4.2 at least, maybe try updating your drivers ?

supertsy5 commented 1 year ago

I do know that my GPU is old, and I'm gonna switch to an AMD GPU later. I am happy to quote Linus Torvalds here:

I know exactly what you're talking about, and I am very happy to say that it's the exception rather than the rule. And I'm also happy to very publicly point out that that NVIDIA has been one of worst trouble spot we've had with hardware manufacturers and that is sad because NVIDIA tries to sell chips, a lot of chips into the Android market and NVIDIA has been the single worst company we've ever dealt with. So NVIDIA: fsck you! -- Linus Torvalds

supertsy5 commented 1 year ago

Whatever, thank you for such a fast reply.

supertsy5 commented 1 year ago

BTW: My GPU supports OpenGL 4.6. But the log says "OpenGL ES 3.2". Is there a way to switch to OpenGL from OpenGL ES?

Uriopass commented 1 year ago

Indeed theses are not the same. OpenGL ES 3.2 is actually from 2015 (and is the most up to date version). I will take a look and maybe force opengl on my computer when I have time. I'll keep this open in the meantime.

Uriopass commented 1 year ago

Doesn't work on my PC with a recent GPU using the opengl backend. I think we are hitting https://github.com/gfx-rs/wgpu/issues/2518 there are already plenty of issues reported upstream about this. Let's hope the wgpu team comes up with a fix.