我制造游戏引擎。结构如下:在程序开始时有对象创建的Core类,模块(类Module)加入到core并且有worker(类Worker)。工人分为两种类型:普通和图形。我为游戏循环组织做了它。
因此,我创建了GLFWOpenGLModule,顾名思义,它使用GLFW创建窗口和OpenGL以在此窗口中绘制。但是GLFW不允许创建两个窗口并在每个窗口中绘制。我可以通过添加以下代码来制作GLFWOpenGLModule单例:
static int objectsCount = 0;
objectsCount++;
if (objectsCount > 1)
throw SomeKindOfException("error message");
在构造函数中并且不在模块中创建两个窗口,但是我不能创建两个窗口(例如,用于渲染多个摄像头,每个窗口中的每个摄像头)。 在这种情况下我该怎么做?也许我应该使用另一个库而不是GLFW?