对于游戏工程不太了解,游戏开发一般用什么软件设计模式?比如 Web 或桌面前端软件一般都是 MVC 或者 MVVM,游戏呢?

2017-08-09 14:14:19 +08:00
 Rice

对于游戏工程不太了解,游戏开发一般用什么软件设计模式?

比如 Web 或桌面前端软件一般都是 MVC 或者 MVVM,游戏呢?

游戏这种特别的软件有没有什么经典的软件代码设计模式

1877 次点击
所在节点    问与答
5 条回复
KeepPro
2017-08-09 15:22:30 +08:00
mvc 啥的 设计模式是一种架构思想,属于软件工程的范围,写游戏当然可以用。这个问题很 low
经典的代码的话 简单点的贪吃蛇 魔塔,复杂的 quake
Rice
2017-08-09 15:26:07 +08:00
@KeepPro #1 我只是想问,游戏中常用的是不是也是这种 MVC 的思想,还是有其他的更适合游戏的
acros
2017-08-09 15:27:12 +08:00
差别倒也不大,很多都是互通的,除了普遍性的设计模式,还有框架讨论什么的,比如以前 Entity (类继承),发展到现在的 Entity-Component 形式什么的,书籍 Game Programming Gems 里的 General 章节有不少讲这个的。

这里有个比较出名的著作,网上免费看的。
http://gameprogrammingpatterns.com/

上面提到的实体书和电子书都有中文版。
viator42
2017-08-09 15:32:27 +08:00
游戏的结构比软件简单暴力的多,就是所有东西围着一个主循环转,设计模式在开发过程中估计起不了啥作用.游戏引擎的话应该会自己封装一套流程,不太需要自己组织代码结构
acros
2017-08-09 15:38:00 +08:00
@viator42
你说 hack 地方比较多,那是有可能的,所以大型游戏系统里面脚本还是必要的。
设计模式还是必要的,游戏开发会有大量的反馈修改,像 MOBA 那种技能系统及其复杂的游戏,dota2 有些英雄技能一个版本一改,不是调数值,是整个改了,如果模块没设计好,后期不得改到死。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/381648

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX