- 你是否还在为代码整体规划而苦苦挣扎?
- 是否发现随着代码库的增长却不容易做出些改动?
- 是否感觉到你的游戏就是一个纷乱交杂的巨大的毛球?
- 又或者不知如何将设计模式应用到游戏?
- 听说过“缓存一致性”和“对象池”,但却不知道如何使用它们来提升你的游戏的性能?
你们的救星来啦!我撰写了这本书来解答这些问题。这是我在游戏中所使用的模式总结,这些模式能让我们的代码更整洁,更清晰易懂,以及运行更快!
当我开始编写游戏时,我希望我有一本这样的书。现在,我希望你能够有一本。
我叫 Bob Nystrom。当我在EA工作的时候,我便开始写这本书了。在EA工作的8年时间里,我见过很多优美的代码,也见过很多着实可怕的代码。我希望我能够将我从这些优美的代码设计中学到的东西,在这里写下来,并教给大家如何写出这样好的代码来。
如果你想要联系我,你可以在网站写email给我,或者直接在 twitter 上 @munificentbob 都可以。
在线写作书籍的一大好处就是方便修改。如果你发现了错误或者有什么建议,不要犹豫,给我报告bug或者发送一个 pull request。
- 介绍
- [架构,性能和游戏](01.1-Architecture, Performance, and Games.md)
- [再探设计模式](02-Design Patterns Revisited)
- [序列模式](03-Sequencing Patterns.md)
- [双缓冲](03.1-Double Buffer.md)
- [游戏循环](03.2-Game Loop.md)
- [更新方法](03.3-Update Method.md)
- [行为模式](04-Behavioral Patterns.md)
- 字节码
- [子类沙盒](04.2-Subclass Sandbox.md)
- [对象类型](04.3-Type Object.md)
- [解耦模式](05-Decoupling Patterns.md)
- 组件
- [事件队列](05.2-Event Queue.md)
- [服务定位器](05.3-Service Locator.md)
- [优化模式](06-Optimization Patterns.md)
- [数据局部性](06.1-Data Locality.md)
- [脏标记](06.2-Dirty Flag.md)
- [对象池](06.3-Object Pool.md)
- [空间划分](06.4-Spatial Partition.md)
==========================
欢迎朋友们阅读并斧正,提交 Issue 或者 send pull request :) 。
能有所收获,便是我们翻译中文的意义所在。
-
翻译:(目前已经都领取完毕)
-
校正:由于能力所及,总有些地方翻译欠妥,所以校正会一直进行中,朋友们看到有翻译错误,可以在 Issue列表 中新建 issue 提出来,更鼓励欢迎直接发送 pull request。
注:所有贡献人的名字都会在此列出,欢迎大家踊跃参与翻译、校正。