Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

Trying to run the game by ./icyd, I get the following error:

Error compiling vertex shader: shader
#version 330 core
layout (location = 0) in vec3 aPos;
layout (location = 1) in vec2 aTex;
uniform float frame; uniform float angle; 
out vec2 oTex;
out float depth;
uniform mat4 transform;
void main() {
gl_Position=transform*vec4(aPos,1.0f);
oTex=aTex;
depth=aPos.y;
}

This is with OpenGL 4.6.0. Running on Linux Mint 21.1. I could be missing dependencies? I don't have flecs installed.

> glxinfo | grep "OpenGL version"
OpenGL version string: 4.6.0 NVIDIA 530.41.03

Sorry for the trouble.

(1 edit) (+1)

No trouble at all, I'd love to be able to help you get it working! It seems GLSL compilation isn't working, and my first thought is to wonder whether it's the driver: I've only tested with Mesa on ATI cards, so if there is an NVIDIA compatibility issue, I won't have caught it yet. If it's not a huge hassle, you could try swapping to Mesa and seeing if that helps. I'll also tinker around and let you know if I find anything.

(+1)

This is a stretch, but I compiled a version of the executable that skips the error checking, just in case it's the error-check itself that's causing the error... you never know. If you'd like to try it out, just replace the old 'icyd' with the one at the link here.

https://diablerie.itch.io/extra-files/download/psnrbYSFnijrEtE2_Iuc2Pb3fdar_Woqe...

Maybe this new error message tells you something?

./icyd: symbol lookup error: ./icyd: undefined symbol: SDL_HasIntersectionF
(+1)

That error potentially suggests your SDL version is less than 2.0.10 - or that my program isn't finding the correct version of SDL2 on your system. Either way it's a helpful lead! It might be worth updating SDL2, and probably SDL2_image and SDL2_mixer, if you do have a lower version and this applies.

Exciting! My libsdl2-dev is at version 2.0.20, which is the latest version provided by my distro. The mixed and image packages are also the latest versions provided by the distro.

(+1)

HasIntersectionF is only in SDL2 2.0.22, so this would definitely contribute to the game not working! To save you the hassle of upgrading ahead of your distro, I think I can quickly rework the hitbox code to use the older, more compatible SDL2 variant - I'll post soon and let you know how I went. Thanks for being so patient!

(+1)

Here is a version of 'icyd' without the use of SDL's floating point rectangles. I can't promise I didn't introduce exciting new bugs by rushing my own rectangle code ;)

https://diablerie.itch.io/extra-files/download/jNVGVPB5N36vC2k6_KTTG67_WN6NMKs__...

I am terribly sorry, but now I get:

./icyd: symbol lookup error: ./icyd: undefined symbol: Mix_PlayChannel

My libsdl2-mixer is version 2.0.4, if that's relevant. I do enjoy the large amount of support and users of Ubuntu based distros, but it must kind of sucks (at least for developers) when everyone stuck with old libraries like these.

I need to sleep, so I won't be able to respond for a few hours. I'm sorry. You've been so responsive, so I wish I could have voted for your game. Good night!

(1 edit) (+1)

I understand, and I'm sorry I couldn't get it to work. There are a couple of ways I might have been able to detect and fix these kind of version errors, so I'll make sure to implement them in our post-jam version of the game. It's a good learning experience for me, and I'm really grateful you've helped me identify a few more technical issues. Goodnight, and thanks again for persevering!

Oh, and in case you were curious, I can confirm that error is also SDL2 version related. The game uses features from SDL2_mixer 2.6.0 (the current version is 2.6.3), and missing those features will be much harder to work around than the rectangles :(