I really hate the whole Unity-esque workflow. I think it makes everything more confusing to me. Therefore, I was trying to build my project in Godot without having the editor. Quick questions:

  1. Is it possible to build Godot as a static library, as a dependency of my project?
  2. If so, can i remove the editor and other unnecessary features? Is there a documentation on the build system for that?

See Introduction to the buildsystem in the documentation for an overview of the build system. Godot's architecture is very modular and, in fact, the editor is just a part of it you can disable (option tools=no). There are several subsystems: libscene for the scene folder, libplatform for the platform folder, and so on, and they're all compiled statically. Here's a complete list of the options available (you can see them with scons platform=<platform name> --help). I recommend you also look at scons' documentation and Godot's build files (SConstruct) for more knowledge about how to integrate Godot in your own workflow.

But I'm not quite sure what you mean by "Unity-esque workflow": you're talking about the scene system? Or they way it is dealt with in the editor? Because if it's the system itself, that's a core characteristic of Godot you'll to have use even when working only with code.

No, no, not a problem with the scenes themselves. That's just the scenegraph and I'm OK with it. It's just the editor and the publishing through the editor. I like to compile & run my game and that's it. I like to use the engine as a library to my code, so i can easily render stuff. I don't like to code on top of the engine.

You can try to use the servers only.

So, it is definitely possible to use Godot from C++ only and the best starting point for that would be looking at the editor code. How to interface with the main loop, instantiate the scenegraph and so on.

5 years later