I took a look at Godot and while I do think it's neat I would probably only use it for 2D applications.
In terms of 3D rendering I was not too impressed by it. Of course you can't expect it to have the same features as UE4 but I also saw a few things that I didn't like:
There's quite a bit of room for optimizations and it does some questionable things including "improper" blending of bloom and allowing too extreme values in the PBR-shading. Aside from that, parts of the shaders that I looked into seemed like copy-paste (for example the tonemapping operators with faulty/incomplete implemementations). That being said it's open source and I already experimentally changed the tonemapping and bloom blending - which worked, but I still don't think I'm going to use it for 3D stuff.
In that regard I'm leaning towards Unreal Engine. It's C++, the 5% fee seems fair, it has a nice workflow and it satisfies my high visual standards aswell as graphics programming needs, lol.