开发游戏流程

1. 游戏公司框架

  游戏团队中的角色:


开发游戏流程_第1张图片

  游戏制作人:游戏制作人(GameProducer)主要指全面掌握了从研发到运营整个体系知识的游戏项目的总负责人,在其管理下实现游戏研发运营一体化。

   开发组长 :1)熟悉本组业务,直到业务  2)即时经常与领导沟通,汇报进展工作  3)技术能力,能解决难题,能提出解决方案  4)合理适合地安排开发任务和人员

   资源管理 :在游戏的开发过程中,前期的规划 往往比 后期的“优化”更为重要!
  比如多分辨率适配,如果前期没有规划好,可能导致的情况是,画面只在当前测试开发机或者一部分机型正常显示。
  做了多套资源适配,可以使在合适的机型使用对应的图片资源,避免在高清屏幕使用低质量的图片,在低分辨率屏幕因为图片太大而浪费硬件资源。
  机制与策略分离,可以让你设计出简单有效的接口。 模块化的设计可以让你组织好各种逻辑流程,条理分明
  前期的规划工作可以有很多,以使游戏的开发尽量变的简单灵活且可控。

   行政管理:一切社会组织、团体对有关事务的治理、管理和执行的社会活动。

研发部分组 职位 职责
游戏设计组 策划 设计游戏的玩法
游戏美术组 美术 制作游戏需要的美术资源
游戏程序组 程序 编写游戏逻辑,整合一切
音乐制作人 作曲家、音效师、配音演员 制作游戏所需一切音频
游戏测试组 测试 质量检测一切功能
游戏设计组

Creative Director(创意总监,设计总监,主策):游戏项目的整体策划者,主要工作职责在于设计游戏的整体概念以及日常工作中的管理协调。同时负责指导策划组以下的成员进行游戏设计工作。

  • 游戏系统策划(游戏规则设计师):一般主要负责游戏的一些系统规则的编写,系统策划和程序设计者的工作比较紧密。例如组队、战斗、帮派、排行榜、好友等系统,需要提供界面及界面操作、逻辑判断流程图、各种提示信息等。
  • 执行策划
    1.剧情策划(游戏文案策划):一般负责游戏中的文字内容的设计,包括但不限于世界观架构、主线、支线任务设计、职业物品说明、局部文字润色等。游戏的剧情策划不仅仅只是自己埋头写游戏剧情而已,而且还要与关卡策划者配合好设计游戏关卡的工作。
    2.数据策划(游戏平衡性设计师):再细分,为规则数据平衡,包括规则的描述,公式确定,数据表设定等等。
      一般主要负责游戏平衡性方面的规则和系统的设计,包括AI、关卡等,除了剧情方面以外的内容都需要数值策划负责游戏数值策划的日常工作和数据打的交道比较多,如你在游戏中所见的武器伤害值、HP值,甚至包括战斗的公式等等都由数值策划所设计。
  • 游戏关卡策划(游戏关卡设计师):主要负责游戏场景的设计以及任务流程关卡难度的设计,其工作包罗万象,包括场景中的怪物分布、AI设计以及游戏中的陷阱等等都会涉及。简单来说,关卡策划就是游戏世界的主要创造者之一。
  • 游戏脚本策划:主要负责游戏中脚本程序的编写,包括但不限于各种技能脚本、怪物AI、较复杂的任务脚本编写。类同于程序员但又不同于程序员,因为会负责游戏概念上的一些设计工作。通常是游戏设计的执行者。
  • 辅助员(辅助策划):主要是收集资料维护表格等等,比较不涉及核心的工作。
  • 表现策划:主要负责特效动作音效收集提需求,部分如音效部分亦有策划来完成。
  • 资源策划:主要负责UI设计模型相关配置资源管理等等。
游戏美术组

