Rice
V2EX  ›  问与答

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

  •  
  •   Rice · Aug 9, 2017 · 2260 views
    This topic created in 3213 days ago, the information mentioned may be changed or developed.

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

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

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

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

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

    上面提到的实体书和电子书都有中文版。
    viator42
        4
    viator42  
       Aug 9, 2017
    游戏的结构比软件简单暴力的多,就是所有东西围着一个主循环转,设计模式在开发过程中估计起不了啥作用.游戏引擎的话应该会自己封装一套流程,不太需要自己组织代码结构
    acros
        5
    acros  
       Aug 9, 2017
    @viator42
    你说 hack 地方比较多,那是有可能的,所以大型游戏系统里面脚本还是必要的。
    设计模式还是必要的,游戏开发会有大量的反馈修改,像 MOBA 那种技能系统及其复杂的游戏,dota2 有些英雄技能一个版本一改,不是调数值,是整个改了,如果模块没设计好,后期不得改到死。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5863 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 02:56 · PVG 10:56 · LAX 19:56 · JFK 22:56
    ♥ Do have faith in what you're doing.