gl-renderer
main
Even if "none" shaders were selected, the game would still parse car.frag and execute the shaders, which is not the expected behaviour.
3.3.0 was required only because one shader, namely car.frag, was arbitrarily requiring GLSL 3.3.0. However, it was already compatible with GLSL 1.1.0, [1] so the minimum required OpenGL version can be safely lowered to 2.1. [2] [1]: https://www.khronos.org/registry/OpenGL/specs/gl/GLSLangSpec.1.10.pdf [2]: https://en.wikipedia.org/wiki/OpenGL#Version_history
SDL_GL_CreateContext can fail due to several reasons, such as GLXBadFBConfig on unsupported OpenGL versions.