Art Director(艺术总监,主美):负责整体美术风格的把握

  • 原画:负责根据项目的整体风格,故事背景及策划需求,来设计此项目的游戏世界中所有角色景观具体形象
      游戏原画的主要工作性质是设计,设计通过绘画方式来表达。因此即需要手绘技巧,又需要想法支撑。
  • 三维模型贴图:负责根据原画的设计,制作出能够最终展现在玩家面前的三维模型
      复杂度高且在电脑中完成,对物体结构的理解,手绘贴图,和电脑软件的应用是所需的技能。
  • 角色动画:让角色模型根据人物特效起来。
      要让动画看起来流畅,不仅需要对运动规律了然于胸,同时还需要让动画符合人物性格,年龄,体态等。
  • 特效:负责最终画面表现的润色气氛的渲染技能大招的设计和制作
      需要熟练掌握三维软件,了解传统美学的构成动画的运动规律,有时还需要一些基础的数学和物理知识。同时对于角色是用的绝招,种族,特性,包括武器都要有一定研究,这样才能创造出适合的特效。
  • 地形编辑(关卡设计):制作大的地形起伏,摆放上三维场景的物体,设计各种环境:灯光,雾气,早晚变化,天气变化等等。
游戏程序组

Technical Director(技术总监,主程):安排程序部门工作,定游戏的数据结构,定一些主要方案的完成方法 。

  • 引擎开发人员(engine developers):负责构建游戏基础平台的专业程序员,与其它程序人员相比,他们更专注于开发一个可供别人利用的引擎,他们会将更多的时间和目光放在对游戏逻辑和游戏内核的研制和封装上。
  • 服务器端程序员:负责网络游戏服务器端的研发工作。
      由于网络游戏的特点,服务器端程序员往往更强调的是对游戏数据的处理和计算,而对游戏的画面表现并不在意,服务器端程序员必须让自己的程序能够接收和发送来自客户端的数据包同时还要对这些数据进行相关的计算
      相比较而言,服务器端程序员更强调对游戏引擎的掌握,因为游戏的服务器端是否稳定,是真正决定一款游戏能否被广泛接受的主要原因之一,同时服务器端程序的好坏,直接关系到对游戏系统的维护和优化,甚至关系到外挂等网络游戏常见的相关问题。
      对于数据库结构数据传输通讯方式等等。
  • 客户端程序员:负责网络游戏客户端的研发
      更强调游戏的画面表现和一些人机界面的效果,所有玩家在玩一款网络游戏之前要下载的客户端,就是这些程序人员的工作成果。
      近年来随着游戏3D化的持续进行,客户端程序员也开始逐渐从之前的2D美术表现向3D美术表现转移,通常来说客户端程序员都是强调画面和图形的,因此站在纯程序员的角度分类,客户端程序员也可以称为图形程序员(graphics programmers)。
      对图像及优化有研究的会易受重用。
  • 开发工具程序员(Tools Programmers):负责创建支持游戏开发的各种工具
      由于游戏的研发工作是合作的产物,因此在游戏研发的过程中,程序人员往往需要开发出一些专用的工作,用来给相关人使用,最常见的就是游戏的地图编辑器等,还有一些诸如特效编辑器、后台管理工具等。
      在国内,工具程序员往往是由其它岗位的程序员来兼任,这种不明确的分工也正代表了国内游戏产业的不成熟。
  • 其它程序人员:除了上述几种程序人员之外,程序人员还可以根据工作的内容,分为负责编写人机界面的界面程序员(interface programmers)、负责网络数据交换及优化的网络程序员(network and multiplayer programmers)、负责实现游戏人工智能的人工智能程序员(AI programmers)、负责将音乐音效添加到游戏中的音乐音效程序员(audio programmers)以及负责测试和保障游戏软件质量的测试程序员(QA programmers)等。
      当然,并不是所有的游戏公司都会如此细致地对程序人员进行职能划分,正如前文所说的那样,行业的不成熟性让游戏公司在对岗位职能的描述过程中,充满了灵活性和模糊性,因为对国内现阶段的游戏研发来说,重要的是能否做出产品,而不是如何去进行细致的分工。
      不过随着行业的不断成熟以及行业规范的持续建议,相信一个更完善的程序人员工作职能划分体系,会很快出现在所有从业者的面前,因为行业规范的过程,就是岗位职能明确的过程。

2. 游戏开发流程

  游戏制作流程:


