2D 游戏开发"God class"

2D Game Development "God class"

本文关键字:God class 开发 游戏 2D      更新时间:2023-10-16

我正在使用SFML API在C++中开发2D游戏,但是我在类设计方面遇到了问题。我认为我不遵守SRP(单一责任原则),因为我有一个名为"游戏"的主类应该处理窗口。它包含一个包含主游戏循环的方法。现在的问题;它包含超过5个类的对象(组合),例如播放器,菜单,启动画面。你认为创建这样的"上帝"类是个好主意吗?你知道我可以从中学习的开源C++2D游戏吗?提前谢谢你。

在 Gamedev 网站上看到这个关于 God 类的帖子(是的,它们是一个坏主意,因为紧密耦合会使代码在面对变化时变得不那么健壮)。

不知道 2D,但有一个带有 id-Software 3D 游戏引擎的整个 GitHub 存储库。除了图形之外,这应该为您提供宝库。另请参阅Doom源代码评论,以获取有关编写游戏的良好编码风格的想法。