基本信息
书名:游戏编程模式
定价:69.00元
售价:56.6元,便宜12.4元,折扣82
作者: Robert Nystrom 尼斯卓姆
出版社:人民邮电出版社
出版日期:2016-09-01
ISBN:9787115426888
字数:
页码:
版次:1
装帧:平装
开本:128开
商品重量:0.4kg
编辑推荐
前EA杰出游戏工程师经验凝结4大类13种游戏编程模式精彩呈现多数游戏程序员所面临的挑战就是实现他们的游戏。许多游戏在其高度复杂的代码库中折戟沉沙,没能问世。本书是为解决此问题而生。本书作者在多年的游戏开发工作中,收集了许多已经证实的设计模式来帮助解构、重构以及优化游戏。通过阅读本书,你将深刻理解经典的设计模式是如何应用于游戏之中的,学会如何编写一个健壮的游戏循环、如何应用组件来组织实体,并利用CPU缓存来提升游戏性能。本书包含的4大类13种游戏编程模式包括:序列型模式● 双缓冲● 游戏循环● 更新方法优化型模式● 数据局部性● 脏标记模型● 对象池● 空间分区行为型模式● 字节码● 子类沙盒● 类型对象解耦型模式● 组件模式● 事件队列● 服务定位器
内容提要
游戏开发一直是热门的领域,掌握良好的游戏编程模式是开发人员的应备技能。本书细致地讲解了游戏开发需要用到的各种编程模式,并提供了丰富的示例。全书共分20章,通过三大部分内容全面介绍了与游戏编程模式相关的各类知识点。首部分介绍了基础知识和框架;第二部分深入探索设计模式,并介绍了模式与游戏开发之间的关联;第三部分介绍了13种有效的游戏设计模式。本书提供了丰富的代码示例,通过理论和代码示例相结合的方式帮助读者更好地学习。无论是游戏领域的设计人员、开发人员,还是想要进入游戏开发领域的学生和普通程序员,都可以阅读本书。
目录
目录
篇 概述
章 架构,性能和游戏 3
1.1 什么是软件架构 3
1.1.1 什么是好的软件架构 3
1.1.2 你如何做出改变 4
1.1.3 我们如何从解耦中受益 5
1.2 有什么代价 5
1.3 性能和速度 6
1.4 坏代码中的好代码 7
1.5 寻求平衡 8
1.6 简单性 9
1.7 准备出发 9
第2篇 再探设计模式
第2章 命令模式 13
2.1 配置输入 14
2.2 关于角色的说明 16
2.3 撤销和重做 18
2.4 类风格化还是函数风格化 21
2.5 参考 22
第3章 享元模式 23
3.1 森林之树 23
3.2 一千个实例 25
3.3 享元模式 26
3.4 扎根之地 26
3.5 性能表现如何 30
3.6 参考 31
第4章 观察者模式 33
4.1 解锁成就 33
4.2 这一切是怎么工作的 34
4.2.1 观察者 35
4.2.2 被观察者 35
4.2.3 可被观察的物理模块 37
4.3 它太慢了 38
4.4 太多的动态内存分配 39
4.4.1 链式观察者 39
4.4.2 链表节点池 42
4.5 余下的问题 43
4.5.1 销毁被观察者和观察者 43
4.5.2 不用担心,我们有GC 44
4.5.3 接下来呢 44
4.6 观察者模式的现状 45
4.7 观察者模式的未来 46
第5章 原型模式 47
5.1 原型设计模式 47
5.1.1 原型模式效果如何 50
5.1.2 生成器函数 51
5.1.3 模板 51
5.1.4 头等公民类型(First-class types) 52
5.2 原型语言范式 52
5.2.1 Self 语言 53
5.2.2 结果如何 54
5.2.3 如何 55
5.3 原型数据建模 57
第6章 单例模式 61
6.1 单例模式 61
6.1.1 确保一个类只有一个实例 61
6.1.2 提供一个全局指针以访问实例 62
6.2 使用情境 63
6.3 后悔使用单例的原因 65
6.3.1 它是一个全局变量 65
6.3.2 它是个画蛇添足的解决方案 66
6.3.3 延迟初始化剥离了你的控制 67
6.4 那么我们该怎么做 68
6.4.1 看你究竟是否需要类 68
6.4.2 将类限制为单一实例 70
6.4.3 为实例提供便捷的访问方式 71
6.5 剩下的问题 73
第7章 状态模式 75
7.1 我们曾经相遇过 75
7.2 救星:有限状态机 78
7.3 枚举和分支 79
7.4 状态模式 82
7.4.1 一个状态接口 82
7.4.2 为每一个状态定义一个类 83
7.4.3 状态委托 84
7.5 状态对象应该放在哪里呢 84
7.5.1 静态状态 84
7.5.2 实例化状态 85
7.6 进入状态和退出状态的行为 86
7.7 有什么收获吗 88
7.8 并发状态机 88
7.9 层次状态机 89
7.10 下推自动机 91
7.11 现在知道它们有多有用了吧 92
第3篇 序列型模式
第8章 双缓冲 95
8.1 动机 95
8.1.1 计算机图形系统是如何工作的(概述) 95
8.1.2 幕,场 96
8.1.3 回到图形上 97
8.2 模式 98
8.3 使用情境 98
8.4 注意事项 98
8.4.1 交换本身需要时间 98
8.4.2 我们必须有两份缓冲区 99
8.5 示例代码 99
8.5.1 并非只针对图形 102
8.5.2 人工非智能 102
8.5.3 缓存这些巴掌 106
8.6 设计决策 107
8.6.1 缓冲区如何交换 107
8.6.2 缓冲区的粒度如何 109
8.7 参考 110
第9章 游戏循环 111
9.1 动机 111
9.1.1 CPU探秘 111
9.1.2 事件循环 112
9.1.3 时间之外的世界 113
9.1.4 秒的长短 113
9.2 模式 114
9.3 使用情境 114
9.4 使用须知 114
9.5 示例代码 115
9.5.1 跑,能跑多快就跑多快 115
9.5.2 小睡一会儿 115
9.5.3 小改动,大进步 116
9.5.4 把时间追回来 118
9.5.5 留在两帧之间 119
9.6 设计决策 120
9.6.1 谁来控制游戏循环,你还是平台 121
9.6.2 你如何解决能量耗损 121
9.6.3 如何控制游戏速度 122
9.7 参考 1
作者介绍
Robert Nystrom是一位拥有2 0 年以上职业编程经验的开发者,而他在其中大概一半的时间从事游戏开发。在艺电(El e c t r o n i c Arts)的8年时间里,他曾参与劲爆美式足球(Madden)系列这样庞大的项目,也曾投身于亨利·海茨沃斯大冒险(Henry Hatsworth in the Puzzling Adventure)这样稍小规模的游戏开发之中。他所开发的游戏遍及PC、GameCube、PS2、XBox、X360以及DS平台。但他引以为傲的,是为开发者们提供了开发工具和共享库。他热衷于寻求易用的、漂亮的代码来延伸和增强开发者们的创造力。Robert与他的妻子和两个女儿定居于西雅图,在那里你很有可能会见到他正在为朋友们下厨,或者在为他们上啤酒。
文摘
序言
这本书的书名叫做《游戏编程模式》,作者是[美] Robert Nystrom,中文译名是尼斯卓姆,ISBN是9787115426888。 一直以来,我对游戏开发都充满了好奇,尤其是那些让游戏体验如此流畅、逻辑严谨的幕后英雄——编程模式。这本书的书名,简直像是一把开启游戏世界秘密宝藏的钥匙,让我迫不及待地想一探究竟。拿到书的时候,那种厚重感和纸张的质感,都让我觉得物超所值。封面设计也相当有格调,简洁而不失专业,充满了科技感和未来感。翻开目录,一系列我熟悉又陌生的概念映入眼帘,比如“实体组件系统”、“状态模式”、“命令模式”等等,这些都是在学习编程过程中经常会听到的词汇,但真正理解其在游戏开发中的精妙运用,似乎还需要深入的指引。我一直相信,好的编程模式能够极大地提升代码的可维护性、可扩展性和复用性,让游戏开发的过程更加高效,也让最终的游戏成品更加稳定可靠。这本书的出现,无疑为我提供了一个系统学习和掌握这些强大工具的绝佳机会。我非常期待能够通过这本书,将那些抽象的概念转化为实际的代码,为我自己的游戏梦打下坚实的基础。
评分从这本书的标题来看,它似乎是一本能够帮助我们深入理解游戏开发核心的宝典。我一直觉得,真正的游戏开发者不仅仅是会写代码,更重要的是能够写出“好”的代码,而“好”的代码离不开对各种编程模式的深刻理解和灵活运用。这本书的书名就直击了这个要点,让我觉得它很有可能涵盖了各种在游戏开发领域被广泛验证过的、行之有效的解决方案。想象一下,当我们在开发一个复杂的AI系统时,如果没有合适的模式来管理其行为逻辑,代码将会变得多么混乱不堪;又或者,当我们设计一个庞大的游戏关卡编辑器时,没有清晰的架构和模式来组织其功能,开发过程将会多么艰难。这本书的存在,仿佛就像是在为我们提供一张绘制复杂游戏系统蓝图的详细说明书,让我们能够按照科学的方法来构建,避免走弯路。我非常期待书中能够有大量的实例分析,能够将理论知识与实际应用紧密结合,这样才能真正地学以致用,将书本上的知识内化为自己的能力。
评分这本书的书名《游戏编程模式》一下子就抓住了我的注意力。作为一名业余游戏开发者,我常常会遇到一些棘手的编程问题,比如如何有效地管理游戏中的各种状态,如何让角色的行为更加灵活多变,如何处理大量的游戏对象等等。这些问题有时候让我感到力不从心,甚至会想要放弃。我深知,这些问题的背后往往都隐藏着更深层次的设计理念和架构方法,而“编程模式”正是解决这些问题的利器。我猜想,这本书里应该会详细介绍各种经典的、适用于游戏开发的编程模式,并且会用通俗易懂的语言来解释它们的设计思想、适用场景以及优缺点。我特别期待书中能够提供一些具体的代码示例,能够演示如何在实际的项目中应用这些模式,而不是仅仅停留在理论层面。毕竟,对于开发者来说,最直观的学习方式就是看到实际的代码是如何工作的。希望这本书能够帮助我摆脱“面向过程”的思维定势,迈向更高级的“面向对象”和“面向模式”的设计。
评分这本书的名字,光听起来就充满了力量感和实用性。我一直认为,在游戏开发领域,“模式”就像是前人在实践中总结出的“招式”,学会这些“招式”,我们就能更有效地应对各种挑战,做出更出色的游戏。书名中的“游戏编程模式”,直接点明了它的核心内容——专注于游戏开发场景下的各种设计模式。我很好奇,这本书会不会涉及到一些游戏引擎内部常用的模式,比如用于处理渲染管线的模式,或者用于管理物理模拟的模式。又或者,它会更侧重于游戏逻辑层面的模式,比如如何设计一个灵活的AI系统,如何实现一个强大的事件分发机制,如何构建一个易于扩展的游戏对象管理系统。无论侧重点在哪里,我都相信它会为我提供宝贵的启示。我个人尤其希望看到书中能够深入剖析一些“反模式”,也就是那些在实践中容易导致代码混乱、难以维护的错误做法,通过对比分析,能够帮助我们规避这些陷阱。
评分听到《游戏编程模式》这个书名,我脑海里立刻浮现出各种精巧的算法和架构设计。作为一名对游戏开发充满热情的学习者,我始终认为,理解并掌握一套行之有效的编程模式,是成为一名优秀游戏程序员的必经之路。这本书的书名,恰恰点出了这一核心需求。我希望这本书能够像一位经验丰富的导师,为我一一揭示那些让游戏世界栩栩如生的设计智慧。想象一下,如何在不同状态下让角色表现出截然不同的行为,如何构建一个既高效又易于理解的物品背包系统,如何在多人在线游戏中实现平滑的同步机制,这些都需要依赖于成熟的编程模式。我期待书中能够用清晰的图示和生动的例子,将那些复杂的模式原理讲解透彻,让我能够举一反三,触类旁通。我尤其想知道,书中会不会介绍一些在现代游戏开发中非常流行的、例如MVP(Model-View-Presenter)或MVVM(Model-View-ViewModel)等架构模式在游戏中的应用,这些模式在UI开发和逻辑分离方面有着重要的作用。
本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等,本站所有链接都为正版商品购买链接。
© 2025 windowsfront.com All Rights Reserved. 静流书站 版权所有