开发游戏流程_第2张图片

  游戏开发流程的理想模型:

1、立项阶段:

1.1、始于市场(Market->Producer->Creative Director模式)


开发游戏流程_第3张图片

  一般一个大点的公司都会有市场部,也有专门的市场调查公司,他们的日常就包括收集市场数据分析数据。市场部的人在完成一次调查之后,会得出一些结论。他们把这些结论交至项目部,Producer拿到数据分析,会决定下一个项目应该做什么样的游戏。然后Producer再把决策告诉游戏设计师,让他们来着手开始设计相应的游戏产品。

1.2、始于大佬
  我这里说的大佬一般指那些煤老板啊,房地产老板啊,搞赌博网站的老板啊,做互联网其他领域搞得比较风生水起的各种老板啊,反正就是从来没有接触过游戏行业有钱有人的老板。他们看到游戏行业赚钱快,忍不住也插一脚进来,扔一笔钱招个团队组个公司,做个游戏吧,什么都行,赚钱多的那种。

1.3、始于游戏设计师(Creative Director-> Producer->Market模式)


开发游戏流程_第4张图片

  设计师(策划)提出想法,提交给Producer(CEo),Producer让市场部那边做个调查,看看你说的这个创意有大市场,要达到收支平衡最多能投入多少资金。

补充
  以上三种呢,只是游戏行业比较常见的开启项目的方式。一般来说,大的公司更喜欢炒冷饭,把他们现有的IP拿来立项开发续作,这样能保证游戏的销量相对稳定,降低风险。这种方式可以归类于1.1,因为他们是在确定市场的基础上来立项开发的。
  至于1.2,前几年在国内可谓遍地都是,有钱人都想进来赚个快钱,捞一把是一把。后来做游戏的人中出现了BadGuy,不靠游戏销量赚钱,而是想赚投资人的热钱,游戏都不好好做了。一堆一堆的垃圾出现在市场上,垃圾中的战斗机没有玩家买单,于是投资人的热钱尽数打水漂,全都变成的那些开发者的个人工资,一分都收不回。中套的投资人多了,知道游戏这个行业已经捞不到好了,于是现在1.2的情况越来越少。相应的是,国内游戏行业的资本寒冬来临,越来越少的投资人愿意来投游戏开发团队了。

  1.3的情况应该是最理想的,无论是在小型团队还是大公司,我都倾向于一个创新游戏的立项之初是来自设计师的想法。因为玩法是一个游戏的核心,是游戏与电影以及其他艺术形式得以区分的关键因素。

      2、原型阶段

  当一个游戏项目成立之后,并不是就会顺水推舟地做下去,一直到上线发售。
  事实上,很多游戏项目会在开发中的各个阶段遭到关闭。关闭的原因很多种,包括资金断裂、成员分歧、发现这个游戏并不好玩。
  我们知道一个游戏立项之初,基本都有一个想法。但是除了设计师本人,其他人都不知道这个想法到底好不好玩,值不值得做,可能设计师本人也并不知道。虽然设计师可以写出洋洋洒洒的几万字的设计文档,但是从文字上我们也很难能透彻理解其中的精妙之处,就像我们难以用文字来真正了解一份佳肴吃起来是什么味道。但是当厨师把一堆食材塞到我们嘴里的时候我们就知道了。
  原型阶段就是一个检验 游戏玩法开发可行性 的阶段。
  在这个阶段,设计师要向技术负责人阐释清楚游戏的玩法框架,游戏中存在的各个系统。技术总监会仔细聆听并斟酌设计师想法,在聆听的时候他的心理活动大概是这样的:他说的这个资源系统,我们上一个游戏的应该可以搬过来套用;这个建造系统,好像和《模拟人生》比较像,回头找找看有没有开源的方案;等等,国界线可以让玩家来的动态划分?这个设定似乎要求地图的无缝切换功能,这会导致开发难度和服务器性能要求上升,等会儿要提出来看看能不能避免这个设计;乳摇是什么鬼?劳资没接触过这种技术,又要研究新东西了……


