Just to toss this in: If all you need is to draw stuff to the screen, play audio, and handle input, you might have a good experience with using SDL or raylib. Those are "just" libraries and not fully featured engines, so they don't come with advanced features like asset management or a ready-to-use level-editor.
I am not saying that those are a better option than a fully featured engine, just that, depending on what you are trying to achieve, they might be.