ebitengine / purego

Apache License 2.0
2.15k stars 68 forks source link

Crash with Ebitengine on macOS #217

Closed hajimehoshi closed 7 months ago

hajimehoshi commented 7 months ago

Run this on macOS

# This uses PureGo v0.7.0-alpha.1.0.20240227034414-9ef47a2286c0
go run github.com/hajimehoshi/ebiten/v2/examples/blocks@200c6569c30e41c867e6786f8c01f8465431ebcc

and the app crashes like this:

2024/03/01 01:22:37 opengl: vertex shader compile error: opengl: glCreateShader failed: shader type: 35633, source:
#version 150

int modInt(int x, int y) {
        return x - y*(x/y);
}

ivec2 modInt(ivec2 x, int y) {
        return x - y*(x/y);
}

ivec3 modInt(ivec3 x, int y) {
        return x - y*(x/y);
}

ivec4 modInt(ivec4 x, int y) {
        return x - y*(x/y);
}

ivec2 modInt(ivec2 x, ivec2 y) {
        return x - y*(x/y);
}

ivec3 modInt(ivec3 x, ivec3 y) {
        return x - y*(x/y);
}

ivec4 modInt(ivec4 x, ivec4 y) {
        return x - y*(x/y);
}

uniform vec2 U0;
uniform vec2 U1[4];
uniform vec2 U2;
uniform vec2 U3;
uniform vec2 U4[4];
uniform vec2 U5[4];
uniform mat4 U6;
uniform sampler2D T0;
uniform sampler2D T1;
uniform sampler2D T2;
uniform sampler2D T3;
in vec2 A0;
in vec2 A1;
in vec4 A2;
out vec2 V0;
out vec4 V1;

float touchUniforms() {
        return float(U1[3].x) + float(U4[3].x) + float(U5[3].x);
}

void main(void) {
        touchUniforms();
        gl_Position = (U6) * (vec4(A0, 0.0, 1.0));
        V0 = A1;
        V1 = A2;
        return;
}
exit status 1

My machine is:

                    'c.          hajimehoshi@Hajimes-MacBook-Pro.local 
                 ,xNMM.          ------------------------------------- 
               .OMMMMo           OS: macOS 14.2.1 23C71 arm64 
               OMMM0,            Host: Mac15,6 
     .;loddo:' loolloddol;.      Kernel: 23.2.0 
   cKMMMMMMMMMMNWMMMMMMMMMM0:    Uptime: 41 days, 3 mins 
 .KMMMMMMMMMMMMMMMMMMMMMMMWd.    Packages: 77 (brew) 
 XMMMMMMMMMMMMMMMMMMMMMMMX.      Shell: zsh 5.9 
;MMMMMMMMMMMMMMMMMMMMMMMM:       Resolution: 1800x1169 
:MMMMMMMMMMMMMMMMMMMMMMMM:       DE: Aqua 
.MMMMMMMMMMMMMMMMMMMMMMMMX.      WM: Quartz Compositor 
 kMMMMMMMMMMMMMMMMMMMMMMMMWd.    WM Theme: Blue (Light) 
 .XMMMMMMMMMMMMMMMMMMMMMMMMMMk   Terminal: tmux 
  .XMMMMMMMMMMMMMMMMMMMMMMMMK.   CPU: Apple M3 Pro 
    kMMMMMMMMMMMMMMMMMMMMMMd     GPU: Apple M3 Pro 
     ;KMMMMMMMWXXWMMMMMMMk.      Memory: 3513MiB / 18432MiB 
       .cooc,.    .,coo:.