开发游戏流程_第5张图片

  最初,Creative Director带着Technical Designer(技术策划)跟Technical Director开会,大致讲解游戏的玩法框架,让技术总监心里有个数,下去要研究下哪些新的技术方案。

  其中Tech Designer的作用就是负责协调设计和技术的矛盾之处:
帮助技术总监处理掉那些技术上根本不可能实现的设计,优化那些会带来技术压力的设计;帮助创意总监在删减掉一些设计后,补充其他廉价的设计来保障游戏系统的完整性。
所以想要成为设计师的人,必须要了解到掌握编程能力的重要性。一个不懂程序的设计师,往往会天马行空设计出那些根本不能实现的东西,或是坚持要实现一些对计算机性能消耗很高的设定。
  Creative Director会带着其他的Game Designers**把经过修剪的玩法框架填充完整,把每一个系统细节设计出来,编写成案。**
  这时这群设计师已经知道这个游戏怎么玩了。为了检验他们的想法是否好玩,之后的一段时间内他们会和Programmers一起把这个游戏做出来。是的,整个游戏做出来,就在原型阶段。
  这些设计师和技术人员坐在一起开发出来的东西确实一个个都是ugly baby。Designers和Programmers会创建一堆Box来替代游戏中的任何物体,或者用游戏引擎自带的预设物体来充数。画面中仅有的一点特殊美术资源,也许是Technical Artist顺手做的。这是Tech Artist参与原型阶段的附赠作用,他在此阶段更主要的任务是预先制定美术资源的输出规范,做好美术与技术之间的接口。
  一个配备了Designers、Programmers、Tech Artist的小组,在几个月或者一两年的时间里一翻折腾,基本上实现了游戏所有的玩法、系统和功能,甚至技术细节,做出上面那种玩意儿。终于可以邀请一堆人坐在一起来玩这个游戏了,但是得忽略掉画面因素,纯粹地体验游戏性带来的乐趣。这是检验设计师创意的重要环节。

      3、Alpha阶段
   我们的玩法已经得到了验证,我们的功能已经得到了实现。但是之前的这些,只能算是pre-production。 现在,真正的游戏开发,才刚刚开始。在Alpha阶段,我们最重要的工作就是给有趣的核心玩法,包装上一层美丽的外表。不仅仅是视觉上的,还有很多其他东西。所有的这些事情,从High Level Design开始。


开发游戏流程_第6张图片

具体流程
3.1、High Level Design(**宏观设计**)
  这项工作,主要是为游戏架构一个 可信的世界。我们喜欢把负责这项工作的游戏设计师称作: 世界架构师。世界架构师会考虑到游戏的 特性需求,以此为基础设计一个 虚拟世界。完全的世界架构,以我的经验为参考,会从 “世界法则”开始,然后设计出 时间空间,再之后是 自然(以现实为模板就包括:星系、星球、地质、地理、动植物……),最后是 文明和历史。当然,我们往往不会从零开始架构(即使是小说家们也不会),而是借鉴一个现成的世界,从中间的某一层切断,保留高层,自行设计低层。
  在High Level Design进到中后期,Art Director会进入到世界架构师的团队,他会搞清楚那些人的脑子现在都装了些什么。然后会用速涂的方式,来尝试着用画面表现那些人想出来的世界,并与他们确认。随后,Art Director就会开始初次设定游戏世界的画面风格,制定绘画规范。
  与此同时, 技术组会开始着手游戏代码优化或重构的工作。在原型阶段,为了快速实现功能,程序上可能会存在大量的不合理和BUG。好一点的情况是对代码行进 优化,补足残缺的功能,修复BUG( 这一工作会一直持续到游戏下架的那一天)。差一点的情况就是重新编写整个游戏、使用一个新的引擎或者重新开发一个适合的引擎(很少有专门为一款游戏而单独开发引擎的案例,成本太大了)。技术人员们也会开发一些能够提高工作效率的小工具,向开发组中任何需要人提供服务。

