Hello.
I'm currently torn between two options for game development. Making a game from scratch using OpenGL or using Unreal Engine to make a game faster. The decision seemed obvious but as I thought about it more, I couldn't decide.
The reason being that when I code in Unreal Engine (using C++) I feel like I'm not really doing much. At most scripting, so that the components I implement can be used through UE4's Reflection system and used inside Blueprints. I dislike Blueprints for anything other than fast prototyping (for which they are very fast to work with). Yes it's much faster to develop prototypes and games but I wouldn't get much knowledge of the actual fundamentals of game programming.
I have experience with graphics APIs like OpenGL and Vulkan and I switched over after creating a couple projects. It took forever to have something visible on the screen, and even more time for a simple prototype to be made. But I felt like I was learning key concepts that would be valuable in the future. Learning UE4's functions and nodes feel like simple scripting with no external application knowledge to be learnt (except joining a company / starting small-scale development using UE4 exlusively) and if I hypothetically would want to switch to other engines / frameworks in the future I wouldn't already know the basic concepts from my time spent in UE4.
I know that making a fully fleshed-out game from scratch is much more difficult and that Unreal Engine is very appealing for faster development but which one would benefit me the most in knowing in the long run?