I’m currently building up what I think of as a game project framework, meaning a more generalized implementation of a range of UE capabilities to support a variety of games. Games based off this framework would be of a similar nature on a very general level, but with a lot of flexibility to support the specific story being told, and the designer’s requirements for elements needed to express their concept.
It is, however, from an Unreal standpoint just an Unreal game project, and experimental starting point: I have <framework_proj_name>.uproject. Most of the C++ side classes are designed (where appropriate) to be generalizd with the assumption that they will be base classes for specific game project classes. In terms of code structure, the project has the usual UE project structure:
<framework_proj_name>/
Source/<framework_proj_name>/…
This work has progressed far enough that I need to be thinking ahead to when I’m able to team up with a writer and designer and start to leverage this framework work to build an actual game.
I am seeking feedback on what approaches others have taken to establishing a game project based on a more generalized framework, then building one or more game projects on top of it (or derivative of it).
It isn’t clear to me that UE’s physical project layout/design contemplates e.g. having a single top level directory but containing multiple individual projects (games), but it doesn’t seem like it… An alternative would be via SCM, where each new game project would start from HEAD off your existing framework or game project, but then go its own separate way (like a fork). Or perhaps I need to rethink how the framework code is “packaged” so it can be referenced in a new game project the way one references The Engine itself.
How have those of you who have already had to think through this project lifecycle/structuring challenge solved it?