3.2、Story Design & Concept Design
  经过High Level Design的工作,我们有了一个世界。现在,我们要向这个世界中添加一点有趣的东西:故事故事的核心:某人,在某时某地,做了某事。剧作家们,非常擅长塑造一个角色形象,也能够描绘出精彩的故事场景,制造出具有张力的故事情节。因此往往由职业编剧来负责此事。相对于世界架构师,编剧们在完成工作后会知道更具体的一些事情(任何鸡毛蒜皮的小事)
  为游戏设计故事不是写小说。在Stroy Telling类型的游戏中,玩家们要控制故事中的角色,和其他具有性格的人物互动,要走进编剧们想象中的街道和战场,改变故事发展的进度或顺序。玩家会从任何角度观察游戏中的人和场景,因此我们必须在视觉上还原编剧们的创作。

3.3 Stroyboard Design & Evironment Design
  当我们的世界有了故事以后,我们要有选择性地,把一些故事,展现给玩家。
  如果是硬Gameplay类型的游戏,设计师们会选择用非常隐弊的方式,把故事藏在游戏中。
  如果你的游戏是Story Telling类型的游戏,那么向玩家交代故事剧情就是游戏设计中的重要工作。
  预先制作一个Storyboard故事板,本质是“游戏流程”)是值得推荐的做法。在电影和动画中,Stroyboard的设计是一个核心工作,它几乎决定了整个影片80%的内容,观众将严格按照故事板的顺序,把每一个画面看完。在游戏设计领域,故事板是众多元素中的一个。它在Stroy Telling类型的游戏中,对于剧情的发展做一个预览作用。
  Storyboard会交代:玩家在不同进度时,必然会经过的场景和必然会经历的事件。由于玩家的视角,受控于玩家自己,所以我们不再逐一考虑取景构图、镜头运动和蒙太奇,只需要记录场景、行动路线与必然事件(过场动画另当别论)。
  当我们考虑场景时,需要艺术家把相应的场景画出来。这就是做Enviroment Design工作的第一个目的。在创作场景时,艺术家会听编剧们描述场景(包括地形、道路、建筑布置等),同时也会参考概念设计师确定的视觉风格,然后快速绘画。

3.4 Character Design
  在经过概念设计的工作之后,我们会拿到一些概念设计线稿,其中包含许多角色。Character Design这项工作就是在那些角色线稿的基础上继续设计,完成服装配色、材质表现等其他工作。
  美术组再有富余力量的话,会绘制角色宣传图

3.5 Modelling
  当我们的Character Design工作完成以后,会得到准确的角色、道具设定,但是那些资源都无法在我们的游戏里使用(我们不讨论2D游戏)。真正的游戏资源制作,是从建模开始。首先,为重要物体建模,需要用到前面制作的三视图,来锚定外形和结构。

3.6 Texture & Material
  模型,是一个游戏物体的血肉躯体。贴图,是一个游戏物体的表皮肌肤。得到模型后,我们紧接着就为其绘制表面的纹理/材质贴图。

3.7 Skeleton & Rig
  经过Modelling,我们能够得到“静态”的游戏模型。有些像斧头、铁桶这样的小东西贴上材质贴图就能够直接放到游戏里用了。但是人物、怪兽这样会动的物体,我们还需要为其制作动作动画。
  Skeleton(骨骼)Rig(绑定),是制作动作动画的前置工作,仅和模型有关,和材质贴图没关系,所以可以一边做材质一边做骨骼绑定。我们知道现实中生物体的运动,基本上就是骨骼的运动。在CG领域,我们借鉴了大自然的设计。我们也有骨骼,用来驱使模型运动。我们要人物模型创建人体骨骼、为恐龙创建恐龙骨骼,然后把骨骼绑定到模型上。
  动作师在为角色设计动作的时候,是直接在骨骼的层面上设计动作。
  一个绑定师对于他所操作对象,如果是脊椎动物的话,那么他会熟悉这种动物的真实骨骼。并且他会知道的肌肉与骨骼的附着关系、运动中肌肉的伸缩扭转状态等。前段时间美国梦工厂的艺术总监魏照平老先生路过我们这儿,我问到他,现在动画界最缺的人才是哪些。他的回答中就掷地有声地指出了“骨骼绑定”(当然世界范围内最缺的还是优秀的故事)。

