查看完整版本: [--
edwardwewe
2007-07-29 07:31
游戏架构与设计(第2版)读书笔记
游戏架构与设计(第2版)读书笔记
游戏架构与设计(第2版)是游戏开发技术专业本科段游戏架构导论的考试用书~~
第1部分 游戏设计
第1章 初步概念
1.1 新技术的震撼
设计师的工作就是创造新事物。
每一代艺术家都利用了在他们之前已出现的思想和作品。你的创造性就是借鉴这些源泉、然后将其在自己的作品中合成而得到一个独特思想融合的结果。
思想不像矿层,它是取之不竭、用之不尽的。过度使用的思想会暂时变得不活跃、但是它们会重获新生。
搜寻初步概念是,应沿着别人不常走的路线。首先寻找别人暂时还不曾寻找过的灵感。糟糕的游戏概念纯粹就是剽窃。优秀的游戏概念会带来新鲜事物。
有些概念可能太过于古怪而不可行,但这不一定意味着它们是糟糕的概念。也许适合它们的时机尚未到来,这或者是因为相关技术尚未成熟,或者市场还没有创建。
创造性=借鉴+融合+独创
1.2 创造性指导方针
新作品的创作涉及3种类型的技能:创造性、工艺、技术。
游戏创作的3个阶段:概念、结构、设计。
游戏可玩性:战斗依赖动作,从而依赖交互,重点放在冲突阶段。
剪辑场景在时间上将和当前游戏关卡不符,它们的目的不是把游戏“情节”往前发展,而是通过逐渐展现人物的背景故事,从而提供当前游戏关卡中的动作背景,这就是结构。
开始策划核心游戏机制--玩家在屏幕上看到的内容、玩家所能采取的动作、游戏目标,以及“玩该游戏的意图”,这就是设计。
原创能力,创造性的想象力,是极其罕见的。
成功的游戏公司认识到自己的业务是娱乐,而不是软件。
现在更重于发掘娱乐价值。
原创性是产生世界级游戏人物、环境和故事所必不可少的。
未来将属于布道者、预言家、梦想家。
1.3 形成创意
创造性过程的4个阶段:
灵感 去何处获取创意
合成 整合创意
共鸣 根据创意创建最佳组合
汇聚 完成概念
1.3.1 灵感
首先要进行头脑风暴训练
原创性可以从:游戏可玩性、故事、环境、人物、界面、技术,体现出来。
要确保创意能在公众中引起共鸣。
1.3.2 合成
需要挑选合适的进行组合。
考察一下合成起来的想法。自问每种想法能给其他想法做出什么贡献,以便游戏能够充分利用所有这些想法。
1.3.3 共鸣
共鸣是一种方法,使总体比部分的总和还要大。使故事和主题内容对游戏玩家变得重要。
首先决定自己的主题。
如果游戏有足够的影响力,玩家还会创建他们自己的共鸣。
1.3.4 汇聚
在游戏的工艺阶段,工艺技能需要判断力,必须能够判断自己的思想是否会协调起来产生一款优秀的游戏。优秀的判断能力只能来自经验。
考察一下与你的新观念有点相像的每款游戏。那些游戏行得通吗?如果行不通,为什么?
预见到缺陷以便现在能够纠正它们,这样要好得多。一旦组建团队,设计中的变更会变得成本昂贵,准确的判断力可以为以后节省开支。
1.4 修正创意
戏剧模型包括5种元素:风格、情节、人物、环境和主题。
戏剧效果
戏剧的根本规则仍然适用于游戏。因为所有优秀的计算机游戏都是使人愉悦的,并且大多数都是从一连串戏剧性事件中获得大量的娱乐价值。
1、风格
主要流派:
动作 大量疯狂的按钮操作
冒险 故事情节在这类游戏中非常重要
策略 举足轻重的选择
模拟 最优化训练
解谜 艰苦的分析思考
玩具 可从中获得快乐的软件
教育 通过玩游戏来学习
游戏可以跨越多个流派。
2、情节
当游戏中的选择收缩为一条线性路径时,或者当发现自己在滚动永无完结的剪辑场景对话框,等待开始行动时,所遇到的正是糟糕的游戏。
任何游戏中都有情节,但在很大程度上都是由玩家自己创造的。游戏事件的创造者是玩家而不是游戏设计师。游戏是允许玩家创造故事的工具。
游戏通常有背景故事,也就是冒险游戏中特别重要的场景和环境。设计师必须牢记玩家在刚开始玩游戏时,是没有耐心的,游戏的开始必须简洁明了。他们不是为了看冗长的动画,而是为了亲身体验。优秀的游戏设计师会使他的自我在游戏中成为透明。
场景环境需要得到开始时对游戏世界不熟悉的玩家的认可。只要让故事开始即可。只要游戏可玩性是原创的,没人会指责淡化了游戏的起始过程。
3、人物
人物增强了故事,这既适用于玩家自己创造的人物,也适用于写入游戏中的人物。
玩家可以扮演游戏提供的角色。
4、环境
5、主题
游戏故事的真正作者是玩家。平衡的设计会引导玩家向设计师喜爱的主题发展,但是不能强迫玩家按你的方式去思考。
如果游戏有主题,它们应该以多种选择的形式出现,让玩家拥有选择的自由。
游戏的主题会影响体验游戏的方式。
1.5 概述
写下最初的概述时,可以删减或加入曾想到过的所有不错的想法。在这个阶段不必担心技术约束。
1.6 审查
需要考虑:分析、评估、论证
1.6.1 分析
对概念进行解析,把它完全***。分析:
游戏的风格是什么?
哪些现有的游戏与你的概念最相似?
计划以何种方式去做与那些游戏中相同的事情?
打算以何种不同方式去做那些事情?
1.6.2 评估
自问你的游戏是否足够与众不同。
这个特性会有趣吗?第一位标准
这个特性会导致良好的游戏可玩性吗?
为什么以前没有人使用过这个特性?
预计开发团队是否能够实现这个特性?
这个特性切实可行吗?
1.6.3 论证
在整理好论述之后,要把概念提交给客户(发行商)和开发团队。两方面必须都认可,你的概念才能获得成功。
必须准备解释和捍卫自己的思想。
1.7 可行性
1.7.1 商业因素:看起来好像是抄袭的作品。应避开充当其他人的补缀,独树一帜。
1.7.2 技术因素:无法交付游戏所依赖的3D引擎和角色的人工智能(AI)。
1.7.3 开发因素:开发的过程必须从原型开始,通过反复求精,呈现完美的游戏。
2007-07-30 08:54
edwardwewe
2007-07-30 23:10
第2章 核心设计
2.1 游戏是什么
游戏不是什么:一组酷的特色、许多奇特的图形、一系列具有挑战性的谜题、迷人的背景与故事。
一组酷的特色:酷的特色自身不会造就游戏,它们必需是有用的。塞进额外的特色恰恰是破坏典雅的游戏可玩性的开始。拥有它们可能对游戏有所裨益,但是需要知道在什么时候划定界线。
许多奇特的图形:我们当然不会拒绝技术所能提供的奇特图形,不过没有它们游戏必须也能发挥作用。
游戏产品的好坏:核心的创造力和质量、好的剧本、奇特的图像画面、游戏与众不同的力量:游戏的可玩性、趣味性、创造性。
一系列具有挑战性的谜题
迷人的背景与故事:好的背景有助于提升投入感,好的故事会吸引玩家并且通过情节推动玩家,但是如果没有游戏可玩性,实际上什么也没有添加进去。
游戏应该避免:把游戏当作讲故事的工具,这是成为游戏设计师的一个非常糟糕的动机。
2.2 游戏不是一切
游戏中的谜题需要与游戏的类型吻合。
游戏要确保它的第一规则:趣味性。
伪可玩性
虽然有很多故事,但如果没有游戏可玩性,这种体验酷似读一本交互性的小说,而不像在玩游戏。
2.3 游戏意味着游戏可玩性
好的游戏:通过意外之举,并使之发挥作用,就可以获胜--这一点称之为惊奇与快乐因子,这差不多就是游戏可玩性的定义。
游戏可玩性鼓励玩家去使用策略,这并不意味着所有游戏都是策略游戏。良好的设计的游戏,都需要对策略进行开发,以便玩起来更加生动。
在大多数角色扮演游戏(RPG)中,玩家获得经验点数,然后花费在提高你角色的技能、属性和符咒上。
在策略类游戏中,玩家收集资源,然后花费在新装备以及自身的升级上面。
在冒险游戏中,玩家收集物品,在之后碰到的难题中使用。
当你在游戏中设计多个目标是,要弄清它们互相的影响。否则,你只是在设计2个或多个并行的游戏,各个部分不会结合为一个整体。
自问以下问题:
游戏的目标是什么?
游戏玩家怎样实现这些目标?
游戏玩起来怎么样?
创建游戏可玩性的关键特色是什么?
2.4 创建游戏的策划文档
游戏的策划文档描述游戏将如何工作,并交流你设想的最终实现结果。必须把这些要点写入游戏策划文档中。
最重要的5点:特色、游戏可玩性、界面、规则、关卡设计。
2.4.1 特色
特色是使你的游戏与其它游戏与众不同的东西。这之所以特色是好的开始点的一个原因。另一个原因是游戏的基于特色的描述将贯穿整个开发过程。
特色是从规则中浮现出来的。如果必须用新的类别来描述某个物品,则这个新类别就是特色,它是浮现的。浮现使整体比各部分相加更强大。
1、特色的类型(前2个比较有价值)
对游戏正确工作至关重要的特色。
提高游戏乐趣,但对玩游戏的方式没有影响的特色。
成为游戏可玩性的替代物的特色。但它们不能提升游戏,只不过给你另一个精确等效的选择--实际根本没有特别意义。
2.4.2 游戏可玩性
写策划文档的目的是描述那些特色将如何创建游戏可玩性。
在策划文档里对预期的游戏可玩性的描述可服务于3个目的:
向开发人员解释游戏将如何工作。
提供一个在整个开发过程中可供参阅的可视的声明。
帮你关注于哪些特色是必不可少的、哪些是锦上添花(chrome)。
2.4.3 界面
界面不仅仅是为了美观,它的主要功能是帮助游戏玩家进行游戏。
好的界面设计涉及回答这个问题:如何保证游戏玩家不与系统对立?如何才能使游戏玩家忽略在对游戏的控制上存在限制?
2.4.4 规则
游戏开发必须是迭代式的。不断的添加规则或修改规则,常常会发现所添加的规则以某种意想不到的方式与已经存在的规则相互影响。
游戏策划阶段的定性分析会对以后的开发有所帮助。
规则必须为特色服务
2.4.5 关卡设计
关卡设计影响核心的游戏可玩性。关卡设计对游戏的风格、背景以及故事情节有着巨大的贡献。更重要的是,构造关卡的方法能够提高或减损内在的游戏可玩性。
最好的关卡设计属于非线性的,并有多种方法供选择,来达到目的。线性结构排除了战略思考的可能性。
好的游戏应当考虑战术(短期决策)以及战略(长期决策)。
关卡设计应当提供一个展示游戏优点的机会,并不关闭有效的选择之门,非线性方法是实现该目标的最好方式。
2.5 游戏策划文档举例
游戏策划文档一般分为:综述、游戏玩家、外观和感觉(艺术风格、音乐等)、界面、启动后状态(场景)、目标、游戏中的实体(人物、建筑、NPC等)、特色、规则、游戏可玩性、关卡设计、技术要求、营销等模块。
2.5.1 原型的价值:用来检验游戏的概念、可玩性等。
2.5.2 文档的必要性:原型仅仅是游戏策划文档的附件,原型不能取代文档。文档的作用是解释你试图实现的东西,以及你如何才能达到目的。
edwardwewe
2007-07-31 22:23
第3章 游戏可玩性
游戏可玩性:游戏理论是经济学的一个分支,它对由规则控制的系统进行数学上的分析,以确定不同终点的回报,达到特定终点所必需的策略统称为游戏可玩性。
游戏可玩性:达到特定终点所必需的策略。
规则:你的游戏产品首先应当有趣。
一个好的软件产品意味着它将也是交互式的。交互性使得游戏能够传达某些用其他任何方法都不能传达的东西。
3.1 游戏可玩性
一个很难给出***、依赖于许多事情的有趣的选择,是游戏可玩性的全部寓意。
3.1.1 游戏可玩性的实现
游戏是一系列有趣的选择。要想有价值,游戏可玩性选择必须是非同寻常的。游戏玩家考虑使用的每一种策略必须既具备有利的一面,也包含不利的一面。如果仅具备有利的一面,AI应该自动地处理它。如果仅有不利的一面,就不会有人会使用该策略,既然没有人用,为什么还要画蛇添足地把他包含到游戏中呢?
当一项决定具备有利的一面和不利的一面,并且当总体回报还依赖其它因素是,那么这个决定就具有游戏可玩性价值。
游戏必须是一系列有趣的选择。每一个决定都会影响下一个决定。游戏允许使用策略,如果没有策略,精心设计的游戏也是无法成功的。并且策略本身也表现为一系列有趣的选择。所有这些都使得游戏表现出复杂性。但这不意味着规则本身一定是复杂的。
浮现(emergence)的概念--复杂性出自简单的规则。
浮现由规则(行为)产生,这些规则(行为)与其他规则或环境交互。应该抵制设计过多规则的诱惑。最好的游戏遵循“更少就是更多”的原则。最简单的规则往往就是产生最有趣的游戏可玩性的规则。
3.1.2 支配性策略问题
游戏不应该有设计上的缺陷。精心设计的游戏决不应当包含从不值得使用的选项。游戏当然不应该有最好的调遣、人物或武器,否则其他调遣、人物以及武器还有什么意义?
在任何情况下,从不值得使用的选项是受控策略,好到不值得做任何其它的事的选项就是支配性策略。
支配的意思是你设计到游戏中去的某些选项--也许是除了一个有用以外所有的选项都是毫无用处的。如果它们没有用处,这将意味着,游戏玩家不久便会弃之不用。这不仅是糟糕的游戏设计,也是设计时间的浪费。
总而言之:受控选项无价值,把这种选项加入游戏纯属浪费时间。支配选项更糟,因为它意味着其它所有选项都没有价值。
3.1.3 准支配
如果选项将很少使用,你就要寻找支配性警告。寻求准支配也是值得花费一些时间的。准受支配的选项是仅在有限情况下才有用的选项。准支配选项是游戏玩家在大多数时间都将使用的选项。
具备持久吸引力的游戏必须保持趣味性。
1、避免毫无意义的选择
当玩家面对的是有意义的解决问题的方案时,良好的游戏可玩性就实现了。
传递的战斗关系:勇士优于野人,野人优于射手。
非传递的战斗关系:勇士优于野人,野人优于射手,射手优于勇士。
非传递关系的只是获得有趣选择的最小条件。它确保了动态的平衡,使得游戏远离僵化,但它确实是最基础的。
绝对优势(例如单个勇士能击败任何数量的野人)和边际优势(例如勇士只比野人强一点点,99个勇士和100个野人力量相当),都不会带来有趣的游戏可玩性。
绝对优势只会让玩家保持相同数目的A、B、C,因而失去了所有其他组合。而边际优势,会让错误的部队上场仅可能略输一筹。
因此你不能用一个一成不变的规则来希望获得有趣的游戏可玩性。需要的是不同策略之间的动态关系,以便在有些情况下A比B好,而在其他情况下它们之间没有什么选择性的差别。有时小人物也会翻身,B也能打败A。
石头剪刀布是避免游戏可玩性毫无意义的第一步。它意味着不存在每次都可获胜的单一最优策略。每种情况都应有最佳策略。设计良好的游戏中的情况是复杂的,因为它们不仅包括明显的事物如地形、高度、天气、时间等,还包括你的对手正在做什么。
环境+规则=游戏可玩性
1. 确保有趣的选择
游戏可玩性可能涉及的几种选择:
.有时可能采纳平时不使用的一种选择,具体情况取决于其他因素。
.一种选择,它的选择时间是重要的,并取决于具体环境。
.一种选择,无论你是否采纳,关系都不大。
.总是值得采纳的一种选择。
.一种选择,在游戏的任何时候都不值得采纳。
在游戏可玩性意义上,头两个选择明显是最有趣的。第3种选择,只是锦上添花。总是值得采纳的选择应由AI来处理。永远都不值得采纳的选择是只有一次有趣的,因此,开发人员在其上付出时间之前,应该予以认真考虑。
2. 富于趣味选择的工具箱
富于趣味的选择是指需要玩家具备良好判断力的那些选择,意味着正确的选择必须因环境而异。作为设计者的目标是确保这些环境永不停滞于获胜只有一种正确的方法。
创造性的过程是使玩家没有办法找到最佳的选择,这是最吸引人的。可以遵循很多技巧来确保游戏可玩性选择是有意义的。
3. 战略性选择
战略性选择是指中期或长期影响游戏过程的要素,这不同于战术选择。战略性选择对玩家以后的战术选择具有重要影响,因此,它们是获得好的游戏可玩性的主要方法。
有时需要这种选择,有时需要那种选择。根据固定计划作出选择的玩家不如适应环境的玩家做得好。
要创建好的游戏可玩性,不同的选择会导致不同的结果,这样可以减少选择成为毫无意义的,并增加获得好的判断的机会。
3.1.4 投资支持
通常一个游戏有不止一个主要目标,可能有第2个目标,在你到达最终目标前需要处理它们。
一些支出直接实现了你最终的目标,但其它种类的支出不直接实现目标,这些支出被称为投资支出。
主要的投资支出是一个升级等级的操作。
通过包含不同级别的决策,创建了让玩家进行战略性思考的必要性。选择不同投资的结果会根据其他玩家的行为而改变。
3.1.5 多种功能不同的选择
获得游戏可玩性的一个有用的方法是询问关于玩家的每个选择最好和最坏的一面分别是什么。
.这种策略有最大的摧毁力,但它是最慢的。
.这种策略是最快的,但它毫无防御力。
.这种策略可获得最佳的防御,但它没有摧毁力。
.这种策略不是最好也不是最坏的,但它是最通用的。
当为游戏设计武器和战略时,可以问自己一个有用的问题:何时对玩家是最佳的选择?
放入游戏中的多数选择,在某些方面应是最佳的。其中之一可能是适度起作用的选择,以多种不同的方式存在。
游戏的环境越难预料,拥有多种功能不同选择的意义越大。
快速移动的人物或部队可迅速到达目的地,因此,一般不会指望最快的部队在其他方面也是最佳的。
选择必须有利的一面,同时也有不足的一面。如果没有不足的一面,也就不存在有趣的选择。小心不要让通用性选择支配一切。
3.1.6 补偿因素:选择附带的不利的一面。
任何游戏选择都具备有利的一面,也包含不利的一面。
3.1.7 非永久性
所有回获得回报的决策会产生某种优势,一些优势是长期存在的。其他的是非永久性的。
非永久性给设计者另一种方法来让玩家面对困难的选择。
非永久性是另一种补偿因素。但它在游戏中经常发生,并具有特殊的结果,作为一个单独的选择范畴值得考虑。
3.1.8 影子成本
在每个游戏中,不断地展示给玩家以成本和交易。成本不一定意味着金钱或者胜利分数,它可能只是你到达下一个选择之前必须成功的事情。
游戏选择的真正成本是:到达目标所需要的时间、努力、注意力和供选资源。
注意:影子成本与投资支持有关。追踪所有的投资支持的流程图可以显示玩家必须作出的战略选择种类。沿着流程图的一个特定分支,总结所有因素,可告诉你到达每个节点所需的影子成本。
影子成本对玩家来说是隐含成本。设计师可以使用影子成本的变动性来为游戏添加微妙性。改变环境就改变了影子成本。利用影子成本可让游戏可玩性更具有深度,这是老练的玩家所欣赏的。
3.1.9 协作
协作是玩家战略集合中,不同要素之间的互动:
1.规模经济:你所拥有的一个类型的单位越多,每个单位就越好。
2.范围经济:明显使用了组合的军队有优势,也涉及目标的补充使用。
3.规模不经济:第一个单位是最有用的,一段时间后就不值得获取更多这样的单位了。
4.范围不经济:混合的队伍必须以最慢的速度移动,并必须给予不同的命令。
理想情况下,所有这4个选择应马上发挥作用,因为当它们互动的时候,会使时机选择更重要。经过仔细选择,它们还可添加逼真度,并使游戏更令人投入。
改变不同协作之间的平衡会严重影响游戏可玩性。
如果强调不经济,玩家会有消极反馈,这里优势难以获取,失败的人不会被甩得太远,这些协作创造了“紧跟”因素。这种游戏会持续较长时间。
3.1.10 游戏可玩性的最后评论
好的游戏是可以通过做对手没有预料到的事情,并使发挥作用而获胜的。
作为设计者,需要确保选择会互动。只是通过让玩家在资源生产上相对另一个人占据优势而获胜,并不是非常令人满意的。
如果目标只是完成该关卡,而比另一个玩家多获得分,那么你的选择和对手的选择根本没有互动。你具有的是竞争而不是游戏。
更糟糕的是,你只是必须知道要做正确的事情,而毫无任何选择,那么它甚至不是竞争,而是预知的结论。
3.2 互动
互动不是游戏可玩性。它更重要。但只有这一点,游戏不会长时间有趣。
游戏可玩性只是互动的一个方面。互动比游戏可玩性更重要,是娱乐软件的核心和灵魂。
3.2.1 互动的种类
.影响游戏世界本身,或者通过改变前端设置或者作为游戏本身的一部分。
.直接控制一个人物或一组人物的行为。
.通过一级间接行为来影响人物的行动(例如,为其提供线索或武器,像宙斯帮助喜爱的英雄)。
.通过二级间接行为来影响人物(例如,引导他到某个地方或指出某物让他观看,像缪斯女神提供灵感)。
.决定要跟随谁,而不是发生什么--一个不可见的观察者,在叙事情节之间的转移。
.选择对我个人来讲什么是有趣的,并使游戏为这些要素提供更多时间--就像在就寝时间给小孩讲故事,小孩所做的那样。
互动是放弃直接控制玩家,而是依靠间接控制。与指定主要情节相反,必须指定戏剧性冲突的过程。代替定义谁对谁做了什么,而是定义人们如何做才能与他人互动。
戏剧性要素:情节、风格、环境、主题、描述。
互动可以提高戏剧性要素的趣味性,不只是真实的情节。
edwardwewe
2007-08-02 11:31
这本书翻译得相当糟糕~~~~很多术语翻得不知所云~~~
edwardwewe
2007-08-02 11:31
第4章 详细设计
在详细设计阶段结束时,详细设计应该已经完成了2份文档:游戏可玩性策划文档和设计师的备注。
游戏可玩性策划文档是描述产品的远景陈述,并充当每个设计师都要追求的目标。当代码和可玩性策划文档达成一致时,产品就可以准备发货了。
设计师的备注说明设计师的设想,并让其他人挑战设计师的假设和结论。
4.1 设计师的作用
设计师应当征求和接受别人的意见。没有哪个人能面面俱到。一场头脑风暴专题讨论会在2小时内产生的想法,可能会比一个人在一生中想到的东西还多。
优秀的创造性设计的过程并不是设计师独断专横地编写每个人都必须遵守的规则;它也不是集体思考的结果。
它是一个筛选和澄清的过程,其中设计师要接受出自许多来源的思想,并将它们提炼为最适合该游戏的结构。
要尽一切办法与将要开发该游戏的开发人员谈论该游戏。营销团队也将在其中发挥作用,因此应与他们交谈,弄清该游戏看起来是否适应未来两年的市场预期要求。
最重要的是,要基于游戏论述和概念作品获悉客户的看法。
开发时限
灵感的获得 持续时间:1个月
过程:初始的想法和可行性讨论,结果为概述文档。
人员:首席设计师(主策划),偶尔采纳技术组的意见和架构。
成果:客户(发行商)决定是否准许该项目。
概念化 持续时间:3个月
过程:编写详细设计。
人员:由首席设计师(主策划)负责。
成果:2份文档,游戏可玩性策划书和设计师的备注。
行动计划 持续2个月
过程:计划各层详细设计策划书,这是一系列详细描述各开发阶段的短小文档。
每个文档代表对该层解决方案的最初的“最佳推测”,以及该层打算要实现的目标的摘要。
人员:首席设计师(主策划)和1名软件计划员。
成果:多个详细策划文档。
技术架构 持续时间:2个月。
过程:基于层的详细策划文档,架构组将准备技术设计,技术设计详细列出了将要的工具和技术组件。
首席设计师(主策划)全面地解释概念,然后将所有权移交给项目主管。由他领导项目完成。
人员:项目主管、首席架构师,以及一名软件计划员。
成果:主要的技术规格说明书,以及各层的详细技术说明书。这些说明书和游戏策划文档构成了项目计划。层的详细说明书被映射到一些主要管理点,这些管理点形成了与客户签订的合同的一部分。
工具生成 持续时间:4个月。
过程:构建游戏必需的组件和工具集。目标是使游戏架构的任何方面都达到完美的程度,并且不因为互相依赖而需要修改。
成果:工具以及游戏组件,它们即使在特性上不完备,在功能上也是完备的。内容包括:一个3D图形引擎、一个关卡生成器和一个游戏环境。
制作 持续时间:12个月。
过程:项目主管领导一个团队,以6周一个阶段的机制制作游戏。项目主管负责优化游戏可玩性直至结束。工具开发人员负责支持工具。在每一层结束时的测试和评审(test and review)阶段要咨询首席设计师。
人员:项目主管要工作12个月的时间;工具开发人员要在前9个月工作;4个程序员要工作12个月;4个美工要在后9个月工作。
成果:游戏和完成的工具,它们对非程序员设计后续的关卡已经足够。
关卡 持续时间:4个月。
过程:游戏关卡在项目主管的指导下构建。项目主管在关卡构建期间与首席关卡设计师共同设计关卡。
人员:项目主管和3个关卡设计师。
成果:完成的游戏,具有所有的关卡,并在适当的位置提供游戏内置的教程。手册和美工制作也已结束。
评审 持续时间:3个月。(至少部分与关卡阶段同时进行)
过程:主要与关卡构建同时进行。这项工作可以外包,虽然发行商通常拥有自己的质保(Quality A urance)部门。
人员:测试人员。
成果:找出Bug并修复。如果发现游戏可玩性方面存在根本性的问题(虽然在这个后期阶段不应该存在这样的问题),可以将游戏返回给游戏开发人员作调整,但是这个阶段应该真正圆满地结束这款游戏。
在游戏开发的过程中,从概念到发货所花的总时间的重要性比不上投入-产出比的重要性。
发布准备一般涉及首席设计师和关卡设计师,在一些编程和美工团队的辅助下,作出一些最后的调整。
理想的情形应该是仅在需要时才让相关人员涉足项目。这样参与项目的工作人员数量自始至终都是最精简的。然而,游戏业过去很少采用这种模型。
4.2 设计文档
4.2.1 游戏可玩性规格说明(游戏策划文档)Gameplay Spec
游戏可玩性规格说明(游戏策划文档)是对游戏高度详细的描述,如果得到研究和全面的理解,它允许读者可视化完成后的整个产品。可以将游戏可玩性规格说明(游戏策划文档)看作是游戏本身的最初原型,或者可以将它看作是从未来某个时候发回的文档,它描述了你从现在起要创建1年的游戏。
游戏可玩性规格说明(游戏策划文档)是一份不断发展演变的文档,它会在整个开发过程中整合进新的内容。
完成并不意味着是完结的。完成时一个持续的过程,在每个完成阶段,游戏都可以发货(从理论上讲)。你的目标是使游戏在发货前经历尽可能多地完成阶段。
4.2.2 设计师的备注designer' notes
设计师的备注是你在构思该策划文档时,对你想到的任何内容进行的文档记录。
备注很有用,首先,所有文档都有存在的价值:如果你设计下一款游戏时,有了意想不到的事情发生,项目不会因此停下来。其次,这样还存在一个与编程代码中注释类似的好处。
4.3 使用设计文档
必须考虑2个事实:
游戏可玩性规格说明(游戏策划文档)应该对程序员有用。
程序员不会主动阅读该游戏可玩性规格说明(游戏策划文档)
需要使用游戏可玩性规格说明(游戏策划文档)的原因:
首先,毫无目标地执行任务确实让人沮丧和影响效率。
其次,任务的某个方面存在问题时,如果能够参考游戏可玩性规格说明(游戏策划文档),而不是召开一个会议来解决它,就会高效得多。
第三,虽然让单个人或很小的小组编写游戏可玩性规格说明(游戏策划文档),在财务上有利,但是吸收每个人的最佳想法对完善游戏可玩性规格说明(游戏策划文档)是有益的。
最后,对项目具有共同的看法可以促进团队的团结和纪律。
可以永久性的指派设计组的一个成员,随时回答可能出现的问题。另一种比较好的解决方案是把设计文档放在intranet上。
4.4 使设计适应开发
到目前为止,还只是一个泛泛的概念框架,它缺乏拍摄指导、节目摘要、灯光说明以及剧场细节。它还不是计划,只是一个们目标。
游戏最好根据一个反复的过程来构建。
开发过程是很模糊的,风险性非常高,因此采取某种形式的螺旋式开发是理想的,因为它允许对没有预期到的所有事情进行定期评估。
螺旋式开发允许你密切控制开发,以便那些可能动摇预算的优雅的额外特性可以确认,并且在以后形势变得紧张时放弃这些特性。
阶段和试验台
可玩性的许多内容都是突然出现的,因为在你试验它们之前,不完全了解所有那些规则在实践中将如何工作。
最有用的是演进式的原型或试验台模型。
试验台的基本思路在于,你可以在进行过程中或多或少地设计你的游戏。缺点是开放无法很好地适应计划。开发过程无法适应关键路径分析,不能进行并行开发,整个团队必须在实施变更时等待,只有在事后,才能看出完成任务的顺序是不是最优的。
通过连续的原型阶段,来开发游戏的思想是一种可靠的解决方案。这些阶段就是我们所称的“阶段”。在每个阶段中可以添加、调整和测试新的游戏组件。早期阶段中的组件可以提炼和扩充。,
阶段模型还具有允许团队集中于封闭范围的优点。每6个星期完成一次反复,游戏就在眼前逐渐成熟。
简单的演进模型在架构游戏组件的过程中证明是失败的,因为这个模型的特点是急于开始代码编写阶段。我们建议将代码编写工作延后一段时间。应该设法创建试验台来评估你最初的想法。
为了进行迭代式的开发,首先需要取得游戏可玩性规格说明(游戏策划文档),将它转换为一组详细的规格说明。每个规格说明处理一个层或阶段。
每个阶段的详细规格说明应该概括出以下事项:
目标:设计师对该阶段的特性的期望列表。
结构:该阶段打算要测试什么内容。
预期的结果:该阶段在测试和调整之后应该达到的目标。
替代选择:当那些思想和概念必须改变时的最佳猜想。
4.5 为什么要使用文档
单凭书面文档本身,不足以用来传达设计师对游戏的构想,因而要强调概念设计、灵感音乐、参考资料、图表和可能用于理解概念的其他任何东西。但是一个书面版本的游戏设计是至关重要的。
edwardwewe
2007-08-02 19:07
第5章 游戏平衡
为了达到美学上的纯粹性,设计必须是平衡的。不平衡的游戏是凌乱和丑陋的,缺陷将在玩游戏的过程中反映出来。不平衡的游戏是不太令人满意的,从开发人员的角度看,它意味着白费功夫。如果游戏的各个部分没有处于平衡状态,就存在其中一些部分很少被使用的风险,在这种情况下,花在开发这些部分上的时间就浪费了。
.玩家vs玩家 平衡是一门艺术,它是一款多玩家游戏保持平衡,以便每个玩家除了各自的技能外,都不会获得其他特殊的优势。游戏中可能存在运气,但是它必须平均地适用于所有玩家。
.玩家vs游戏可玩性 平衡涉及确保玩家的学习曲线,通过让玩家持续玩下去的奖励,来得到体现。不应该让玩家发现他们最难对付的对手是游戏本身。
.游戏可玩性vs游戏可玩性 平衡意味着游戏中的特性必须互相平衡。如果一种武器产生的破坏是其他武器的2倍,那么就必须花更多的代价来得到它,或者通过补偿因素(使武器附带有不利的一面)来平衡它。
5.1 玩家之间的平衡
在大多数游戏中,设计师的目标是让胜利只能通过技能和判断来赢取。这不是指不存在运气因素。大多数战略都需要博弈,而判断何时值得冒风险,正是乐趣的一部分。平衡的设计应避免有利于某个玩家的随机元素,否则随着游戏的进展,它的效能会被放大,以致胜利主要成了一种运气所致的结果。这种不平衡的最突出例子是玩家从一开始就获得幸运的优先权--或许他的城市起初就靠近金矿。这种不适当的优势最简单的避免方式就是通过额外的对称来确保完美的平衡。这意味着玩家具有完全相同的武器、机动性、命中率,以及其他任何东西。它还意味着层次的布局必须是对称的,以便任何一方的玩家都不会因为在一开始占据更好地位置而获益。当然,对称的问题在于,它可能是最公平的解决方案,但它很少是最有趣的。
没有哪款游戏是由玩家控制之外的因素决定的。在游戏中重要的游戏因素必须是对称的。通常因为现实主义或美学而必需的非对称应该被限制到不会单独影响游戏结果的次要因素上。
1. 关卡设计中的对称
对称的关卡在抽象的游戏中工作得很好。例如,国际象棋。 但是在更现实的游戏中,对称的关卡无法打动人心。它看起来不像是真正的地图。
对称的关卡是使不平衡变为平衡的明显方式,但这样的解决方案,几乎就是在侮辱玩家的智商。
更好的关卡,应该是在功能上对称,但初看起来并不明显。例如,每个玩家起初都有一些用于保护疆界或侧翼的不可逾越的地理障碍,只不过一方是山脉,另一方是内海,还有一方式峡谷。
平衡要求起始位置不会带来压倒性的优势。最通用的解决方案是避免使起始位置设置变得特别重要。
2. 游戏设计中对称
设计中的对称意味着对全部玩家可用的选择在功能上是相同的。困难点是赋予每个玩家不同的选择,但是要设法平衡这些选择,以便每个玩家拥有相同成功的机会。
游戏中有不同的种族,但对每个种族而言,可用得作战单元大致上是相同的。
当每个玩家拥有不同的作战单位是,平衡该设计要困难得多。
平衡一款刚好打破对称的游戏,要比平衡一款完全不对称的游戏容易得多。在许多情况下,刚好打破对称还具有更多的美学吸引力。
纯粹的模拟游戏的主要目标也许是重现逼真的历史场景,在这种情况下,玩家之间的平衡问题可能仅是次要的。
5.2 玩家vs游戏可玩性 平衡
玩家/游戏可玩性平衡意味着要记住游戏行业是关于交互性的。
一个普遍的设计陷阱:开发人员忙于构思奇妙的思想,用华而不实的东西装扮游戏,以至于忘记是否真正有人会玩这个千疮百孔的东西。
游戏除了对所有玩家公平、所有组件和特性都是有价值的以外,还必须考虑玩家与游戏的关系。如果玩家必须费力的研究游戏,以获得一点最微不足道的奖赏,那么它不太可能吸引玩家很长时间。
玩家/游戏可玩性平衡必须将挑战与玩家的学习曲线保持平衡。
玩家/游戏可玩性平衡可以归纳为3个简单的规则:
.奖励玩家
.使用AI,让机器自动做这项工作
.创作可以和玩家一起玩的游戏,而不是与玩家作对的游戏。
5.2.1 奖励玩家
最大的奖励就是在游戏中获胜。
在能够赢得任何大的胜利之前,玩家必须学习如何玩。但玩家会犯错误,而错误会打击信心的,因此,在每次学习新东西并正确运用时,玩家需要一点奖赏来鼓舞信心。这一点非常明显,但常常被忽略。
游戏必须给学习更复杂组合,并正确应用它们的玩家,在努力和耐心方面提供奖赏。
玩家正确做某事而奖赏他们,总是比做错某件事而惩罚他们更好。
5.2.2 让机器来做这件事情
界面事玩家与游戏的交流渠道,因而除了向玩家显示游戏世界中正在发生的事情,并帮助玩家改变那个世界外,不应该做其他任何事情。
如果某个游戏选项是不用动脑的,就应该让AI来处理它。不要让玩家为这类事情操心。
5.2.3 创作可玩性游戏
玩家应该通过技能和判断来获得成功,而不是在胡乱尝试足够多次后,就能找到正确的方案。
案例分析 5.2 保存游戏的问题
如果一款游戏需要通过不停地保存,来获得进展的话,本身就是缺乏玩家/游戏可玩性平衡的游戏。
有经验的玩家把“保存-失败-重新载入”循环作为游戏体验的一个正常组成部分时,这款游戏根本就是有缺陷的。
5.3 游戏可玩性/游戏可玩性 平衡
游戏设计师,应该在游戏世界中,努力建立强有力的“石头-剪刀-布”的关系,使玩家必须使用所有的单元类型来玩游戏,每一种类型都不可或缺。
需要考虑3件事情:
游戏世界中,存在各种各样的有趣选择,而不是总是有一个主宰一切的选择。
这不容易确定,因为最优选择依赖于其他玩家所作的选择。
不容易看出不同的选择有多少时候是值得作出的,但是我们需要知道这一点以平衡游戏。
5.3.1 组件和特性平衡
游戏中元素的平衡是在两个层次进行的。首先是组件平衡(角色的平衡)。每个游戏的选择一定不能被***为其他选择的相关简单值,或者如果可***,也必须有其他因素矫正它。
特性层次不涉及不同选择的相关值,而是涉及那些选择的交互方式。例如:速度和作战能力相比有多重要的问题:大船开得慢,但攻击力强,小船开得快,但攻击力弱。
速度、火力、可升级能力、航程等特性的平衡要比组件平衡(角色的平衡)更难于恰当的实现。
策略是指玩家使用可用的游戏选择方式--即格斗游戏中的移动序列、战争游戏中的作战单元组合等。
5.3.2 非传递游戏力学保证平衡
扫腿击败前踢-前踢击败践踏-践踏击败扫腿
零和游戏(zero-sum):不管一个玩家赢得什么,另一个玩家就会相应失去什么。
游戏回报矩阵p72
基于“石头-剪刀-布”的游戏,必须避免玩家可预见性,因为可预见性是经常被聪明的对手利用的弱点。
“石头-剪刀-布”,这种非传递关系是创造丰富可玩性的第一步。
在格斗游戏中,实现有趣可玩性的路线之一就是包括组合策略(类似组合拳)。
时间也是一个可玩性因素。
案例分析 5.4 使用“石头-剪刀-布”的特性平衡
1.太多的组合
在非传递性的游戏中,应该包括多少能够改变基本“石头-剪刀-布”关系的特性呢?这是一个平衡的问题。
另一方面,由于修改因素太多,熟练的玩法在游戏中变得几乎不可能。
如果有N个因素可能修改核心游戏机制,每个因素都是布尔值,那么将有2的N次方个组合。这种复杂性很快就会失去控制,因此设计时应该非常谨慎。
2.设计可扩展性
在平衡许多组件(游戏角色)时,会出现一个相关性的问题。多个组件(游戏角色)会互相影响,互相牵连。删除其中的哪一个都会使优雅的设计像纸做的房子一样不牢靠。
另一方面,在开发过程中后面添加组件(游戏角色)则相对容易。
3.其它非传递关系
没有哪个角色类型提供支配性的选择。没有哪个角色总是最好的。
作为设计师,不希望出现玩家从不使用你的游戏中某种角色的情况。
为了实现平衡,必须确保提供更多有利于其他角色的特殊情形。
5.4 游戏平衡性总结
游戏中的平衡具有多种形式。
玩家之间的平衡确保了游戏是公平的。
非对称的游戏,应确保关键区别是外观上的,不会放大任何可能存在的不平衡。
玩家/玩家平衡的黄金规则是:绝不应该因为非玩家的过错而将玩家置于一种不可获胜的境地。确保玩家决定不会因为无法取得进展而变得沮丧。
界面不应该给玩家设法实现的目标提供不必要的障碍。需要提供小奖励来指导玩家的学习过程。这些奖励可以是外在的(一段美妙的动画,一副剪切画面),或者内在的(经验点数、进一步的地图拓展、新武器)。
在任何一种情况下,最佳的奖赏都是那些拓宽玩家选项的奖赏,因为这样将丰富游戏体验。如果只是通过使得所有计算机玩家的对手更难对付,那么让玩家的角色上升一个层次,并获得更多的经验点数是没有意义的。你需要通过新的能力和新的对手种类来使玩家感到惊喜并愉悦他们。
玩家/游戏可玩性平衡的黄金规则是:游戏应该学习起来和玩起来都很有乐趣,并且应该随着玩家对游戏的掌握,而变得越来越有趣。
游戏系统的不同元素之间的平衡有2个层次:组件(游戏中的实体或选择)、属性(组件之间的交互)。
可玩性/可玩性平衡的目的是为了确保没有哪个游戏的元素是多余的。可以通过绘制每个组件的品质因素(Q-factor)列表,获得对不同游戏组件的相对价值的有用估计。
确保每有哪个组件是支配性的(因而是不可或缺的),并使得每个组件在至少一个属性上处于最佳地位。
遵循“石头-剪刀-布”模式的关系确保每个组件都是动态,而不是静态最佳的。这样的模式迫使玩家持续改变他的战术,从而有助于创建一款激动人心的游戏。
除了最简单或最抽象的游戏外,没有必要使每个组件对玩家都同等地有用,也不太可能以任何方式实现这样的目标。
每个组件的成本、可用性或易用性应该反映它对玩家的价值,这需要通过在开发过程中不断试玩得出结论。
可玩性/可玩性平衡的黄金规则是:游戏中所有选择都必须值得在某个时刻使用,并且使用每个选项的净成本必须与玩家使用它来获得的回报相称。
edwardwewe
2007-08-04 01:35
第6章 界面与感觉 Look and Feel
沉浸感:玩家实际融入游戏的感觉。沉浸感主要通过3种途径来实现:环境氛围Ambience、界面interface和故事讲述storytelling。
6.1 环境氛围Ambience
环境氛围是给游戏带来先天的外观和感觉的所有东西。
现在的游戏能够包括各种各样的氛围特点,从而创造出一种身临其境和投入的感觉。
设计师能够暗示故事背景,使得。故事应该作为游戏本身的一部分来展开,而氛围使用背景故事来影响每个单独的元素,以便在游戏中最终统一。
对环境氛围的贡献因素分为:声音、视觉、触觉。
6.1.1 声音
关于游戏中声音的卓越之处在于,大多数时候你都不会注意它,这意味着它能工作在你的意识之下,把你吸引到游戏世界中,而你却甚至没有意识到它。
音乐可以增加游戏的氛围感、音效也是如此。
声音不一定只是增强氛围,也可增强游戏的可玩性。
6.1.2 视觉
1. 注意细节
游戏通过遵循同一的外观和感觉来实现内聚。
风格也应该统一,当某种艺术元素与其余的风格不适应时,其结果是不和谐的。
6.1.3 触觉
所谓的触觉,并不是指从字面意思上理解为触摸到的感觉,而是指通过游戏的外观和感觉所传达到肉体上的印象--可以说是游戏的操作。
设计文档应该总是传达游戏环境的物理感,以及该环境看起来和听起来感觉如何。
6.2 界面
理想的界面是透明的。
设计师的意图是使各种鼠标点击方式,成为玩家根深蒂固的习惯,玩家在游戏世界中几乎无需思考就可以让事情发生。
透明不一定意味着不可见。可以通过增强外观和感觉来保持界面的透明。这就是所谓的“隐藏在简单视图后面”的方法。
一个很有必要性的优点:每种物种都有自己独特的界面,这些界面给游戏体验增添了趣味。
案例分析6.3 把界面、外观和感觉结合在一起
最大限度的减小界面对氛围等方面的干扰程度。如把保存游戏的属性做成游戏中的一个物件。
案例分析6.4 有时少就是不好
如果无法使界面成为透明的,至少不要让它妨碍玩家。如:做成可自动隐藏的底部横条。
另一种界面设计方法是使得游戏控制更加直观,以便计算机能够预测你想要做的事情。如鼠标右键单击NPC,被解释为攻击;单击空位,则被解释为移动。
第三种选择是根据玩家到目前为止已做的事情来预测玩家希望或打算做什么。
6.3 故事描述
6.3.1 描述故事的技术方法
1.使用障碍
游戏中必须有障碍,玩家必须自己弄清游戏故事背景,从而实现了一种认同,这是自白地展示人物情节所无法实现的。
2.使用预示
通过预示,让玩家为游戏的故事做准备,即提供即将来临的事件的预告,在介绍性的片段中预告未来将要发生的事情。
3.个性化
故事讲述个性化时,玩家才会关注。
与另一个故事、电影或游戏产生共鸣,是愚蠢的,这种共鸣就是剽窃,共鸣需要原创。
在游戏中,玩家体验变成了故事,游戏故事的情节要素应该通过动作来发现。游戏室一种探索性的媒介,玩家是聪明的,因此设计师应该省去线索,只种下种子,相信玩家会在瞬间领悟,把所有情节要素拼凑出来。
6.3.2 转折点
没有人预料到这一点--剧中人物没有预料到,读者也没有预料到,这就是所谓的转折点(plot point)。转折点使得故事围绕新的令人吃惊的方向发展,这样激起了玩家对故事的兴趣,并扩大了故事的范围。
案例分析6.6 意料之外的情节发展
转折点可以用于设计:冒险游戏、竞赛游戏、co ole游戏、动作游戏和战略游戏。
转折点分为:逆转、发现和灾难。它们可以互相组合使用。
6.3.3 悬念
有很多非常有效的技术可用于创造悬念,以便玩家预期到后面会遇到麻烦。
应该在游戏中使用更多的悬念的原因是:主角的任何死亡都会摧毁玩家的投入感,悬念允许设计师给玩家创造恐惧和预期,而不必求助于“保存游戏”的属性。
6.3.4 对话
6.3.5 主题
首先,游戏不应该回答问题。强迫玩家回答游戏主题的问题更为糟糕。故事是在玩游戏的过程中产生的。你无法知道玩家所获得的确切体验,也不知道他或她对你选择的主题得出什么结论。
应该用细节来给故事增添特质。
6.3.6 结局
故事的结局应该是:艰难的胜利、不显而易见、获得满足、一致(结局必须与以前的风格、主题和情节发展保持一致。)、完满的结束。
6.3.7 变化
故事的趣味价值在于:发生了某件导致现状剧变的事情。所有的故事都设定在一个悲惨时代。
edwardwewe
2007-08-04 11:39
第7章 包装 Wra ing Up
软件工厂模型无法适应不断大幅度变动的设计过程。为了给预料之外的事情留下空间,适用试验台作为设计过程的一部分。
然而,不提倡通过演进过程将试验台转化为游戏本身。建议使用试验台来为项目创建游戏设计和技术架构,然后通过迭代方式(所谓的螺旋式开发)来完成最终的游戏。
软件工厂模型中的那些迭代的主要目的不是为了演进设计,而是使该架构聚焦于设计。此外还有其他方法,每种方法都有其自身的时间、金钱和风险成本。
7.1.1 游戏概念
游戏最初从一个原始的概念开始,首先从游戏的基本特性的描述开始,特定的规则可能会变化,但基本特性是你的游戏最终会具备的。
7.1.2 为变化做计划
7.1.3 技术
每隔几年处理器的速度会显著提高,内存容量和硬盘空间也是如此,更多的内存和更快的处理器总是意味着更好的AI。
Windows使得游戏开发更加容易。技术既是对开发的恩赐,也是一剂毒药。它变化得如此之快,当你第一次设计某款游戏时,你认为该游戏的速度是X,结果却在一年内发现它的速度是2X。随后就是围绕新技术重新设计,这正是许多项目失败的原因。
必须准确预测到未来游戏发行时刻以及主要流行时段,技术的发展水平,以使游戏不落后于未来某个时刻,这样现在的开发也必须必须以未来发行时刻或者未来游戏主要流行时段的标准配置来设计。
随着游戏的容量从软盘到CD-ROM,又很快到DVD,开发一款顶级质量的游戏的成本越来越昂贵。
7.1.4 开发
形式化过程是针对大型团队(10人或更多)的高效媒体开发方法。软件工厂模型是一种形式化过程的模板,它的关键力量在于能够计划、预测和跟踪--当开发一款轰动性的游戏的成本变得如此之高时,这时至关重要的。
技术和创新之间需要恰当的平衡。进度是做出来的,不是跟踪出来的。
7.1.5 团队
采用很小的团队,确保团队协同工作。
7.1.6 成本和期限
建议:在迭代(反复)或“分层”过程中开发。在每个层中,首先计划该层想要实现的目标。然后构建层,再测试,最后复核最初的计划完成了多少,以及需要作出那些变化来适应下一层。所构建的每一层都添加或提炼一个模块结构中的特性,该模块结构允许独立地检查代码元素。这个过程的最终目标是达到“完成”--“完成”不是不可改进的游戏,而是定义为一个持续的过程,在该过程中的任何阶段都可能画出一条进一步开发的界线,同时仍然是一款可交付的游戏。
AAA级的原创游戏一般需要2-3年开发周期,风险正在变得像推出一部顶级电影一样大。
7.1.7 游戏可玩性
不好的游戏可玩性设计:
1、通过阅读手册才能玩的游戏
2、过多强调故事讲述和全动感视频(FMV),游戏应该是交互式的,因此故事讲述和FMV只会分散注意力,即使故事的质量很高。
3、不允许通过键盘完全控制游戏的界面。鼠标界面对于学习游戏是必需的,但对已经学会游戏的玩家,被迫重复地使用鼠标只会使玩家的手受到伤害。
4、滥用FMV
5、煞费苦心的迎合人类精神元素中最卑鄙的部分。
6、不必要的暴力。控制得不好的设计。幼稚的情节主线。
经济学、竞争、合作、多玩家都是游戏的有趣元素。
7.1.8 未来展望
交互性不应该迫使玩家作出选择;它应该让玩家对自己的选择拥有更多的控制。
游戏必须调整以吸引非游戏玩家。
创作易于学习,但难于掌握的游戏是游戏设计师的一项崇高任务。如果游戏容易理解并且玩起来有趣,那么你会发现游戏的受众会非常广大。这一切都归结于--FUN(乐趣)。
edwardwewe
2007-08-05 13:59
第8章 游戏设计的未来 The Future of Game Design
8.1 设计的必要性
根据直觉、无计划的、“看看结果怎样”的构建方法是不可靠的,它有可能会倒塌。
8.1.1 别害怕做计划
游戏可玩性的规约是个渐进式的文档,它不是圣经,而是一些远景描述的组合、一份设计蓝图、一个变动的资料库。
案例分析 8.1 设计节省了时间
设计的存在并不意味着设计师必须是项目唯一的作者。正式设计肯定也不意味着开发人员必定成为无法把握自己命运的奴隶。好的想法或许来自头脑风暴式的集体讨论。开发过程中设计可以也一定会有变更,因为规格说明是个渐进式的文档。
设计(特别是迭代式开发的设计)绝非要在一开始就是100%正确的。初步设计为你提供最初的“最佳猜测”。
创意是可以计划的,对于开发人员,应该努力科学地对待。从开始设计,可以应用基于游戏理论和故事讲述技术的原则。这些原则可以节省数千小时的开发时间,这意味着节省了数10万美元。
8.1.2 为什么进行设计是很好的行为
优秀的设计可以鼓舞士气、节省预算、也利于游戏本身。
1. 士气
明确的工作目标:团队将为一个共同的目标努力奋斗而热情饱满。
共同的远景,整个团队都可以访问、分析及评论该远景,关卡系统能让整个团队集中于分阶段的开发游戏。
2. 预算
一个设计错误直到测试阶段才被发现并修复,其所花费的时间是错误在设计阶段就被发现并修复的10倍。对于今天日益大型的项目而言,该统计数字有可能更糟糕。
任何详细设计都有进度安排、资源清单、控制和跟踪。少了这些将无法正确制订项目预算,而如果没有准确的项目预算,项目则很难获得资金。
3. 游戏
对于任何需要加入新的或未尝试的特性的产品而言,一个迭代式的或基于等级化的设计更是至关重要的。假如你绝对且积极地希望能按时交货,那么等级化体系将有助于你按时交付你的设计。如果开发偏离进度,你也许不得不删减一些特性(或甚至完全移除),但设计中内在的模块性允许你仍能对产品加以控制。
案例分析8.2 及时更新设计文档
假如你没有一个设计文档,你会发现在交货的前一天仍在疯狂地修改游戏可玩性。这么做永远不会是一个好主意。如果你在早期就没有正确地做,又怎么能指望用最后一刻的修改来解决问题?
一个清晰的设计文档的好处在于,它不仅描述并计划了你所期望的游戏可玩性的特性,同时还为你提供了一个合理的框架,在此范围内你可以进行任何所需的变更。
8.2 游戏设计的本质
8.2.1 它是原创的吗?
没有几款游戏是完全原创的。原创性在任何情况下都有其相对性。但如果你的设计是值得开发的,那就必须有一些其他同类游戏所不具备的特性。
原创的特性不必非得是游戏可玩性的特性。只要在某个方面做到特立独行,当游戏完成时,它将完全不同于市场上所有的其它游戏。
紧接着初步设计阶段,就要编写一个USP列表(特殊卖点),定义出你的游戏如何有别于其他游戏。列表中的内容是使你游戏变得特殊的方面,并向开发组证明值得投入一到两年时间来开发该游戏。假如概念中没有原创的内容,就直接扔掉。
8.2.2 它有一致性吗?(游戏的核心元素、外观、感觉都保持一致)
优秀的游戏设计是围绕着一个核心远景构建的。游戏构造完成后,如果需要变更,核心远景能让它们保持最终的目标。它确保所有游戏特性都是为了一个主要目标而服务的。
一个核心远景将游戏的外观和感觉连结起来,这些点缀得元素不但能互相支持,而且能提高游戏的体验。当所有的游戏元素都朝着一个方向运作,那么你的产品内在的和谐与共鸣,就保证了游戏外观的审美要求。
另一方面,一个不连贯的游戏与艺术风格的结合只能导致混乱。
8.2.3 它是互动的吗?
游戏应该提供最大限度的互动性。
高互动性和低互动性
当今多数电脑游戏使用高互动性,玩家都有强烈主动的角色。故事情节应随着玩家的所见所为直接展开,因为玩家期望自己的角色是积极主动的,如果被迫坐在那里听故事,那么玩家很快会失去耐心。
最优秀的设计会避免大篇幅的对话、大块大块缺乏技巧的说明文字,以及长时间的全动感视频(FMV),而这些都是玩家无法控制的。可以采用含蓄地讲述故事的方法,同时也节约了时间,未必需要许多的对话说明。
另一方面,低互动性则有反作用。在最简单的关卡中,表现形式是观众在观看演出时的嘘声和欢呼,只要演员注意到了,那就是互动。当你将音乐CD的音轨编排成泥所需要的顺序,或在电视上换台看节目,那些也是低互动性。
低互动性是娱乐性软件进入较大市场的一种方法,因为大多数人会选择反应型的休闲活动(如看电视或看球赛),而较少选择积极主动的休闲活动(表演或参加球赛)。
8.2.4 它吸引人吗?
游戏是一系列吸引人的选择,而吸引人的选择也是困难的选择。
所有吸引人的选择是困难的,并不代表所有困难的选择是吸引人的。
不要纳入只会让玩家生气的那些特性。出色的游戏可玩性设计的特性是:它能给玩家展示好的和坏的方面,任何一面都会受其他因素影响而发生变化,从而使得作出选择不是一件小事,但如果玩家选择正确,他应该得到成功的奖励并给予进一步的选择机会。
并非在游戏中发生的一切都必须是游戏可玩性,但必须保证总是吸引人的。引起玩家注意的是其中人物发生改变、发生令人惊讶的事件,及玩家从新的角度看问题的那些故事。
假如互动性能为玩家提供真实的情感或道德选择的机会,那么它在游戏故事中就是有意思的。
任何发生的事件,如果太过于明显,则不管互动与否,都会让玩家觉得乏味,因为思维是需要刺激的。
8.2.5 它有趣吗?
可以在游戏中包含许多内容,所以就要确保不管游戏中有什么内容,都是为了增强玩家的快感。
技术必须为游戏及玩家的需要服务。永远不要让自己迷失在一个很酷的点子、技术或神奇的效果中。经常先问一句:它有趣吗?
8.3 设计的未来
8.3.1 让设计更具共性
游戏设计中至高无上的革新(有别于游戏内容),是从共性设计开始的。
设计时从共性向细节方向进行争论,从而使得概念设计更加便捷和健壮。
资源的设计并非完全从草稿开始,而是采用已有的模板:非本地的、可造的、会减损的,或者更多复杂属性,许多属性按照类别分组,到需要的时候,把需要的属性调出来,加以重用,这种做法是非常方便的。
8.3.2 特色设计 No ymbolic Design
在过去,设计采用典型传统的方法,用一种正规的解决方案解决所有的问题,已经成为根深蒂固的概念。随着3D显卡技术和计算机运算能力的提高,通过避免使用一般的典型性的捷径设计,创造“永恒经典的”游戏开始变得可能。
案例分析8.3 比较传统和特色设计
魔兽争霸:模拟经济
凯撒2:用方程式:玩家努力在脑中建立一个抽象的等式与游戏中的基本方程式匹配。模拟经济和游戏可玩性变得不太明显,减少了游戏的沉浸感。
8.4 游戏的未来
设计师在下一个10年中将把游戏软件从一个嗜好层面变为一种新的艺术形式。
8.4.1 下一个10年
更易玩:人们期望那些拿到就能玩的游戏。
更灵活:用户在使用产品时有更多选择。
更真实:大幅度改进的AI、物理学和图像将改变未来的游戏产品。
更具娱乐性:不再为游戏系统所困;大众市场对设计糟糕的产品不再有耐心。
完全不同:只有顽固分子才会一直将今天的游戏玩到底。
8.4.2 软件的强项
USP独特卖点,与其他媒体相比的优势:
深度:背景更为丰富多彩,游戏世界的成员有其独立性。
自由:互动真正的好处在于用户可以根据自己需要获得游戏。
持续性:你可以投入几百个小时沉浸在脱离现实的娱乐活动中。
多人参与:娱乐性软件授予几组人共同叙述的创作能力。
多人游戏的发展趋势及游戏世界的特性:更出色的AI和物理学应用,使效果更逼真。互动性的大幅度提高,能让玩家选择如何使用该游戏(更先进的AI会有帮助)。
***代码并不能使游戏得到加强,反而破坏了游戏。
游戏应当尽量授予用户真正的选择权利。玩家可以决定他们面对的对手类型,即可以选择电脑玩家的难度。让玩家选择如何去玩,而不是将他们限制在设计师的设想之中。
8.4.3 创意的十字路口
1.游戏如故事
在游戏中需要注入情感因素。把游戏开发的过程看作是艺术创作。
通过改进AI及全面的物理系统来完成一种新的互动式的讲故事方式,让玩家参与到创作故事的过程中来。
任何一种被简略成走过场式的游戏,都只是一种机械化的游戏。
一个故事是由事件和结果堆砌而成。不一定非要讲故事,故事是可以发生的。一种是线性的讲故事方式。另一种是,设计师创造出一个丰富的环境,让玩家在其中自由发挥、互动并创作他们自己的故事--这就是应该让游戏实现的事情。
2.作为视觉艺术的游戏
游戏如运动
游戏如玩具
8.5 游戏如娱乐业:利润、版权、知识产权、发展等问题
8.6 前进之路:创新
edwardwewe
2007-08-05 18:44
第2部分 团队组建和管理 Team Building and Management
第9章 当前的团队管理方式 Current Methods of Team Management
一般的游戏开发公司进行软件开发的基本套路:
1、找几十个程序员。尽量保证他们各有所长,例如:AI专家、图像编程专家、声音专家、水平高的程序员,以及一些呼之即来的人员。
2、任命古怪的天才为首席程序员,这是因为通常他就是那种可以在梦里编出《雷神之锤III》、无所不知的人。
3、把这些人集中在一个小屋里面,然后分派几个美工听候他们调遣。
4、给他们18-24个月的时间编程,周期性地激励他们一下,给他们加点软饮料和比萨。
5、做好花费更多时间和半途而废的准备,也许游戏开发者们会疲惫不堪。
--老式的“拼命编程”的方式
9.1.1 游戏业的起源
1. 从前
游戏业主要集中在美国和英国、程序员都是业余爱好者、计算机的能力很弱、游戏项目较小、代码不能重用、硬件资源非常有限,对内存有严格的限制、追求小巧有效的代码、不存在硬件不兼容的问题、不需要担心抽象层的问题(a traction layer)、团队较小,几乎不需要沟通、
2. 现在的情况
代码的可读性比紧凑性更重要,处理器的能力、内存、存储空间提高,提倡重用代码,项目的规模变大
为了解决日益增长的团队的管理需要,有效的管理结构和交流沟通,团队管理已成为游戏开发的绝对必要的因素。
9.1.2 游戏开发者的难题
游戏开发者可能非常个人主义,也可能非常聪明,这些优点同时也是问题。如果没有很好的管理,让团队自由发挥,对项目是有害的。
1. 谁是领导者
当把一组以自我为中心、智商非常高的人聚集在一起时,通常唯一可以预见的结果就是:麻烦。
针对这个问题,微软有个名词:合作。
2. 产生的冲突
过分注重技术前沿,会将注意力转移到技术上面而不是游戏性上面,这是游戏业面临的最大问题。
随着技术的升级,游戏开发转变为技术军备竞赛:更大、更好、更快、更多。如果这样持续下去,游戏的乐趣将会越来越少,越来越像技术展示。
“更多的技术,更少的游戏性”不是我们希望的。游戏开发的重点应该放在游戏性上,而技术是第二位的。
卓越的游戏是技术和完美的游戏性、原创性的结合体。
9.1.3 存在问题的开发者
游戏开发者遇到的问题类型是:特立独行的人、自负的人、害羞的人、爱睡懒觉的人、自命不凡的人。当他们的缺点日益明显的时候,会产生很多问题。
1. 特立独行者
特点:技术水平很高、知识面很广、喜欢一种做领头羊、一般工作责任重大。
特立独行者编写的代码除他之外通常不可读,如果特立独行者退出团队,剩下大量难以读懂更别说维护的源代码,唯一的选择就是让其他成员彻底看懂他的代码,或者重写代码,接受项目拖延。
2. 自负的人
特点:非常聪明、技术娴熟、但缺少人际交往技巧,却有与人错误交往的技巧、妄自尊大、自尊心脆弱、会攻击他认为对他有威胁的人的才能和技术,会让比不上他技术的人感到自己完全无能,造成团队的紧张气氛。
自负的人是对团队的最大威胁。
3. 害羞的人
特点:刻板、性格孤僻、交流困难、不太爱接受建议。
4. 爱睡懒觉的人
特点:不服从管理、难以接受权威。
5. 自命不凡的人
对所有事情都涉足,但是什么都不精通,对自己的技术过于自信。
9.1.4 加班时间过长意味着项目失败
如果开发项目是以牺牲社会生活为代价的,那就说明有些地方一定出了问题,原因通常是如下二者:
(1)项目计划得不好,时间少、任务重。
(2)项目开始的时候时间计划得不错,但是主要的开发问题没有及时发现和纠正,以致项目最终要赶工。
第1个原因是不可原谅的,开发团队没有理由引入一个时间上明显不现实的进度表。
但是,实际生活中,不可能完成的项目的进度表一般是受发行商的压力(比如发行商需要在某个日期发布游戏搭卖、搭售等),或者季节的影响(比如:圣诞节)制定的。
9.1.5 规则的例外
每个规则都有例外。有一个延迟发布的例子就是因为更换了整个图形引擎。
edwardwewe
2007-08-06 14:00
第10章 角色和部门 Roles and Divisio 10.1 分派人员
一个项目成功与否关键因素通常是:接受任务的人以及分组方式。
角色与部门:
部门 角色
管理与设计 软件设计师、首席架构师、项目经理和游戏设计师
编程 首席程序员、程序员
美工 首席美工、美工
音乐和杂项 音乐人、音效技术人员和杂项技术(如动作捕捉技术)
支持和质保 技术支持、首席质保员、质保技术员、游戏测试员和技术支持人员
这些角色适合于软件工厂,这是一种有效的软件开发技术。
10.1.1 管理和设计部门
这个部门直接影响游戏开发的管理水平。管理水平低就会模糊高水平技术人员和设计人员之间的界线,尤其是在小公司每个人都充当很多角色时更是如此。
这种一人多职的情况在游戏设计领域尤其显著,主要因为多数人对如何设计游戏有着不可动摇的信念,许多管理者和CEO都相信自己是优秀的游戏设计师。
不可能总是在合适的位置安排合适的人,因为程序员的技术熟练,所以不管他的管理能力如何(或者没有管理能力),很多程序员都担当了管理角色。
1. 软件设计师
软件设计师的任务是:将游戏设计变成具体的技术要求,预估实现这些功能所需要的时间和精力。软件设计师通常和游戏设计师和首席架构师一起准备详细的技术要求,并把要求写成满足项目需要的技术架构文档。
2. 首席架构师
首席架构师的任务是:和软件设计师一起,根据技术要求,写出一套模块说明。
首席架构师对项目的总体架构负责,详细的模块设计通常留给首席程序员来做。某些情况下,这些任务还要进一步分派到首席程序员团队中的程序员来做。
注意:软件架构师不等同于经验丰富的程序员,尽管后者更具编程技巧。通常,软件架构师是全职的,因为修改说明、检查已编写的代码是一件冗长,但是很有必要的工作,软件架构师几乎没有时间编程。
3. 项目经理
项目经理的任务是:安排软件设计师和首席架构师布置的工作量,制定有条理、有效率的进度表。项目经理处理团队成员之间的关系,充当项目团队、管理部门以及市场部门的界面角色。
4. 游戏设计师
游戏设计师的任务是:设计团队将要开发的游戏。游戏设计师写出最初的开发文档,然后再把它写成详细的游戏设计文档。
游戏设计师和软件设计师一起探讨游戏设计的可行性。
10.1.2 编程部门
这个部门编写大部分代码。
这个团队的结构相对简单:一个首席程序员(负责整个架构)管理一个程序员团队,每个程序员负责程序的不同部分(比如图形子系统、AI引擎,或者控制系统)。有时他们的工作可能会交叉,但是大多数情况下,每个程序员的工作界限很清晰。
1. 首席程序员
首席程序员的任务是:协调和监视程序员团队,保证按照进度完成任务。
首席程序员和项目经理沟通,保证按照进度表做事并汇报进度,这样能够精确地跟踪项目进度和尽可能方便地处理任何问题。
首席程序员通常是团队中技术最好的程序员,他们主要负责软件整体的完整性。首席程序员用一半或3/4的时间编程,其他时间用于应对管理和人事问题。首席程序员通常根据技术能力选拔,没有其他标准。
2. 程序员
程序员的任务是:工作在开发过程的第一线,按照从首席架构师和软件设计师那里拿来的详细的技术说明进行编程。
程序员通常负责程序的某个子部分。
程序员也负责开发过程中的所有标准程序,例如初始开发、单元检测、完整性检测、修正bug。
程序员应该不用花时间研究如何做就知道怎么能够最好地完成任务,不存在研究,程序员的任务是简单地将详细说明转化为代码。
10.1.3 美工部门
这部门包括:创意美工、建模人员(通常擅长人物或建筑)、动画师、灯光和材质师等。
1. 首席美工
首席美工的主要任务是:与首席程序员和游戏设计师们沟通,保证游戏中的美工作品符合要求。
首席美工也要保证所有美工的作品和其他人的协调,和整体的项目的视角一致。
首席美工通常只专心做一个项目,这样使得工作只有一个中心。
首席美工大约花10%-15%的时间用于管理,其他时间用于设计美术作品。
2. 美工
美工的主要任务是:完成一个或多个项目需要的作品。
这里的作品可以是:游戏作品、背景图片、手工设计、广告和包装设计或其他相关工作。
美工可能会同时做几个项目,尤其是创意美工和情节串联图板美工。每个项目都有一个首席美工,给所有美工布置任务,这就意味着每个美工不得不跟多个首席美工沟通,这一点跟程序员不同。
10.1.4 音乐和杂项部门
这个部门包括做杂项的人,包括完成程序,比如音乐、声音、开发环境。
1. 音乐人
音乐人通常和游戏开发人员分开工作。创作音乐是非常独立的活动。大多数情况下,音乐人根据动画或演示甚至心情的描述来创作音乐。
如果需要交互音乐(根据游戏内容和发展变换节拍或心情),音乐人就很有必要和团队的其他成员进行详细讨论。
音乐人的角色在游戏开发过程中变得越来越重要。
2. 音效技术人员
音效技术人员的工作是生成所有游戏环境(不管它们是***声、按键声或是死亡的尖叫)所需要的音效和环绕声。
游戏设计者可以创建音效列表,音效技术人员可以根据需要的格式制作音效。
3. 杂项技术(如动作捕捉技术)
游戏的完成还需要其他各类技术人员完成另外的任务,有些技术人员是公司内部直接参与项目的,而有些是外部人员。外部人员可以做公司本身不能做的工作。
这类例子有:软件本地化、FMV电影中的演员的本地化等。
10.1.5 支持和质保部门
这个部门包括保证游戏可玩性和发布质量的测试团队,他们定性、定量地测试游戏。
定性就是将游戏性磨练到完美,成为一件精美的作品。
定量就是纪录错误数量并减少错误。这是早期游戏开发的质保部门的主要任务。
1. 首席质保
首席质保的任务是:指导质保团队和项目经理和游戏设计师合作,保证从游戏可玩性和功能性的角度彻底地测试游戏。
首席质保起草测试计划,并把不同的任务分给质保技术人员。测试的结果通常会汇报给项目经理。
2. 质保技术员
质保技术员的工作是测试程序员编写的代码。
首席质保给质保技术员的计划应该执行所有的代码路径,所有的代码都需要测试。不管代码中的路径简单还是复杂,都应该为所有路径编写测试例子。
质保技术员的职责是:和负责具体模块的程序员沟通,保证为每条代码路径编写测试代码。
3. 游戏测试员
游戏测试员的工作是:测试游戏是怎么玩的。最初,游戏测试员是该项目的程序员和美工。
正确的游戏测试有5种选择,选择哪一种取决于很多因素,例如公司的规模以及游戏测试的可用时间和金钱。
.用普通员工,他们不一定总是合适的,但是他们对这个项目再熟悉不过。
.给大学生每小时几美元来玩游戏。
.雇佣长期的游戏测试员。对大公司最适合不过了,如果有足够项目,对任何公司也是划算的,即使没有足够项目,也可以让他们做公司的其他事。
.如果工作量不稳定,游戏测试员不总是有活干的话,可以考虑找外面的游戏测试代理公司。
.公众测试对于大多数公司来说都是最好的。在公测中的游戏软件几乎是完全版的(包括绝大部分的功能)。用来测试的软件可以对某些选择好的测试者有所控制的发布,也可以通过网页或杂志赠送光盘的方式发布。在测试版受限制和受控制的情况下,公司可以选择性的提供奖励,比如免费得到最终发布版。
4. 技术支持人员
技术支持人员的任务是:支持和保持公司其他部分需要的计算机环境。
责任包括:维护公司网络、保证所有机器的软件正确***、完成硬件升级和其他维持公司正常运作需要的任务。
10.2 提高士气和工作环境
雇员的士气和工作环境的质量应该被当成无价之宝来对待。
提高雇员生产力的最大因素:高昂的士气+好环境=好工作
提高士气和改善工作环境
对士气有利的因素:
.信息通畅
.内部竞争最小化
.理想的进度表
.公平付酬
.好的工作关系
.基本规则
.最新设备和软件以及良好的工作环境
.固定的工作时间
.建设性的福利
1. 信息通畅
应该允许整个团队获得尽可能多的关于项目的信息。
不应该有秘密,这些只能令人反感。所有可行性信息应该有打印版或电子版,努力保证每个人都知道如何找到信息。
如果某些信息在公司外部很敏感,有2种方法。第一是需要所有员工签订不能泄密的协议。第二是只发布不敏感信息,然后解释没有发布的信息具有敏感性。
2. 内部竞争最小化
不管两派之间的内部竞争是两个员工之间的,还是整个团队之间的,造成的破坏性总比建设性多。
合作本身可以提高士气,同时也增加了提高生产力的影响力,从而进一步提高士气。
3. 理想的进度表
进度表必须是现实的。给开发者制定过于大胆的进度并试图说服他们这是克实现的会让士气一落千丈。
4. 公平付酬
应该根据员工的工作经验确定员工的工资。不能让员工无偿加班。
5. 好的工作关系
不同组的员工互相之间必须信任和尊敬。
6. 基本规则
清晰、简单易懂的行为和职业规程可以提升士气。如果确定了上下班时间,就应该遵守,员工应该准时上下班。
7. 最新设备和软件以及良好的工作环境
让办公室成为愉快的工作环境。
8. 固定的工作时间
严格制定的工作时间可以减轻员工的压力、提高效率、减少疲惫。
9. 建设性的福利
让员工心存感激
10.2.2 士气高涨的告诫和警告
有些行为可以短期提高士气,但是对长期的提高不利。
几个错误鼓励士气的办法:
没有正式服装:员工会像在家一样行事,办公室就要像办公室,与家里区别开来很重要。
时间自由:造成工作时间长,员工过于疲劳,影响士气,写出低质量代码,病假缺勤严重。
过度随便的工作环境:把办公室搞得像个未成年人的卧室,违反了办公室和家分离的规则。工作的目的是为了制作游戏,并不是为了玩游戏。办公室应该具有职业环境,因为职业环境能够造就职业的员工。
10.3 分散风险
一个人可以充当一个或多个角色,分散每个员工承担的角色,尤其是重要角色不集中于一个人或少数人,降低失去担当那个角色的员工的风险。
edwardwewe
2007-08-08 12:48
第11章 软件工厂 The Software Factory
软件工厂指的是用类似标准工厂(如汽车厂)那样的技术来生产软件的方法。
软件工厂方法集中且简化了可以用在几个产品中的通用模块。
它利用大规模生产的优点使某种任务既容易又有效,还能保证很好地维护和支持一系列产品所使用的核心工具和库。因为库和工具包更为丰富,所以很容易开发后续产品。
软件工厂对具有通用功能的项目很有效,但是要记住这种方法也许对某种具体产品不是最适合的。
软件工厂对开发系列产品尤其有效。
应该放在可以重用模块中的通用任务是:
数据文件加载
硬件***
硬件配置
软件配置
自定义CODEC(压缩和解压缩)
加密/解密
窗口和图形功能
基本AI组件
用户输入
软件工厂的概念简化了很多任务,如建立通用库文件和工具包,让开发人员集中精力应付那些需要从头编写的代码。
11.2 为什么使用软件工厂
软件工厂的优势和不足
优势 缺点或不足
缩短项目所需的平均时间
第一个项目花费的时间多
使跨平台工作容易 必须为每个平台开发可以重用的库
代码更可靠 代码可能更通用,但是很难开发
代码可以重用,可以维护
代码需要从头编写
开发人员之间可以沟通 新手必须学习不熟悉的库
增加工程进程的可视度 需要更多管理
增加开发人员专业化程度
灵活性差
解决游戏开发问题
软件工厂方法可以解决许多游戏开发的普遍问题,比如:多平台操作,减小风险(沟通思想、代码重用、代码维护等)。
1. 多平台操作
必须针对支持的每种平台编写操作界面背后的代码。
另外需要考虑的是怎么能够确定用最有效的方法编写了对所有平台都可用的代码。找到对每个要支持的声卡、显卡都有彻底深入了解的开发人员是不可能的。要写的代码很多,也不可能有时间研究这些声卡、显卡的知识。
中间件可以解决硬件问题,可以不用直接对硬件写程序。比如:DirectX、NDL公司的GameEmbry、BioGraphic技术公司的A.I.Implant
中间件库文件对于不同的平台有细小的差别,如果要真正实现和平台无关,则必须开发为硬件提供统一接口的打包程序。
2. 减小风险
一个问题是失去关键成员。如果团队的某个成员在某个领域是专家,那么这个人就有危险性。
软件工厂通过鼓励多重冗余和代码重用可以帮助减轻类似失去核心成员带来的问题。
软件工厂的重点是在复用上面。如果多个程序员熟悉引擎且代码文档完备,那么人员的离开根本就不是问题。
文档是开发过程的重要部分,但是经常被忽略。
为什么使用软件工厂
软件工厂是一套用来开发可以重用的核心组件和系列产品要用到的工具。一开始这些工具和组件就按照可以重用和扩展的理念来设计。
这些工具和组件使用的开发方法经过严格控制和监视,写出完备的文档,以备需要用的时候查阅。工具和组件的任何升级都要经过完全的需求分析,严格按照标准行事。
这些工具和组件是整个过程中最重要的部分,它们的生命周期是整个系列产品,所以至关重要。
优点:完成普通任务的代码可以反复使用,节省开发时间和开支。
缺点:开发基本工具和组件要比编写具有特定功能的程序的过程要慢。它的效率只有在随后的项目中才能发挥出来。
另一种选择是对已经发布的软件发布升级的核心组件。使用这种方法就要小心了,虽然在理想情况下,修改的组件具有向下兼容性,但是这种方法将给测试增加很大负担。微软为了DirectX向下兼容费了不少力气。但是直到第5个版本,新升级的程序,还是会在已往可以运行的系统上出问题,好一点的时候系统性能下降,差的时间干脆无法运行。
理性地讲,可以像生产线那样开发最初的组件,然后团队只是组装。这样就结合了团队模型(热情有动力)和软件工厂模型(有效地利用劳动力)的优点。
11.3 组织软件工厂
11.3.1 软件工厂的结构
软件工厂的主要核心团队
小组 注释
游戏设计师
创造性的想法,撰写设计文档
软件架构师
检查项目设计,多个团队之间的交互
工具 关卡编辑员之类的团队
组件 开发低级、基于平台的代码
项目 用组件和工具开发游戏代码
研究 密切注意新技术的发展,研究如何集成低级组件的新思路
11.3.2 小组责任和沟通
软件工厂的每个核心组都有明确的角色和任务,任务很少有交叉的地方。即使是组间的交互,也有严格的渠道限制。
交互主要基于内部市场体系进行,每个组都是另外组的客户,所以应该好好对待。这就意味着互相提供与卖给外面客户一样服务质量的说明和产品支持。
案例分析11.4 有效处理问题的方法
匿名发表见解的好处是每个与项目有关的人都可以阅读,每个人都可以提出自己的观点,不用考虑个人之间的冲突和其它的政治因素。
主要问题是项目是否成功,而不是冒犯个人的敏感性。匿名有助于说实话,毕竟消息从哪儿来的不重要,只要这个消息出现了,而且是以最快可能的速度出现。
严格定义的团队结构,强制实施可以在初期发现大部分缺陷。
开发链中的问题发现的越早,用来解决问题所花费的时间和金钱就越少。在设计阶段解决问题比在准备发布阶段解决问题的花费少200倍。
信息可以通过没有经过准备的走廊会议、午餐或休息时间的讨论来传递,这些都是信息传递的重要机制。需要关心的是,这种非正式会议上出现的任何问题在采取解决方法或行动前,必须通过正确的渠道来沟通,也就是给每个人发言的机会。
1. 游戏设计组
游戏设计组负责最初的游戏设计和后来在开发和测试过程中的润色问题。
游戏设计组主要和软件设计组的交互通常依赖于项目可视化措施,遵循项目进度,而不是直接和另一个组联系索取信息。
游戏设计组的大部分时间花在研究新的设计方案和润色设计上面。
游戏设计组也和辅助声音和美工共同设计游戏的视觉和感觉。
2. 软件架构组
软件架构组是软件工厂的中央枢纽,它是游戏设计组和游戏开发组(工具、组件、项目和研究)之间的主要纽带。这个组的成员虽然很少实际编程,但是他们相对于开发组充当了传统的“首席程序员”的角色。
软件架构组的主要任务是将游戏设计变成技术设计文档,运用工具组开发的组件和工具、对这些工具和组件的文档进行必要的修改、根据研究结果开发新工具和组件。
软件架构组成员也为游戏设计者提供反馈,保证游戏是可行的,并且对游戏提出相关的技术建议。
软件架构组完全控制整个公司的设计和编程标准,包括:文件格式、接口定义标准、文档标准、目录结构、源代码控制标准、重用和维护非常重要的方面等。
软件架构组的成员完成代码检查,保证整个项目贯彻设计标准。软件架构组也监督组件、工具和项目的系统测试。
软件架构组通常囊括公司技术最好的成员。他们对结构设计很在行,能够开发出详细的、可以让程序员组成员没有疑义地看懂并执行设计要求。
软件架构组技术过硬,足以回答并解释程序员提出的任何技术问题。可以为程序员提供培训。
3. 工具组
工具组的主要职能是开发和维护工具,这些工具将被所有其他开发组使用。
工具重用有好处可以节省开发各自工具的时间。
案例分析11.5 工具重用的好处
1. 组件组
组件组开发低级模块。低级模块是与第三方的特定平台的库文件、通用模块和其他类似模块之间的接口。
组件最重要的设计目标是组件可以完成一项任务并且完成得好,这样可以使在项目建立阶段,混合和搭配组件变得很容易,但并不是说它们只为某个项目设计。
2. 项目组
在项目最初启动的时候,项目组的任务是做出实用技术的原型。
项目开始之后的第一个任务是开发所有必要的组件。
开发原型可以减轻恐惧,也可以用来进行可行性研究。
原型和组件开发完之后,如果可行性研究没有发现任何需要返工的异常情况,项目就可以开始了。
项目组的任务就是协调组件的整合、写连接代码、找到相关组提供美工和音效。这个任务也由游戏设计组来控制,项目组会保证艺术组和音效组的产品格式正确。
项目组和测试组配合,保证项目总是可以交付。可以交付的意思是即使功能还没有开发完全,项目也总是在可执行、可发布的状态,用户选择了没有开发的选项的话不会崩溃。已经存在的功能必须可以正常工作且稳定。
游戏设计组预先定义好的机制与项目组交互,阻止延期和保证项目如期完成。
3. 研究组
研究组由架构组领导,研究组的职责包括研究将要在核心库里包括的其他项目使用的新技术并开发它们的原型。
研究组的目的是变未知为已知,消除其他组在开发道路上的最大危险。
4. 辅助组
辅助组对于项目完成很关键,它包括:音效、美工、测试、销售、管理。
美工和音效组是为游戏提供美工和音效的,它由架构组直接领导。
测试组和架构组的联系最密切,它由架构组直接控制并向架构组提交报告。测试组的主要职能是集成、系统化和兼容性测试。
11.4 实施软件工厂结构和方法
11.4.1 开始
首先需要的是公司范围的开发标准、代码和文档的指导原则。如果每个人遵循同一种规则,那么代码和文档就会更容易阅读和维护。
建立内部网站,实施项目可视性步骤,让每个人都知道项目进度。
这些事做好之后,设计师检查现有或即将开始的项目,确定合适作为核心组件的功能,尤其是将要在未来项目中需要的功能,然后就可以开始开发组件库和建立原型。
可行性研究和原型组件测试之后,应该把工作放在核心组件上面。成立组件团队,开始开发由研究组研究的组件。代码不应该从原型开始,因为原型代码不是真正代码的基础。原型代码只是名副其实的:原型,不要试图使用它,记住那些用原型开发杀手组件的教训。
完成初始组件后,使用组件完成未编写的功能。试图代替已经写好的代码是不明智的,因为可能涉及代码重写,有可能推迟现有的时间表。
首先开发立即需要的组件,然后可以开发基本的、有预见性的、后续项目可以用到的组件。
11.4.2 知道什么时候使用哪个团队--并行开发时间表
11.4.3 轮换、重新分配组员
软件工厂的一个有力特点是可以在各个团队之间传播知识。这不是没有风险的,但是不这么做会经历更大的风险。
案例分析11.6 必不可少的注释
11.5 软件工厂的适用性
软件工厂适用于中等规模到大规模的企业。软件工厂也可以小规模进行,只是减弱了平衡机制,也不能有独立的辅助团队,但这对后续项目是有好处的。
edwardwewe
2007-08-08 12:50
第15章 游戏业的未来 The Future of the Industry
游戏业还相当年轻。我们经历了成长的困惑,经历了任何想法都是可行的、任何人都可以设计和写游戏的黄金时代。甚至经历了作坊式程序员和宣称是百万富翁的少年开发者的年代。
现在,游戏业发展到了青少年时期。所有的事情都还是如履薄冰,也很酷,但不像原来那样喜欢实现古怪的想法,开始着眼于彻底的商业化,主要原因是需要巩固市场。
15.1 游戏业的现状
15.1.1 第1个时期
这个时期游戏业是由许多天才的业余爱好者开创的。早期,热衷于此的人可以在业余时间编游戏赚很多钱。那个时代是古怪想法的天下,什么样的创意都可以卖钱,只要是好游戏就行。
持续低质量的游戏商家会垮台,剩下富有竞争力的公司,他们想办法让自己的产品区别于其他竞争者,以便取得更好的业绩,受到更大的欢迎。
最臭名昭著的方法就是绑定销售,即游戏和电影或书一起销售。
低水平公司被进一步淘汰,剩下的公司创造了技术优秀(但不一定很有创意)的产品。
15.1.2 第2个时期
这个时期大众控制台开始出现。
在更多公司发现控制台适合什么样的游戏之前,新一代新颖、激动人心的软件打入市场,在普通计算机上可以运行的游戏层出不穷,几乎占有了全部市场。
授权这个金矿开始枯竭。随着游戏开发时间的增加,游戏和电影同时发行变得越来越困难。游戏没有了公众的支撑,就必须用自身的特点生存。几乎没有公司能够生存下来,大部分公司都消失了。
15.1.3 第3个时期
游戏业的第三个时期(也就是现在)见证了多边形技术的崛起。三维技术抓住了公众的思想和心,真正的大众游戏市场需求到来了。
1. 名人挑战
计算机游戏的最新趋势是用名人效应提高卖点,这些名人是真实或者是虚构的。
虚拟名人失败案例分析:
首先,不能创造相似的人物,因为人们不傻,能够分辨出什么是创造性的,什么是合成的。
其次,老动画中的经典句子只有当人物外观和其他游戏不同的时候才有效果。
可以打开影视业市场的明星不一定可以打开动画市场。
15.1.4 游戏中的暴力
游戏中暴力的真实感会导致道德上的强烈谴责。
游戏严重依赖暴力有2个原因。首先,玩家通常是青少年。第二,技术限制了游戏环境,更复杂的交互则不实际。
1. 给孩子玩的游戏
现在忽略的市场是孩子这块市场。只有几家公司开始做这块市场。我们相信这是最大的增长点。给孩子玩的游戏,不仅是老式的“寓教于乐”的产品,还是孩子的教育产品和娱乐产品这两大分支。
15.2 新模块开发者
只靠游戏本身赚钱的开发公司面临着严峻的问题。成功的关键是利用。可以利用技术本身,或者利用智力财产(服装、书籍、玩具等游戏周边装备等)。
联盟的优点:
首先,从商业角度看,技术资源、商业合同、管理可以共享,这样所有的参加者都可以大规模减少成本。
第二,建立的中心工作室可以让新加盟的员工逐渐进入状态。甚至是顶尖的开发团队都会在开始成立的时候,面临很多问题(保险投资、说服房东租用办公室、调整银行的贷款利率),组成小组之后这些问题就会减轻。
第三,机制从不会闲置。
第四,超级开发者能够更好地创造性开发原型和提高初始经济支持,使它能够获得更高的版税。
最后,工作室保证了质量控制,这是发行商和消费者都想要的。
15.3 在线革命
15.3.1 在线交付游戏
根据经验,开发游戏的第一级的花费大约是整个开发预算的一半。发行商希望游戏的第