Linux build 117206

Changes in the Linux OpenGL code. Curious if this a) Fixes many of our problems, b) Fixes none of our problems or c) Fixes old problems, causes new problems.

Ah, the joy of game dev.

2 Likes

I’m still experiencing an immediate segfault.
I ran it through gdb and got the same thing as I reported before in here Open beta testing

Thread 1 "Delores" received signal SIGSEGV, Segmentation fault.
0x00007fffe4034291 in ?? () from /usr/lib/libEGL_mesa.so.0
(gdb) backtrace
#0  0x00007fffe4034291 in ?? () from /usr/lib/libEGL_mesa.so.0
#1  0x00007fffe401f86f in ?? () from /usr/lib/libEGL_mesa.so.0
#2  0x0000000000739e94 in ZLOpenGLRenderTargetCreateEGLSurface ()
#3  0x00000000004a31f6 in GGGraphicsRenderer::attachToWindow(SDL_Window*) ()
#4  0x00000000004a3299 in GGGraphicsRenderer::Init(SDL_Window*, int) ()
#5  0x00000000004a15c3 in GGGraphics::Initialize(char const*, int, SDL_Window*, int) ()
#6  0x000000000055a989 in GGSDLApp::createCanvas(GGPoint, GGPoint, GGPoint, unsigned int) ()
#7  0x000000000041bbbc in GameApp::initWithOptions(GGDictionary*) ()
#8  0x000000000055cc3d in GGSDLApp::initMain(int, char**) ()
#9  0x000000000040b6f7 in main ()

I decided to try running it on my laptop to see if it would give different results.

On my laptop with:
CPU: Intel Core i5-4210U
Graphics: Intel HD Graphics 4400

It popped up the window briefly when trying to run and then exited.
Running in a terminal gave this output:

[16:05:42] RELEASE
[16:05:42] RELEASE FINAL
[16:05:42] ZLRenderTarget: Failed to create frame buffer (error 0)
[16:05:42] ZLRenderTarget: Failed to create a complete framebuffer (status 0)
Using language file: Translations_en.tsv
Running boot.dinky...
[16:05:43] ZLRenderTarget: Failed to create frame buffer (error 0)
[16:05:43] ZLRenderTarget: Failed to create a complete framebuffer (status 0)
[16:05:43] ZLOpenGLShader: Failed to compile vertex shader

c)
ZLOpenGL error is gone.
FMOD error appeard: FMOD error! (51) Error initializing output device.

Tried with headphones, tried it with speakers. Same error.

Linux Mint 20 + NVIDIA 440.

There was an update that downloaded less than an hour ago so hopefully it’s the right build. Under the Local Files tab in the Properties menu it says “Current content BuildID: 5543249”.

Yep, that is the latest. So it looks like were still crashing in the driver… looking deeper.

@cambot, can you run glxinfo | grep "version" on your laptop?

I get pop-up saying:

Critical Error!

ZLOpenGLShader: Failed to compile vertex shader

when I try to launch the game from the Steam client.

The error seems to come from my system, since I get the same pop-up when running the game from the command line, and the following output to terminal:

[00:39:37] RELEASE
[00:39:37] RELEASE FINAL
Using language file: Translations_en.tsv
Running boot.dinky...
[00:39:37] ZLRenderTarget: Failed to create frame buffer (error 0)
[00:39:37] ZLRenderTarget: Failed to create a complete framebuffer (status 0)
[00:39:37] ZLOpenGLShader: Failed to compile vertex shader

This is on an Optimus laptop, however, and when I launch the game with the integrated graphics, it works just fine.

My specs are as follows:

Host:   pop-os
Kernel: Linux 5.4.0-7634-generic x86_64
Distro: Pop!_OS 20.04 LTS
CPU:    Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz
        12 cores/threads
        4100.00 MHz
RAM:    7.50 GiB
GPU:    GeForce GTX 1060/PCIe/SSE2
        OpenGL/core 4.6.0 NVIDIA 440.100
        GLSL/core 4.60 NVIDIA
        OpenGL 4.6.0 NVIDIA 440.100
        GLSL 4.60 NVIDIA
GPU:    Mesa Intel(R) UHD Graphics 630 (CFL GT2)
        OpenGL/core 4.6 (Core Profile) Mesa 20.0.8
        GLSL/core 4.60
        OpenGL 4.6 (Compatibility Profile) Mesa 20.0.8
        GLSL 4.60
Screen: 1920x1080
WM/DE:  pop:GNOME

Here is the output:

server glx version string: 1.4
client glx version string: 1.4
GLX version: 1.4
    Max core profile version: 4.5
    Max compat profile version: 3.0
    Max GLES1 profile version: 1.1
    Max GLES[23] profile version: 3.1
OpenGL core profile version string: 4.5 (Core Profile) Mesa 20.1.4
OpenGL core profile shading language version string: 4.50
OpenGL version string: 3.0 Mesa 20.1.4
OpenGL shading language version string: 1.30
OpenGL ES profile version string: OpenGL ES 3.1 Mesa 20.1.4
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.10
    GL_EXT_shader_implicit_conversions, GL_EXT_shader_integer_mix,

@RonGilbert Suggestion:

while in beta, could you log errors/warnings to a file?
or perhaps adding instructions how to run the game from command line?

For example, if I run it from Steam, I get the FMOD error. But if I run it from command line I get the ZLOpenGL error… I guess I should run it from Steam, but then I don’t know how to get the logs.

Try setting disableAudio: 1 in the Prefs file and see if the FMOD error goes away (it will) and if game runs or continues to crash.

The Prefs and log files can be found in .local/share/Terrible Toybox

We require GLSL 1.5, which is why @cambot’s error is happening.

We’re looking at dropping min OpenGL to 1.3

So my laptop is a no go then. I’ll stick to trying only on my Ryzen 2600 + Radeon Vega 56 desktop from now.

Thanks. Now that I disabled Audio I started to see the GL error again. Cannot launch.

[09/14/20 17:03:17] ZLOpenGLGraphicsDevice: EGL Version 1.5
[09/14/20 17:03:17] GGGraphics: Selecting (OpenGL) Renderer 
[09/14/20 17:03:17] ZLOpenGLRenderer: Failed to create an EGL context. (error 0x3006)
[09/14/20 17:03:17] Version 1.2 build 117206 (Linux)
[09/14/20 17:03:17] ZLOpenGLShader: Failed to compile vertex shader

Can you try this with the latest build and post in Linux build 118207