3.8 Animate
  我们拿到一个绑定好骨骼的模型,会为它设计动作片段(注意,是为骨骼设计动作片段)。这时可能材质贴图也已经制作好了,这样的话可以边做动作边观察最终效果。

3.9 GUI Design & Other Art Work
  去UI化:只在最必要的地方,用干扰力最小的方式,给予玩家最需要提示。把屏幕空间,还给游戏世界,我们不需要那么多文字与图标。讲到这里,Alpha阶段的美术工作已经走过一遍。我们可以把必要的GUI,和前面做的所有3D美术资源(模型、材质、动作)提交给游戏设计师。
  在这个过程中,Technical Artist将发挥一个重要的作用:他将编写Shader脚本,来决定这些美术资源最终将如何显示。Shader也是一种美术资源——一种顶层的美术资源。Shader(着色器)告诉电脑如何用特有的一种方法去绘制物体。
  整个场景使用了完全相同的模型、材质贴图,并且处于同一个时间状态,但是因为使用了不同的Shader,最后得到的效果也完全不同。通过Shader,我们可以让一个非常写实的物体,变成卡通风格、水墨风格、像素风格,可以让它变成半透明,或是只有一个剪影。
  Shader的制作,属于编程工作,并且需要具有计算机图形学知识背景(学习计算机图形学,需要具备 线性代数 知识)。

3.10 Audio & Music
  制作游戏不仅需要画面,还需要声音。声音包括:音效音乐配音
  3.10.1、音效制作。包括开枪的声音、汽车的声音、脚踩在木板阁楼上的声音、释放技能的声音、点击游戏菜单的声音。最基本的制作方法是实录,还有一种方法是拟音,这是更为经济实用的方案。
  我们做游戏的其实很少有成立专门的拟音组,去制作专门的音效,这在AAA级的Stroy Telling游戏制作组中可能会有。我们更喜欢的是使用商业音效库,里面包含了许多现成的音效。
  另外,我们还会用声音合成器去制作一些现实中并不存在的声音,比如说传送门的开启声。
  3.10.2、音乐制作。专业术语是:编曲
  音轨:游戏配乐编曲过程。
  一般是先在软件里编好,然后为了追求音质后期再找交响乐团实录。想要编写优秀的音乐,乐理是基础知识,然后需要去熟悉了解不同的乐器不同的音色。
  编曲和乐器演奏是两回事,但是具备多种乐器演奏能力是最好的。 补一句,在传统的音乐编曲上,制作游戏音乐往往还需要考虑超长时间的loop循环,让人听一天也不会腻的单曲循环。还有需要程序控制的动态地音乐节奏切换、和弦进行切换、混响效果器切换,以适应游戏中的事件状态。所以游戏配乐会有一些不同。
  3.10.3、配音。为NPC配音,为过场动画配音,为游戏角色的语音包配音。这个工作很好理解,现在不仅在Stroy Telling游戏中很重要,在Gameplay游戏中也越来越重要
  声音资源制作和美术资源制作就到这里,这些资源统统都会交回到游戏设计师的手里。他们在游戏引擎中把这些资源整合到一起,来完成真正的游戏制作工作。

3.11 Level Design
  在Game Design方面,我们刚刚讲到了Stroyboard Design。经过这项工作,我们设计了玩家的游戏流程。在这之后,我们需要进行进一步的设计:在游戏流程中的具体细节。就像我展示出的我曾经的工作内容一样,我们会去考虑玩家在流程中的每一步的感受,会去设计我们想要给他带去的体验。这就是Storyboard之后的Gameplay Design的工作意义。与原型阶段的Gameplay Design有一些区别。这更像是做 Pre-Experience Design。
  经过二次Gameplay Design,经过美术和声音资源制作工作,我们已经得到了 制作一个世界所需的所有资源。在这个基础上,我们可以开始进行Level Design。Level Design我认为可以分成两层:1、关卡(qiǎ)设计2、场景搭建。在我的语境中,关卡设计是一种游戏性设计,会去考虑玩家的行动路径、决策方案,会考虑战斗掩体的布置、地势高低的布置等元素。这项设计工作与它前置的Gameplay Design密不可分。
  场景搭建呢,是一份艺术工作,目的是在游戏引擎中还原场景原画师所设计的游戏场景。

