Creating Game Engine

I know C++ quite well and also know a lot of physics. But I don't know how can I create my own game engine. Which software should I use to make it interactable. How can I make a simple GUI for interaction. I want to build something like Buildbox.