3.12 Experience Design
  游戏还没有结束。我们要做最后一次设计工作。我称之为体验设计。体验设计,需要去考虑玩家从点开游戏的桌面图标开始,进入游戏看到的第一个画面,第一个菜单,听到的第一个声音,一直到玩家正式进入游戏场景,开始的第一个事件,收到的一个奖励,一直到玩家第一次保存并关闭游戏,下一次再进入游戏,遇到的最大的挑战,最紧张的时刻,最刻骨铭心的体验,一直到玩家人生中最后一次关闭游戏,把它永久地留在硬盘的某个角落,在这之中会经历的一切。这项工作会整合所有的游戏资源(美术上的、声音上的、故事背景上的),去整体设计玩家的游戏体验。就像旅行体验设计师会做的那样。

      4、Beta阶段
  Beta阶段的主要工作,就是对游戏进行 测试迭代Quality Assurance团队会进入制作组, 对游戏进行全方位的验收。他们会去测试游戏中的每一个按键,每一个功能,找出任何出现异常的地方,然后报告给Directors,让他们去修复和完善。同时他们也会再一次检验游戏的玩法。但愿他们不会在这时提出否定的意见。否则制作人会崩溃的。

3. 游戏引擎

  游戏引擎是游戏研发的主程序接口,它为开发者提供了各种开发游戏的的工具,即可编辑游戏系统和实时图像系统的核心组件,其目的就在于让开发者可以快速的做出游戏而不必从零开始。

  • 游戏引擎包含渲染引擎、物理引擎、碰撞检测系统、网络引擎、音效引擎、脚本引擎、动画及场景管理等。

    • 渲染引擎:是对游戏中的对象和场景起到渲染的效果,游戏中的角色都是通过渲染引擎将它的模型、动画、光影、特效等所有效果实时计算出来并展示到屏幕
    • 物理引擎让对象运动遵循特定的规律,比如当角色跳起的时候,系统内定的重力值将决定它弹跳的高度及下落的速率
    • 碰撞检测系统可以探测各物体的边缘,当两个 3D 物体在一起的时候,系统可以防止它们相互穿过
    • 网络引擎是负责玩家与设备间的通信,处理来自键盘、鼠标及其它外设信号。若游戏联网,它也用来管理客户端与服务器间的通信
    • Lua引擎是Lua的服务器引擎,lua是一种轻量级的嵌入式脚本语言,在网游开 发中应用广泛

总的来说,一个游戏是引擎和资源组成的,资源包括图象、声音、动画等,游戏引擎就像一个发动机,控制着游戏的运行,它按游戏设计规则依次调用游戏资源。

4. 游戏开发所用的工具(借鉴)

  选择正确的工具,可以为游戏项目节省开支,提高工作质量,降低项目风险,让整个项目团队成员集中注意力,从而把游戏做得好玩。

  • 程序工具软件

    • OpenGL ES——OpenGL 长期以来都是行业内 2D/3D 图形高质表现的标准,它适用于各种设备。OpenGL ES 提供了在软件应用程序和软件图像引擎间的底层 API 接口
    • IncrediBuild——这个开发工具极大的提升了 VS/VC 的编译和版本生成速度,有效降低增量构建所需要花费的时间,它主要是采用分布式编译技术,在公司内网可以调用其它计算机的资源进行快速编译。这是开发人员不可多得的一款好工具
    • VS2013——微软的 VS 集成开发环境多年来都是游戏制作的基本软件,界面友好,功能齐全,可以极大的提升编码速度和工作流
    • Visual Assist X——这是一个插件,引入了强大的编辑功能,完全整合在 C++IDE 环境中,可以极大的提升开发人员的工作进程,不过有的 IDE 环境已经整合了这款插件,自己不用手动安装了
    • Direct X——它是微软在过去建立的众多行业标准之一,它是一种视窗技术,可以让你在玩游戏或观看视频过程中图像和音效有更高的品质,它包含多个配套组件,如 Direct3D、DirectSound、DirectPlay、DirectInput 等。
  • 美术制作工具
      美术制作工具要远多于程序软件,因此在游戏开发过程中,选择美术软件时要慎重考虑,以方便项目的顺利进展。

    • Maya——它是行业内首选的 3D 动画制作软件之一,它功能十分强大,可用于高端电脑构图,可以处理几乎所有的 3D 制作工作。
      比如模型构建、动画制作、描绘渲染、电影特效等。但其缺点也在于其多边形建模工具不太理想
    • 3D Studio Max——它是游戏开发中 3D 程序开发的主流引导者,其多边形建模工具是所有 3D 程序中最棒的工具,用它进行开发效率也特别高
    • PhotoShop CS——该软件在游戏制作中被广泛应用,是游戏制作的必备软件,它在游戏开发的各个时期都会用到,包括前期制作到最终完成并市场推广。美术人员用它来做出游戏环境和角色的设定,策划也用它来画关卡规划和界面示意图
    • FaceGen Modeller——这是一款 3D 头脸创作工具,它可以为游戏制作多个角色,从而快速做出人物脸部及头部模型,形态非常逼真
    • Zbrush——这款工具的特点在于使艺术模型呈现传统艺术创作的过程,它可以辅助制作人员做出逼真的环境多边模型,是地图场景的绝佳工具
    • Granny——可以作为游戏的一个批量输出工具,它能够完成所有艺术素材,包括模型、渲染和过场动画的植入。它可以生成法线和纹理贴图,更是一款引擎解释工具。
  • 游戏组件工具
      游戏组件是指游戏的基本环境架构,比如描绘、场景和几何构型的构建,也称为中间件。

    • Havok——这是目前比较先进的物理引擎,它能让游戏模拟现实,可以将游戏做出非常逼真的效果
    • Gamebryo——这是一款能够帮助开发人员快速制作原型版的工具,功能强大,运行稳定,是比较好的 3D 实时图形引擎,其强大的渲染引擎和动作处理系统使其在商业上获得巨大的成功
    • Quazal——它属于网络建筑中间件,主要用于制作大型多人在线游戏,其它类似的中间件有 Big World。
  • 音效工具
      音效作为游戏里的重要组成部分,选择合适的工具也非常重要。作为游戏开发人员,关键要了解各种工具的使用限制,有很多的专业音效制作工具,包括 Nuendo、Vegas、Logic、ProTools、Peak、GameCODA、SoundForge 等。

  • 场景构建工具

    • Unreal Engine——这是一款比较完型的游戏开发引擎,它提供了比较全能的关卡编辑器、过场动画系统、3D 图形及 AI
    • Source——这款引擎为人物角色动画提供了新技术,先进的 AI、光影渲染、实景图象都非常棒,引擎也包含了先进的物理引擎。
  • 日常管理工具
      游戏开发过程中所涉及的事务比较多,内容也比较繁杂,用好日常管理工具可以有效提升工作效率。下面是几个用得比较多的工具:

    • MicroSoft Excel——利用它进行开发进度管理,开发人员可以非常轻松地跟踪管理多个游戏开发部门的进度,开发人员必须要对其十分熟悉,才能用的得心应手
    • 日常工作增量进程报告 (daily delta reports)——一个项目成功的关键就是运用日常工作进程报告,在这个过程中,每一名团队成员每天上交一份个人当日工作完成情况清单。这种进程报告的方式可以简明扼要、方便有效地跟踪项目进程
    • 源码控制报告和版本控制报告——目前大部分项目研发用的版本控件工具是 SVN、Perforce、Git 等,在使用版本控制软件前,一定要花一定的时间来熟悉软件的功能和使用方法,这对于游戏研发人员非常关键,否则就会犯些不必要的错误,从而导致工作效率下降
    • 运用 WiKi——它是协作性文档,是自由讨论和创造性工具,是最佳管理设计性文档的方法,当团队无法建立一个内部局域网来管理各种记录和设计进程或建立局域网工作量过大时,WiKi 就是你最佳的选择。

你可能感兴趣的:(开发游戏流程)