游戏开发_游戏王开发 - CSDN
  • 微信小游戏是一种基于微信平台开发,不需要下载安装即可使用的全新游戏应用,体现了“用完即走”的理念,充分节省用户的手机空间。小游戏无论是开发以及使用都相当轻便快捷,同时基于微信的社交属性让小游戏具备较强...
  • 本课程是Unity游戏开发的入门课程,课程分为上、下两个部分。上篇主要讲述游戏的基本概念、Unity的开发环境、游戏资源的创建和使用等基础内容。
  • Unity游戏开发基础

    2020-02-26 11:51:18
    以Unity 2017版为基础,详细介绍Unity游戏开发的基本过程和基本技术,包括:资源创建、灯光、声音、GUI、动画控制和网络游戏开发等内容。 课程主要以实例演示方式进行讲解,并提供实例工程源代码下载,读者可以对照...
  • 游戏这么简单的事情,是个人都会。三岁孩童都会偷菜,打怪。特么逗我,你说那个游戏没通关你告诉我?我就一地地道道国人,除了汉字没听说有其它啥啥玩意儿。 今天我们来上纲上线,说说玩游戏。玩过游戏的都...
    玩游戏这么简单的事情,是个人都会。三岁孩童都会偷菜,打怪。特么逗我,你说那个游戏没通关你告诉我?我就一地地道道国人,除了汉字没听说有其它啥啥玩意儿。
    

    今天我们来上纲上线,说说玩游戏。玩过游戏的都知道,Dota2游戏可是有百万奖金的哟。咋小民就只有有事没事撸两把,游戏嘛玩嘛。玩游戏有两种玩法,玩好游戏和玩转游戏(个人观点)。玩好游戏这个大家都会,只看你玩得多少。

    玩转游戏这个相对玩好游戏下的功夫那是要大很多,玩转游戏其实我想说的是游戏开发,三句话离不开老本行,有病得治。是的你玩游戏的同时有没有,擦能不能设计的更人性话点,能不能在好用点。好吧,你有这种想法我们继续往下侃。

    游戏开发分网页游戏,flash,java游戏俗称小游戏,基本上都是一些休闲类的傻呆萌的情节和操作,这类游戏开发相对比较简单,会javascript, flash cs, java 就可以进行开发了,一个呆萌的情节也是会吸引很多人玩的。

    游戏开发需要懂几种语言?

    大型游戏(cs已经有些过时了)魔兽世界,星际等等还有国内的剑侠情缘,这类游戏都是大型游戏。开发它们肯定不是一个人能完成的,一般的大型游戏开发绝不是用某种语言这么单纯的问题。一个大型游戏的开发需要庞大的团队使用各种各样的语言和工具来完成。总结一下主要有C/C++,汇编语言,着色器语言,脚本语言,高效的开发语言C#或Java。

    开发游戏我们经常听到的是游戏引擎,一个游戏引擎决定一个游戏最基本的东西操作和效果,那么一般的游戏开发架构从底到顶一般是Direct X(Windows平台)——游戏引擎——游戏。Direct X可是大名鼎鼎相当于所有显卡的一个统一接口,为游戏提供一个利用硬件渲染的编程模型,但Direct X接口为了追求高性能功能非常简单基本的绘图功能,不利于游戏的高效开发。此时就需要根据游戏特点对其进行适当的取舍和封装,实现一组更高抽象的游戏开发接口和框架,可以理解成游戏引擎中的图形引擎。这部分的开发一般使用的语言是C/C++和少量的汇编语言。

    游戏开发需要懂几种语言?

    游戏引擎是一个非常复杂的功能聚合体,所有的游戏开发工作都是在之上进行的。包括图形引擎,音频引擎,碰撞引擎,艺术资源管理,脚本引擎等等。至此还没摸到游戏的边,何谈玩转游戏?

    小伙伴们我简单总结一下,基础语言C/C++,这个是必选项那要提高些效率是不是还得会点汇编语言。一些东西需要重复性的工作来做,我们是不是应该会点脚本语言?至少不用重复的去干某一件事情。

    基础的讲完了,高大上的东西是不是也得搞搞,不是搞搞是要精通。Direct X是建立在OpenGL上的,OpenGL语法类似C语言,游戏执行时被编译加载到显卡上,在实现硬件渲染速度的同时又实现了软件编程的灵活性。游戏开发人员都对游戏开发的绝大部分知识都有一定的了解,如果是客户端程序员,基本上需要了解以下知识:图形学,图形API(D3D/OGL),算法/数据结构,物理,游戏逻辑,音乐音效,人工智能,编程语言,设计模式,操作系统,工具编写,UI。

    简直就是你啥都要会,有挑战吧。想玩转游戏,看来不只能是有把刷子,得是要好多把刷子。你有啥想法?

    游戏开发需要懂几种语言?

    不过最近手机游戏开发比较流行,不是手游。是像愤怒的小鸟,捕鱼达人等。用cocos2d开发android、ios下运行的手机游戏,相对大型游戏则要简单许多。有语言基础加上好的创意想法,下一个土豪就是你那,你准备好了吗?

    本文原创,转载请联系我们,谢谢配合。

    各位朋友如果有兴趣或是想与我们一起学习计算机技术(软件开发),请大家关注我们的微信公众号:程序员互动联盟(coder_online);我们这里有java高手,C++/C高手,windows/Linux高手,android/ios高手,还有一些你可能不知道的你感兴趣的事。

    展开全文
  • 通过游戏开发入门系列的学习,是不是对游戏开发有了一个比较清晰的认识? 在最后一篇里面,博主试着概括性的对游戏开发做一个总结,欢迎各位提出意见来完善这篇博客~ 游戏模块总结: 游戏逻辑模块系统:各种...

    通过游戏开发入门系列的学习,是不是对游戏开发有了一个比较清晰的认识?
    在最后一篇里面,博主试着概括性的对游戏开发做一个总结,欢迎各位提出意见来完善这篇博客~


    游戏模块总结:

    • 游戏逻辑模块系统:各种武器,状态,技能,背包,战斗等逻辑系统
    • 动画模块系统:状态机,Montage,动画融合,IK等
    • 物理模块:给需要交互表现的对象赋予物理特性(包括刚体,流体,粒子,布料等),调整重力大小等各种参数,调整交互中力的大小,调整物理约束
    • AI模块: AI导航,与玩家交互等,玩家的很多功能系统也需要给AI来使用,更深层次的可以考虑将机器学习相关的内容融入
    • UI模块:搭建各种界面框架(背包,捏脸,地图等),非常耗时间与精力,后期需要不断调整
    • 渲染模块:客户端表现核心,不用多说,内容非常多且深
    • 网络模块:底层架构,同步,网络连接 场景模块:包括地形,关卡,植被,角色管理与优化等
    • 输入与输入处理模块:将玩家输入处理转换成逻辑,需要注意的有组合键,输入法切换等
    • 游戏登录与更新:一般这是专门的工具组来做,比如我们常见的各种游戏登录器,在线更新等。

    这里面的除了网络基本上都需要美术,策划,程序共同参与与合作。


    内功:

    • 数学基础:根据你所做内容来决定,一般上层逻辑比较少的去考虑到积分等高数内容。但是如果想搞图形学,矩阵线性代数,高数必须要有一定的功底
    • 算法:常见的排序,查找需要理解并掌握,进一步常见的还有分治,贪心,动态规划,有时候现学现卖也是可以的。另外,除了这些基本的算法,在游戏领域还是有很多其他领域不太常用的算法,比如八叉树查找,碰撞检测,A*。还有一些很特殊的情况需要开发者自己去寻找合适的算法。
    • C++:基本语法,代理,命名空间,const,继承,内存结构,虚表,引用,断言,宏定义等
    • 数据结构:首先是掌握链表,数组,队列,堆,栈,图,树等数据结构,然后是各种排序,查找,遍历等算法。这些掌握了以后可以很快的熟悉stl或者类似的基本库原,用的时候可以更准确的选择合适的数据结构
    • 设计模式:一般来说,我们需要设计模式来快速的搭建游戏逻辑框架,比如前面提到的各种逻辑系统。而且还需要通过设计模式来理解引擎各个模块的设计思路。当然,如果你想设计游戏引擎,那更不能少了设计模式了。
    • 对引擎各个模块由一定深入的理解:这个不用多说,看一遍游戏引擎架构吧,不理解写出的代码经常会出现各种问题(比如同步问题),编辑器各种功能也用不好。
    • 内存管理:可能很多引擎或者语言已经尽可能的帮你处理内存了,但是你难免需要在一些特殊情况下自己处理,内存池技术,各种C++的new的使用,不得不会。
    • 对开发工具的熟悉:这里并不是指只是对某一个引擎使用熟练,而且对不同引擎相关的内容都有一定理解,可以很快的触类旁通。
    • 编译原理,链接,第三方库:经常会遇到各种链接错误,编译错误,打包错误,这需要你有一定的相关知识与经验去解决这些问题。
    • 性能分析与性能优化: CPU与GPU,渲染批次,渲染实例化,布料优化,网络同步数据量,物理开销等,加载资源优化
    • 对游戏的理解:虽然不玩游戏也一样能参与游戏开发,但玩过游戏的人还是有优势的。最明显的是玩过游戏的人会对游戏有更多的想法与意见,也习惯去主动学习其他的游戏的技术与优点。(程序这样,策划更是如此)
    • 开发经验:这个就比较宽泛了,难以只言片语说清。比如你的游戏莫名其妙的出现了一些bug,新手完全无从下手,而有经验的人会有各种手段去调试并解决。经验丰富的老手有时真的抵得上N个新手的,所以这需要各位不断的学习与实践了。

    技术点:

    • 存储与序列化(protobuf)
      单机玩家的游戏存档如何实现?通过序列化 socket 搭建基本的TCP/UDP通信系统
    • 反外挂
      保证游戏公平性,一般服务器上做各种校验措施
    • 多线程
      一般用于渲染,物理,网络同步等,减少开销,增加cpu利用率
    • 打包流水线,包的大小优化,包的多层递归引用优化等
    • 数据库
      什么数据要存在数据库里面,什么存在本地就可以。应该选择什么数据库?之后会不会出现游戏合服?
    • CDN /服务器的部署与运行等
      这个也很复杂,又要考虑成本又想容纳更多玩家(网游),有时可能需要用到CDN技术来优化网络同步,另外还要考虑成本等问题来决定是否租用云服务器

    其他:

    • 版本控制
      一般使用git或者svn
    • 性能分析工具
      前面提到了性能优化,优化前我们需要各种工具来辅助我们找到影响游戏效率的瓶颈
    • 配置
      需要大量策划配置的数据存放在哪里?配置文件?XML?这需要构建一套小的系统(或者引擎提供)
    • 声音数据处理
      一般引擎提供基本的音乐与音效处理,但是有的引擎对音频方面处理的更深入,效果更好
    • 平台对接
      游戏需要发布到不同的平台,这个平台不仅仅指硬件平台(Android,iOS,PS4,PC,XBOX)还包括各种软件平台(各种应用商店,如PC上的Steam,WeGame。安卓上的应用宝,各种软件管家等)该过程其实也相当繁琐,有一些平台的审核非常严格,需要积累一定的经验才能快速的处理相关内容
    • 国际化与本地化
      简单来说,就是不同国家的语言版本不同。如果你的游戏不是只卖给英国美国,你就不得不面对本地化,坑很多
    • 日志系统
      开发与运营 游戏上线一定很多bug,你又没办法去玩家电脑上调试,如何快速定位bug,日志系统很有效
    • 调试
      开发期 断点调试(最有效)、日志调试、dump调试 、控制台调试,可视化调试(在场景内绘制特定的几何体),截图录屏调试(一般用于调试渲染,动画等)
      上线期 日志调试、服务器可以用dump调试,也可以想办法把客户端的dump传送到服务器 、管理员GM调试(非常重要,可以避免重启服务器)
    • bug处理
      有时候已经发生的bug无法改变,又不能及时修复,想要弥补玩家,可以通过GM来给予玩家补偿
    • 脚本
      简单逻辑代码,热更新
    • 工具开发
      提高美术策划的开发效率

    游戏开发入门系列文章到这里就结束了,希望大家有所收获,也欢迎各位提出问题与意见来完善该系列的内容~


    上一篇:游戏开发入门(十一)游戏引擎架构

    原文链接(转载请标明):http://blog.csdn.net/u012999985/article/details/79369679

    展开全文
  • 我在知乎回答“想要自己做一款游戏,需要学习哪些知识”下面简单列举了四个能力,分别是:程序、设计、美术、音乐。但是碍于篇幅限制,我并没有详细展开来说明每一项能力具体是如何发挥作用,以及发挥作用的形式和...

    我在知乎回答“想要自己做一款游戏,需要学习哪些知识”下面简单列举了四个能力,分别是:程序、设计、美术、音乐。但是碍于篇幅限制,我并没有详细展开来说明每一项能力具体是如何发挥作用,以及发挥作用的形式和功效。如果在学习之前,我们对即将学习的东西一无所知的话,会导致学习中产生不小的迷茫感:不知道为何而学,不知道学了有什么作用,不知道该学习到什么程度。带着这样的迷茫去学习,会导致学习效率低下,容易受挫,甚至会在达到一定程度后动摇自己理想,怀疑自己的学习能力是否有问题。作为以“引导自学游戏开发”为使命的一个专栏,我认为非常有必要解除初学者对于游戏开发的朦胧认识。这也是自学游戏开发专栏第二篇文章的意义之所在,让初学者了解:

    • 一个常规的游戏开发团队有哪些人,每个人具备怎样的能力
    • 一个游戏从最初构想到最终完成开发,会经过一个怎样的过程
    • 团队中的每个人在游戏开发过程中的什么时间,发挥了怎样的作用

     

    在了解完以上三个问题以后,我们会对自己的情况做一个判断,根据自己的情况,再对未来的方向做一个规划。比如说,你是一个喜欢画画的人,想从事游戏相关的美术工作,那么你就应该知道不同的美术工作在游戏开发流程的哪一步需要画什么样的东西 做什么样的美术资源,设计师和技术人员拿到你做的美术资源又会加以怎样的修改和使用,你在后面的学习中应该着重练习哪方面的技术和能力;再比如说,你想成为像我一样技能覆盖面比较广,各个方面都知道一点的开发者,那么你应该如何去组织你的技能,在众多的技能中考虑到你的性格和你的特长,你更喜欢亲自做哪一项工作内容,应该选取哪个作为核心能力,如果今后不做独立开发而是进游戏公司工作,你会站在哪个位置工作?在阅读完本篇的正文后,你会开始思考这些问题,并尽快找到一个大致的答案。

    预先了解我们即将从事的工作,预先概览我们即将学习的知识,这件事对于引导我们前进有重大的意义。为了完成这个环节,我从第一篇文章发布后到现在一直都在筹备此事(边看春晚边做配图)。要让任何一个从没接触过游戏开发的人,在一篇文章的篇幅内了解整个游戏开发的全过程,这件事情真的是非常难。我认为真正要做好这件事情,需要一个纪录片的工作量。要完整地记录下一个游戏从设计师的头脑中 转换到电脑中的过程,然后展现给别人。我本人的搜索能力有限,到目前为止并没有找到一个非常理想的此类纪录片,但是在知乎问题 “有哪些介绍游戏开发过程的纪录片或视频?” 下面,

    @windleavez

     的回答中有非常多零零散散的相关纪录片(在此也感谢他为这些视频做的字幕)。在后文中,我会适当地引用其中一些视频片段以及YouTube上的相关视频来辅助讲解。下面正文开始。

    一、游戏开发团队的人员配置

    一个常规的游戏开发团队有哪些人?我们先过目几张图:

    下图是一个国内很常规的 MMORPG开发&运营 人员配置图。

     

    ↓是几个国外游戏开发团队的人员配置图。

     

    大家把每个头衔看一遍就行了,不用去记忆。从名字当中,或许大家都能猜到某些岗位是干什么的,有些猜不到也没关系,我正要去一一讲解。为了方便阐述,我自己做了一张人员配置图,融合了以上的实战配置和我自己对于游戏开发的理解。(注:为了方便查看,建议另存到本地)下图:

     

    阅读指南:

    • 矩形代表“岗位”、平行四边形代表“工作内容”。
    • 红色:代表设计能力;蓝色:代表计算机编程能力;绿色:代表美术能力;
    • 颜色明度:代表专业性要求;颜色灰度:代表综合能力要求。(非严格遵循)

     

    因为我非常反感国内把Game Designer叫作“游戏策划”的翻译,还有一些其他岗位翻译不准确或是在中文语境中遭到了贬低,所以这张表我特地全部使用了英文名词。每个名词旁边有小小的中文注解,放大到100%即可看清。

    首先一个标配游戏团队中有三大Director:Creative Director(创意总监)、Technical Director(技术总监)、Art Director(艺术总监)。说土鳖点就是:主策、主程、主美。很多新人以为Creative Director(主策划)就是游戏团队中最大的BOSS,可以拍板说话。但其实三大Director上面还有Producer,在公司里Producer上面还有CEO,CEO上面还有Board of Directors。

    在国外的话,Creative Director享有更高的权利,他来决定游戏往哪个方向设计和制作,对于设计上的分歧进行最终决断。Technical Director决定采用的技术方案,制定游戏特需的功能和系统,保证技术组的步调一致。Art Director负责领导制作游戏所需的美术资源,保证游戏画面的美观性和统一性。 Producer更多的是提供三大Director需要的资源和帮助,并保证游戏项目的正常推进和最终发售。当然了,有的制作人本身也担任创意总监的职责,比如说小岛秀夫、席德梅尔。

    (讲个段子)在国内的话,基本情况就是一层压一层,逐级给压力。最上面的投资人想赚快钱,给CEO压力,要求其多长时间内实现多少盈利;CEO把压力分担给制作人,要求其多长时间内必须完工,上线后的ARPPU最好要达到多少;制作人菊花一紧,从身体下面拿出棒子去敲主策的头:“上头要求又提高了,你这个武器合成的系统,把坑给我开到要玩家花20W人民币才能填满。” 主策老王顶着一头包跟跑腿刚回来的执行策划小王说:“你去把升级武器用的所有材料的价格乘个2。” “好。”小王把软中华和剩下的35块钱放到主策桌上,然后跑到主程电脑椅旁蹲下扒着他肩膀:“张哥,上次拜托你们优先查的那个武器合成系统的BUG怎么样了,我现在要改数值能不能起作用?” 老张pia一下把小王打翻在地:“别来烦我,今天美术老赵那边给的模型放进引擎里法线一个都不对,我正在愁这事儿呢!” 小王懂事地爬起来地回到座位,一只手指在屏幕的EXCEL表上游走,另一只手在键盘托里握着手机,继续开心消消乐的第652关。差不多到吃中饭的时候,小王跑到主策位置上:“老大,我去跟程序那边搞了一上午,武器系统那BUG他们还没修好,我现在还改不了数值啊~” “要你有什么用!给我去买份羊杂汤回来!劳资亲自去找他们说去!…………对了加个蛋!”(大误)

     

    段子讲得很有讽刺意味,可能有点过了头,大家看个开心就好。下面我将把人员配置图的每一个角色/工作 带到游戏开发流程中去讲解。

    游戏开发流程

    在人员配置图中还有很多其他的角色,我将在游戏开发流程中逐个说明他们的作用。现在建议大家把 人员配置图 打开放在屏幕的一边,然后把下面这张 开发流程图 打开放在另一边,下图:

     

    这是一个游戏开发流程理想模型。我将按阶段来逐一讲解。

    1、立项阶段:

    一个游戏项目是如何开始的?一般有三种打开方式:

    1.1、始于市场

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

    比如说:经市场部研究分析,今年三国题材的游戏,不论游戏玩法类型如何,都比相同类型的游戏拥有更多的下载量,预测明年三国题材将会保持这项优势;今年传统TOP-DOWN类型的MOBA游戏,总活跃玩家数比去年有轻微下降,但是FPS和TPS类型的MOBA游戏有明显的增量,预测后面几年MOBA游戏市场大流将会从细分类型TOP-DOWN转向FPS。公司里正闲着想做下一个项目的制作人老李拿到这些数据:“噢!那我们就来做一个三国题材的FPS+MOBA游戏吧!稳赚不赔,就这么定了!” 然后老李就找到御用主策老王:“你看我们之前那个项目能不能换个皮变成一个三国题材的FPS+MOBA游戏,或者说你重新设计一个?” 这是Market->Producer->Creative Director模式。

    1.2、始于大佬

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

    事情是这样的,有一天他关掉37玩大天使之剑的网页,抽着闷烟突发奇想:马勒割鸡,那些搞游戏的做这么个辣鸡玩意儿动不动月流水上亿?劳资怎么不去搞一个呢?雾草,就是了,我也搞他妈一个,就不信在自己的游戏里还干不过排行榜第一名那个“熊爸傲哥”。于是他就打电话给二把手:“强子,给我他妈的招个游戏开发团队,对,劳资要做个游戏,就做个37玩大天使之剑那样的!” 后来?后来策划老王、程序老张、美术老赵把这个煤老板的钱分摊拿去交各自的房子首付了,项目糊弄几下,上线前几天一起离职,组队去了另一家公司,老李的手下。

     

    1.3、始于游戏设计师

    曾经有一个少年,他从小学时就一直玩游戏,一直玩到高考玩脱。考了个三本。在大二的某一天,他突发奇想:“诶!如果把这个想法做成一个游戏,简直太绝了!前无古人啊,一定敲好玩!估计小赚个一两亿没问题,嗯~” 于是他找到下铺商学院的小李,跟他激动地分享了一下这个想法。小李一脸凝重地点着头:“好像还行,不如这样吧,先去网上搜搜看到底有没有这个类型的游戏嘛?或者说看看会玩这种游戏的玩家大概有多少他们会花钱买嘛?……” 时光荏苒,十年过去了,在落地窗前站了许久的老王,突然浮现出异样的笑容,屁颠屁颠地跑到老李的办公室:“老李我跟你说,我刚刚想到一个绝妙点子,是这样的……&*%&……¥……&” 老李一脸凝重的点了点头:“好像还行,不如这样吧,我让市场部那边做个调查,看看你说的这个创意有大市场要达到收支平衡最多能投入多少资金。”

    我写这个段子并没有半点讽刺的意思,只是反映了一下大多数人的情况。实际上,我们少年都是这么过来的。这个叫做Creative Director-> Producer->Market。

    1.4、补充

    以上三种呢,只是游戏行业比较常见的开启项目的方式。一般来说,大的公司更喜欢炒冷饭,把他们现有的IP拿来立项开发续作,这样能保证游戏的销量相对稳定,降低风险。这种方式可以归类于1.1,因为他们是在确定市场的基础上来立项开发的。至于1.2,前几年在国内可谓遍地都是,有钱人都想进来赚个快钱,捞一把是一把。后来做游戏的人中出现了Bad Guy,不靠游戏销量赚钱,而是想赚投资人的热钱,游戏都不好好做了。一堆一堆的垃圾出现在市场上,垃圾中的战斗机没有玩家买单,于是投资人的热钱尽数打水漂,全都变成的那些开发者的个人工资,一分都收不回。中套的投资人多了,知道游戏这个行业已经捞不到好了,于是现在1.2的情况越来越少。相应的是,国内游戏行业的资本寒冬来临,越来越少的投资人愿意来投游戏开发团队了。1.3的情况应该是最理想的,无论是在小型团队还是大公司,我都倾向于一个创新游戏的立项之初是来自设计师的想法。因为玩法是一个游戏的核心,是游戏与电影以及其他艺术形式得以区分的关键因素。 对了,1.3中的少年即小王。相信许多正在看这篇文章的少年都有过小王相似的想法,这是好事。但是我鼓励每一个想自称游戏设计师的少年,在有一个想法后,把它置放一年,期间去读一读游戏设计相关的书,反复构思、打磨、验证你的那个想法。关于一个游戏创意的想法又能从何而来,我在我自己的设计方法论中有系统的理论分析,但现在不是和盘托出的时候。在此我们就假设我们通过某种思考已经得到了一个游戏创意的想法。老王:“我有一个想法,老李,给我几个人让我们来验证它吧!”

    2、原型阶段

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

    图中Creative Director就是游戏的首席设计师。最初,他带着Technical Designer(技术策划)跟Technical Director开会,大致讲解游戏的玩法框架,让技术总监心里有个数,下去要研究下哪些新的技术方案。其中Tech Designer的作用就是负责协调设计和技术的矛盾之处:帮助技术总监处理掉那些技术上根本不可能实现的设计,优化那些会带来技术压力的设计;帮助创意总监在删减掉一些设计后,补充其他廉价的设计来保障游戏系统的完整性。所以想要成为设计师的人,必须要了解到掌握编程能力的重要性。一个不懂程序的设计师,往往会天马行空设计出那些根本不能实现的东西,或是坚持要实现一些对计算机性能消耗很高的设定。《最后的守护者》在立项之初,还没决定采用什么作为玩家的同伴时,本来想过用人(一个女孩),但是设计师们考虑到人的行为十分复杂,要用AI做到逼近自然很难,于是才把目光移到了动物身上。他们观察了猫猫狗狗等各种动物,最后设计出Trico这么个生物。

     

    这是一个很好的例子,他们避免了一个研发的上大坑,但是当时他们不知道一堆羽毛的拟真表现对计算机性能消耗很大(其实开发难度也不简单),就算是在现在的PS4 PRO 上也只有30FPS的表现。如果说十年前上田文人就知道这些的话,我相信现在的Trico可能就不会有这么多毛了。

    在Creative Director和Tech Director会晤之后。Creative Director会带着其他的Game Designers把经过修剪的玩法框架填充完整,把每一个系统细节设计出来,编写成案。在这个过程中,Designers的思考过程可以大致参考下面这个视频。不过要注意这是游戏已经开发完成后设计们说的话,大家可以自行脑补成 他们正在游戏设计的前期 讨论如何设计:

    视频封面

    《魔兽世界:经典旧世》幕后传奇

    视频

    这时这群设计师已经知道这个游戏怎么玩了。为了检验他们的想法是否好玩,之后的一段时间内他们会和Programmers一起把这个游戏做出来。是的,整个游戏做出来,就在原型阶段。只不过哈哈哈,他们做出来的游戏原型差不多长成这个样子:

     

    (第一张图是《战地:叛逆连队》的原型截图,第二张是《美国末日》的原型截图,最后一张是玩家自制的《战地》模拟器:Ravenfield)

    这些设计师和技术人员坐在一起开发出来的东西确实一个个都是ugly baby。Designers和Programmers会创建一堆Box来替代游戏中的任何物体,或者用游戏引擎自带的预设物体来充数。画面中仅有的一点特殊美术资源,也许是Technical Artist顺手做的。这是Tech Artist参与原型阶段的附赠作用,他在此阶段更主要的任务是预先制定美术资源的输出规范,做好美术与技术之间的接口。 一个配备了Designers、Programmers、Tech Artist的小组,在几个月或者一两年的时间里一翻折腾,基本上实现了游戏所有的玩法、系统和功能,甚至技术细节,做出上面那种玩意儿。终于可以邀请一堆人坐在一起来玩这个游戏了,但是得忽略掉画面因素,纯粹地体验游戏性带来的乐趣。这是检验设计师创意的重要环节。现在,我代表Ravenfield的制作者SteelRaven7邀请你,来试玩这款Prototype级别的游戏:Ravenfield (如果你当前不便试玩,也可以通过“Ravenfield宣传视频”来了解它) 没有华丽的画面,没有精致的音效,被剥得赤身裸体的玩法能否给电脑前的试玩者带来乐趣?还是休息室茶几上的可乐和薯片更吸引他?如果这个丑陋的游戏能够让每一个试验者玩得放不下手,那么它毫无疑问通过了原型测试。但是,往往来试玩的大胖子们会点着头认真地说:“嗯……我喜欢你们这个游戏,如果它完成得更好的话。对了我能把零食带走吗?”

     

    Again,本篇文章着重于讨论开发流程,故在此不深入探究设计与迭代的话题。假设大胖子真的被我们的游戏原型所吸引,让我们来吃掉他的可乐和薯片,然后愉快地进入下一个阶段:Alpha阶段。

    3、Alpha阶段

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

     

     

    3.1、High Level Design

    我翻译为:宏观设计。这项工作,主要是为游戏架构一个可信的世界。我们喜欢把负责这项工作的游戏设计师称作:世界架构师。世界架构师会考虑到游戏的特性、需求,以此为基础设计一个虚拟世界。完全的世界架构,以我的经验为参考,会从“世界法则”开始,然后设计出时间、空间,再之后是自然(以现实为模板就包括:星系、星球、地质、地理、动植物……),最后是文明和历史。当然,我们往往不会从零开始架构(即使是小说家们也不会),而是借鉴一个现成的世界,从中间的某一层切断,保留高层,自行设计低层。就像《魔兽世界》的世界观,改造于D&D与《魔戒》的魔幻架构;《阿凡达》从现实世界中的行星这一层进行了切断,自行设计了其下一层的卫星“潘多拉” 及之后的内容。《使命召唤:现代战争》从现实世界的历史层进行了切断,设计了从2011年之后发生的势力冲突。《俄罗斯方块》从……对不起这个游戏没有进行这项设计工作。在进行世界架构的时候,设计师会充分地考虑游戏的需要,然后才是调动他们对于世界的经验认识和丰富的想象力。在完成设计工作后,他们能回答像下面这样的问题:

    • 这个世界的最高法则是什么?这个法则如何运行?
    • 龙族是在什么时间,什么地点,以什么样的方式诞生的?他们有什么特点?红龙和黑龙分化的原因是什么?
    • 如果自然界中的树木隐藏着比人类更高的智慧,这个世界将会怎样?什么树木是森林的中枢神经?人类是在什么时间,如何发现这一事实的?在那之后人类文明和森林文明是如何相处的?
    • 如果美索不达米亚人在赫剃人进攻之前就掌握了冶铁技术,历史将会怎样?假设古巴比伦王国中有三大势力,他们是怎样形成的?
    • 如果在一个双星系统的星球中存在文明,他们会是什么样子?如果人类和他们接触会发生什么?(请参考《三体》)

     

    看到这些问题的时候,你是什么感觉?欢迎在评论中发言。一个合格的世界架构师,拿到上面任何一个问题,都能够在1秒之内开始回答,并且能够保持叙述20分钟不停口。中间你问他任何问题,他都能够响应你的引导把细节阐述得厘厘入微,并且,在即将完成回答之时,他能够在逻辑上把之前叙述的离散的内容全部联结在一起。世界架构师熟悉天文、地理、政治、哲学、历史、文明、生物、社会,他最重要的技能是:能够一本正经地具有逻辑地胡说八道。(很多人都知道,想要成为游戏设计师,最好上知天文,下知地理,中晓人和,尽可能多地去了解世间万物万事,这,说的就是对世界架构师的要求。)

    在High Level Design进到中后期,Art Director会进入到世界架构师的团队,他会搞清楚那些人的脑子现在都装了些什么。然后会用速涂的方式,来尝试着用画面表现那些人想出来的世界,并与他们确认。随后,Art Director就会开始初次设定游戏世界的画面风格,制定绘画规范。

    来看看《魔兽世界》的世界架构师在工作时想了些什么,视频中也可以看到艺术家为他所画的部分东西:

    视频封面

    《魔兽世界:经典旧世》幕后传奇

    视频

     

    与此同时,技术组会开始着手游戏代码优化或重构的工作。在原型阶段,为了快速实现功能,程序上可能会存在大量的不合理和BUG。好一点的情况是对代码行进优化,补足残缺的功能,修复BUG(这一工作会一直持续到游戏下架的那一天)。差一点的情况就是重新编写整个游戏、使用一个新的引擎或者重新开发一个适合的引擎(很少有专门为一款游戏而单独开发引擎的案例,成本太大了)。技术人员们也会开发一些能够提高工作效率的小工具,向开发组中任何需要人提供服务。

    3.2、Story Design & Concept Design

     

    经过High Level Design的工作,我们有了一个世界。现在,我们要向这个世界中添加一点有趣的东西:故事。故事的核心:某人,在某时某地,做了某事。剧作家们,非常擅长塑造一个角色形象,也能够描绘出精彩的故事场景,制造出具有张力的故事情节。因此往往由职业编剧来负责此事。相对于世界架构师,编剧们在完成工作后会知道更具体的一些事情(任何鸡毛蒜皮的小事):

    • 猎空的父母分别叫什么?来自哪里?什么血型?如何相识?生猎空的那天是哪个医生负责接生?他在猎空的手臂上注入了什么?这与她后来加入守望先锋组织有什么联系?
    • 伊利丹和玛法里奥在幼年时关系如何?他们第一次发生矛盾是什么情况?伊利丹在被囚禁的时候对他的哥哥怒吼了什么?伊利丹所心爱的人与玛法里奥又是什么关系?
    • 维京人把过冬的粮食储藏在了什么地方?他们又把从日本商船上劫掠来的货物堆在哪里?黑石军团从什么地方入侵了他们的家园?黑石军团战盾上的纹理是什么样?有什么意义?

     

    为游戏设计故事不是写小说。在Stroy Telling类型的游戏中,玩家们要控制故事中的角色,和其他具有性格的人物互动,要走进编剧们想象中的街道和战场,改变故事发展的进度或顺序。玩家会从任何角度观察游戏中的人和场景,因此我们必须在视觉上还原编剧们的创作。我们要确切地知道艾米长什么样,她窗外的花园是什么样,她父亲送给她的飞行滑板又长什么样。因此我们需要Concept Artist,来为每一个人,每一个物品,每个一场景设计概念原型。这个概念原型不一定是一张很完整的美术作品,但是任何一个看到它的人,都能够拍着设计师的肩膀说:“我get到了这个感觉。”为了完成这项工作,为了得到一个合适的人物形象或道具模型,Concept Artist可能会绘制几十份概念稿,最后从中挑选出一个。现在,我们来欣赏一下概念设计师的创作过程:
    来自艺术家Cam Sykes的“霍比特人-索恩橡木盾战士”概念设计过程
    来自艺术家Sycra的 飞船概念设计过程
    来自教育网站http://GameSchoolOnline.com的 场景概念设计过程
    为了把握感觉,概念设计师们会大量地创造原型。最后大部分都会舍弃掉,只筛选出最好的一两个,然后为其绘制出线稿。过程请参考下面(大家可能会比较熟悉的):
    来自国内漫画家黄嘉伟的 阴阳师-酒吞童子的创作过程

    也许大家观看后会比较激动,“原来游戏角色是特么这么设计出来的!?教练,我想去学做游戏。”但是我必须在此适时地泼上一盆冷水:游戏领域中任何表面上看起来优雅而轻松有趣的工作,背后都需要大量繁重地练习和学习。就比如设计一个酒吞童子,表面上只是画几根线,但背后至少需要知道的东西有:线稿的绘画技巧、形式美法则、透视原理、人体结构、服装设计、日本传统文化等等。这几样最基础的东西,必须像血一样流淌在你的身体里,才能够进行畅快的设计。下文中每一个岗位和工作,都同样需要掌握庞杂的知识和技能,有的是制作上的技术细节,有的是艺术上的原理法则。在此指出,后文不再赘述。

    工作提交:故事设计完成后会得到一个剧本,其中包含了许多故事发展线,人物介绍,战役介绍;概念设计完成后,会得到一些概念线稿,如下:

     

     

     


    3.3 Stroyboard Design & Evironment Design

    当我们的世界有了故事以后,我们并不是要把剧本寄给玩家,让他们知道这个世界中的每一件事。我们要有选择性地,把一些故事,展现给玩家。如果是硬Gameplay类型的游戏,设计师们会选择用非常隐弊的方式,把故事藏在游戏中。比如说《Dota2》、《守望先锋》,如果我们只玩游戏而不看周边,那么我们只能从游戏中 角色的对话听出一些往事。那些被精心设计的对话,让玩家知道 他们生活在一个真实可信的世界中;而像《英雄联盟》、《梦三国》那样泛泛之谈的人物语音,便让人有一种虚假的戏剧感。如果你的游戏是Story Telling类型的游戏,那么向玩家交代故事剧情就是游戏设计中的重要工作。预先制作一个Storyboard(故事板,本质是“游戏流程”)是值得推荐的做法。在电影和动画中,Stroyboard的设计是一个核心工作,它几乎决定了整个影片80%的内容,观众将严格按照故事板的顺序,把每一个画面看完。在游戏设计领域,故事板是众多元素中的一个。它在Stroy Telling类型的游戏中,对于剧情的发展做一个预览作用。Storyboard会交代:玩家在不同进度时,必然会经过的场景和必然会经历的事件。由于玩家的视角,受控于玩家自己,所以我们不再逐一考虑取景构图、镜头运动和蒙太奇,只需要记录场景、行动路线与必然事件(过场动画另当别论)。

    当我们考虑场景时,需要艺术家把相应的场景画出来。这就是做Enviroment Design工作的第一个目的。在创作场景时,艺术家会听编剧们描述场景(包括地形、道路、建筑布置等),同时也会参考概念设计师确定的视觉风格,然后快速绘画。 其绘画过程可以参考,如下:
    来自艺术家Cam Sykes的 戈壁城场景绘画过程
    当场景图得到确定之后,艺术家会对它进行下一步刻画,使其中的物件明确,以指导将来Level Design的工作。一个细致的游戏场景是如何绘制的,请参考(让你们感受一下最强P图能力-二次绘画):
    来自艺术家Titus Lunter的 游戏场景设计过程

    工作提交:艺术家们会提交游戏场景原画,如下:

    游戏设计师会提交故事板,其中包含了行动路线和事件。用我过去的工作来做例子吧,要献丑了,这张图是我给执行策划交代任务时随手做的:

    我当时为这张新手村地图(场景/关卡)设计Stroyboard。包括单个任务设计、任务流程、剧情安排、行动路线设计、NPC/怪物分布设计。需要考虑的东西也很多,比如:玩家进入场景后看到的第一屏是怎样的,第一个任务如何预热玩家/调动兴趣,怎么安排基础操作教学,第几分钟大概到什么地点什么任务,什么时间安排具有挑战性的事件,用什么物品来为大的奖励做铺垫,如何行动即不重复又能游览全部场景等等。

    3.4 Character Design

    在经过概念设计的工作之后,我们会拿到一些概念设计线稿,其中包含许多角色。Character Design这项工作就是在那些角色线稿的基础上继续设计,完成服装配色、材质表现等其他工作。其工作过程请参考:
    来自艺术家Alex Gp的 角色绘画过程
    有时,一些重要的角色,为了在后面的建模时得到更好的比例和结构表现,艺术家们会为他们绘制三视图,如下:
    来自网站http://CGCookie.com的 角色三视图绘制过程

    这些工作一般会交给美术组中的junior artist去完成,因为相对于概念设计,这一步要求更多的体力劳动,较少的设计能力。而那些才华横溢的senior artist,他们会去画一些美术宣传画,像这样的:
    来自艺术家WLOP的 Saber Lily绘画过程

    工作提交:这一步工作,最重要的是得到 人物/道具 设定图,包括各个角度(三视图),如下:

     

     



    美术组再有富余力量的话,会绘制角色宣传图:

    这样的图,对于游戏开发的工作,没有实质的作用,但是It's cool.

    3.5 Modelling

     

    当我们的Character Design工作完成以后,会得到准确的角色、道具设定,但是那些资源都无法在我们的游戏里使用(我们不讨论2D游戏)。真正的游戏资源制作,是从建模开始。首先,为重要物体建模,需要用到前面制作的三视图,来锚定外形和结构,设计师是这么用的:
    来自模型师Soepanto Kurniawan的 汽车 Shelby GT500 建模过程
    来自模型师Antic的 Q版房子建模过程
    有时,有些不重要的物体是没有三视图的,这就要求模型师能够仅根据一张图就制作出模型:
    来自团队DrunkenLizardGames的 枪械M4A1建模过程

    我也做过这样的建模练习,当时拿到这样一张图:

     

    只有这样一张图,别无参考,结构不明确或不合理的地方需要自己进行二次设计,所以,这要求模型师也需要具备结构设计的能力。当时懒懒散散地做 用了三个工作日完成了这个模型:

     

     

    刚刚在三个演示中,使用的软件分别是Zbrush、3Ds Max、Blender。在此我想指出一个新手误区:不要纠结于软件的选择,我们什么都会用。值得一提的是,如果做生物角色的话,一般我们会喜欢从Zbrush开始:
    来自艺术家Maksym Haydar的 女性角色雕刻过程
    来自艺术家Wandah K的 龙-雕刻过程

    工作提交:(上面的“龙-雕刻过程”,Wandah K已经为其简单的绘制了贴图,这是下一步的工作。)一般来说,我们的Modelling工作结束后,会得到干净的素模,如下:

     

     

    3.6 Texture & Material

     

    模型,是一个游戏物体的血肉躯体。贴图,是一个游戏物体的表皮肌肤。得到模型后,我们紧接着就为其绘制表面的纹理/材质贴图。过程请参考:
    来自艺术家Sedat Aciklar的 角色兰戈 雕刻绘画过程(包括了雕刻和贴图绘制)
    来自艺术家Josh Robinson的 忍者神龟贴图绘制过程
    下面展示另一种我们常用的贴图制作方法-映射:
    来自艺术家UArtsy的 面部贴图映射制作过程
    下面展示器械的材质制作过程:
    来自Quixel官方的 枪械贴图制作过程
    来自艺术家Aldi的 Jeep汽车 贴图绘制过程

    工作提交:在经过贴图&材质制作的工作后,我们会得到如下的模型资源:

    前几天我也做了的小练习,可以在左臂上看到我女朋友的名字。

     

    除了为特定的模型制作材质贴图外,我们还需要制作许多通用的材质,包括但不限于:自然(土地、草地、泥沼、石头、树皮…)建筑(路面、墙面、木纹、钢材、玻璃…)等等,可以参考如下:Substance材质库。这些通用材质将在游戏场景搭建时发挥重要作用。

    3.7 Skeleton & Rig

    经过Modelling,我们能够得到“静态”的游戏模型。有些像斧头、铁桶这样的小东西贴上材质贴图就能够直接放到游戏里用了。但是人物、怪兽这样会动的物体,我们还需要为其制作动作动画。Skeleton(骨骼)、Rig(绑定),是制作动作动画的前置工作,仅和模型有关,和材质贴图没关系,所以可以一边做材质一边做骨骼绑定。我们知道现实中生物体的运动,基本上就是骨骼的运动。在CG领域,我们借鉴了大自然的设计。我们也有骨骼,用来驱使模型运动。我们要为人物模型创建人体骨骼、为恐龙创建恐龙骨骼,然后把骨骼绑定到模型上。

    动作师在为角色设计动作的时候,是直接在骨骼的层面上设计动作。

    一个绑定师对于他所操作对象,如果是脊椎动物的话,那么他会熟悉这种动物的真实骨骼。并且他会知道的肌肉与骨骼的附着关系、运动中肌肉的伸缩扭转状态等。前段时间美国梦工厂的艺术总监魏照平老先生路过我们这儿,我问到他,现在动画界最缺的人才是哪些。他的回答中就掷地有声地指出了“骨骼绑定”(当然世界范围内最缺的还是优秀的故事)。

    由于绑定骨骼这个过程并不具备什么观赏性,就不用视频展示了。

    3.8 Animate

     

    我们拿到一个绑定好骨骼的模型,会为它设计动作片段(注意,是为骨骼设计动作片段)。这时可能材质贴图也已经制作好了,这样的话可以边做动作边观察最终效果。过程可以参考如下:
    来自IKinema Action的骨骼动画制作过程
    除了上面展示的技术,在一些常规写实类游戏中,我们还喜欢用运动捕捉系统来设计动作:
    来自Tomas liu的 光学运动捕捉系统
    上面这个是一个国内团队在12年做的展示,虽然看起来比较low,但是展示很直观。我目测他们这套设备价格在四五万元左右。(商业光学运动捕捉系统 最便宜也差不多是这个价,因为需要多台红外摄像机)下面来看看另一种小团队比较能承受的廉价系统:
    来自Snappers的 惯性运动捕捉系统
    在视频中大家能看出来,这个动作动画比上面那个要自然多了。但是理论上,光学运动捕捉系统的精确度要比惯性运动捕捉系统高一些,这也是为什么在影视领域大家都用光学运动捕捉系统。不过一个模型动作的自然度也需要考虑到骨骼、绑定等因素,比如Tomas Liu他们的模型,很明显只是简单绑定了一下骨骼,手部都没有绑定(也许是控制点没有绑定);但是Snappers的模型由于有标准的骨骼绑定,即使用的惯性运动捕捉系统,看起来依旧很自然。所以在3.7节中,我们说到绑定非常重要,大家可以直观感受到。这套惯性运动捕捉设备只需要一万元左右就能拿下,并且使用也很方便。
    刚刚展示了两个肢体运动捕捉的案例,下面来看一下 面部表情捕捉。这是很早很早以前的光学运动捕捉系统,可以看出对于表情的还原非常精确,惯性运动捕捉系统是做不到这一点的。还需要展示的是,动作动画的重定向。前面说过了,动作师在是骨骼的层面上工作,而不是模型。因此,我们做出的动作动画,可以使用在不同的模型上(只要它们使用了相同的骨骼):面部表情捕捉-重定向。这能够大大减少我们的工作量。

    工作提交:作动师完成工作以后会得到大量的动作动画片段,包括但不限于:走、跑、蹲、跳、攻击、防御、受伤、死亡……动作动画片段展示-剑盾战士。配上材质贴图,大概是这个样子:动作动画片段展示_士兵;再看一个《刺客信条》的动作吧:刺客信条动作动画展示

    3.9 GUI Design & Other Art Work

    实际上我将略过这一环节。因为我认为游戏中最好的UI,就是没有UI。但这将是游戏发展的一个趋势,我看到许多大厂小厂都在加入这条道路,去UI化:只在最必要的地方,用干扰力最小的方式,给予玩家最需要提示。把屏幕空间,还给游戏世界,我们不需要那么多文字与图标。讲到这里,Alpha阶段的美术工作已经走过一遍。我们可以把必要的GUI,和前面做的所有3D美术资源(模型、材质、动作)提交给游戏设计师。在这个过程中,Technical Artist将发挥一个重要的作用:他将编写Shader脚本,来决定这些美术资源最终将如何显示。Shader也是一种美术资源——一种顶层的美术资源。Shader(着色器)告诉电脑如何用特有的一种方法去绘制物体。

     

    比如在上面这幅对比图中,整个场景使用了完全相同的模型、材质贴图,并且处于同一个时间状态,但是因为使用了不同的Shader,最后得到的效果也完全不同。通过Shader,我们可以让一个非常写实的物体,变成卡通风格、水墨风格、像素风格,可以让它变成半透明,或是只有一个剪影。可以大致参考:
    来自Gareth Stockwell的 Shader效果对比

    Shader的制作,属于编程工作,并且需要具有计算机图形学知识背景(学习计算机图形学,需要具备 线性代数 知识)。那个以为做美术工作就是画画的少年,你有什么想法吗?

    如果没有,那我们就进入声音制作的环节咯。(你怎么沉默低头不说话了……)

    3.10 Audio & Music

     

    制作游戏不仅需要画面,还需要声音。声音包括:音效、音乐、配音。

    3.10.1、音效制作。包括开枪的声音、汽车的声音、脚踩在木板阁楼上的声音、释放技能的声音、点击游戏菜单的声音。最基本的制作方法是实录,比如《武装突袭》为了制作真实的枪声,去军营里实录了所有武器的声音。还有一种方法是拟音,这是更为经济实用的方案,用这两个视频来了解一下拟音艺术吧:拟音师忽悠女盆友奇妙的工作:拟音师。我们做游戏的其实很少有成立专门的拟音组,去制作专门的音效,这在AAA级的Stroy Telling游戏制作组中可能会有。我们更喜欢的是使用商业音效库,里面包含了许多现成的音效,像这样:

    另外,我们还会用声音合成器去制作一些现实中并不存在的声音,比如说传送门的开启声。

    3.10.2、音乐制作。专业术语是:编曲。编曲过程可以参考下面的视频,考虑到没接触过编曲的人可能看不懂,稍作解释:视频中音乐家Carol Kay一个人用MID键盘,先后编写了:大镲、大鼓、日本太鼓、小鼓、小号、长号、大号、吊镲、小提琴、大提琴、贝低提琴、贝斯、竖琴、铜钹、格洛克、吟唱、长笛、定音鼓、钢琴、法国号等乐器的音轨:游戏配乐编曲过程。现在的游戏音乐,甚至其他流行乐、交响乐什么的都是这么编写出来的。一般是先在软件里编好,然后为了追求音质后期再找交响乐团实录。想要编写优秀的音乐,乐理是基础知识,然后需要去熟悉了解不同的乐器不同的音色。编曲和乐器演奏是两回事,但是具备多种乐器演奏能力是最好的。 补一句,在传统的音乐编曲上,制作游戏音乐往往还需要考虑超长时间的loop循环,让人听一天也不会腻的单曲循环。还有需要程序控制的动态地音乐节奏切换、和弦进行切换、混响效果器切换,以适应游戏中的事件状态。所以游戏配乐会有一些不同。

    3.10.3、配音。为NPC配音,为过场动画配音,为游戏角色的语音包配音。这个工作很好理解,现在不仅在Stroy Telling游戏中很重要,在Gameplay游戏中也越来越重要,想一想《守望先锋》、《Dota2》,打着打着莱因哈特会来一句:“护盾快撑不住啦!”;小美会说:“嗨呀~好气呀~”。但是做这份工作的人群,在国内的生存状态并不理想。我认为需要给予他们更多的关注,看这两个视频了解一吧:“替”声世界之生存现状走进“替”声世界:夏磊_演讲

    声音资源制作美术资源制作就到这里,这些资源统统都会交回到游戏设计师的手里。他们在游戏引擎中把这些资源整合到一起,来完成真正的游戏制作工作。

    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密不可分。

    场景搭建呢,是一份艺术工作,目的是在游戏引擎中还原场景原画师所设计的游戏场景。其过程可以参考如下:
    来自Level Designer-Maverick的 快速游戏场景搭建-森林铁路以及 快速游戏场景搭建-村庄
    来自Level Designer-Kaan Öztüzün的 快速游戏场景搭建-城市
    上面三个是Unreal4的场景搭建,下面放一个Unity的:
    来自Level Designer-Maverick的 快速游戏场景搭建-入海口

    这些都是自由的游戏场景搭建,实际工作中,房屋的位置、街道的转折、物体的摆放,都已经由关卡制作的过程预先制定了。在关卡制作中,设计师们用各种简陋的方体来代替物品,定制关卡中所有碰撞体积的位置(就跟原型阶段所做的事情一样):

     

    左图是艾兴瓦尔德的关卡设计示意图,右图是完成场景搭建后的效果。完成场景搭建后,我们的游戏基本就拥有了华丽的外表。还记得原型阶段给大家展示的截图吗,来看一下它们对应Alpha阶段的截图对比:

     

    真是激动人心的时刻啊,我们的游戏完成了脱茧蜕变,完成了华丽丽的升级!但是我们要知道,这背后是许多艺术家、设计师挥汗如雨的辛勤工作。他们可能经历过灵感的匮乏,经历过方向的迷失,经历过未曾预知的错误,经历过拍桌叫板的争吵,经历过委屈与绝望,经历过一年又一年纷飞的雪。看着这些伟大的游戏的画面,鬼知道在这背后我们经历了什么。

    3.12 Experience Design

     

     

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

    在许多游戏的制作成员名单中,可能并不会看到Experience Designer这个词。因为体验设计,是一个团队的工作,整个团队的工作。每一个环节都会为最终的体验负责。当然,我建议由熟知产品设计的游戏设计师来领导完成此事。

    到此,游戏已经完成了Alpha阶段,也意味着游戏完成了全部的开发工作。

    4、Beta阶段

     

    Beta阶段的主要工作,就是对游戏进行测试与迭代。Quality Assurance团队会进入制作组,对游戏进行全方位的验收。他们会去测试游戏中的每一个按键,每一个功能,找出任何出现异常的地方,然后报告给Directors,让他们去修复和完善。同时他们也会再一次检验游戏的玩法。但愿他们不会在这时提出否定的意见。否则制作人会崩溃的。暴雪曾因为QA测试无法通过,最后放弃了已经开发了7年之久的《泰坦》,Chris Metzen,曾主持过《魔兽争霸》、《星际争霸》、《暗黑破坏神》、《魔兽世界》开发工作的暴雪副总裁,崩溃了。在顶着巨大的心理压力,收拾残局,制作完《守望先锋》后,他选择了离开暴雪,离开游戏界。这是为什么,我们需要有原型阶段,我们要在原型阶段检验游戏的玩法,对待复杂玩法的游戏,我们都小心翼翼。同时我也致敬暴雪,他们宁愿割掉自身的血肉,也不愿给玩家一个无聊的游戏。

    好了,我致敬的方式是放两个EA的游戏视频……pia!

    还记你在原型阶段下载下来玩的那个Ravenfield吗?想知道它在完成Alpha和Beta阶段之后是什么样子吗?请参照:《战地4》联机对战实录《战地4》官方联机演示

     

    结语

    到这里,整个游戏开发流程已经讲完了。谢谢你能够耐心地一直看到这里。最后我还需要补充一些。Again,这个流程是我根据古今中外的实际项目和自己的理解总结出来的理想模型。它可能并不匹配任何一个市面上游戏的开发流程,也可能不匹配小团队独立游戏的开发流程。但我尽可能的把各类游戏开发中需要的工作都整合了进来,让大家看到一个全面的工作介绍。有些工作,在你们的游戏中可能不需要出现,比如《球球大作战》就不需要High Level Design,或者你们开发2D游戏就不需要Modelling及之后的工作。甚至有的开发团队不采用这样的瀑布流开发模式,而是采用敏捷开发模式(会一边制作一边设计,根据玩家的反响实时调整设计方向),这都没有问题。只是我个人倾向于采用完整的这套开发流程 来制作游戏。

    希望在阅读完本篇文章后,你已经对游戏开发的流程有了一个大致的了解。至少在设计和美术上,你已经心里有数。在分享美术部分的时候,因为这是看得见的部分,所以我高兴能够用视频和图片的形式来辅助讲解。虽然收集和筛选这些素材花费了我巨大的时间,但是能起到一定的帮助 那我便觉得值得。设计部分能够展示的相对较少一点,程序部分就更少了,几乎没有。这也是因为程序部分即便是用视频图片还是用文字,都无法充分地展现其精髓。如果直接拿程序代码出来,绝大部分人又根本无法看懂。但是不用过于担心对于程序知识的欠缺,因为在本专栏正式引导新人自学游戏开发的第一部分,我们就会从编程开始。然后逐个地,把每一个工作内容,文中和视频中展示的每一项技术,每一个知识模块都学一遍。只要你学有余力,就可以跟着我把游戏开发的所需的所有技能都学一遍,成为一个全能游戏设计师。在了解所有流程的基础上,如果你仍旧只是对某一部分感兴趣,那么你大可规划好你自己的职业定位,就像开篇所述的那样,然后针对性地学习,并深入钻研。

     

    扩展阅读:

    欧美 3A 游戏公司的游戏设计与制作——jiayang yang

     

    北美游戏业入行门道和从业体验——Avatar Ye

    想要自己做一款游戏,需要学习哪些知识?——窦月汐

    展开全文
  • 本文来自作者 goto先生 在 GitChat 上分享 「如何开发一款游戏:游戏开发流程及所需工具」,「阅读原文」查看交流实录。「文末高能」编辑 | 哈比游戏作为娱乐生活的一个方面,参与其中的人越来越多,而大部分...
        

    ?wx_fmt=gif&wxfrom=5&wx_lazy=1

    本文来自作者 goto先生  GitChat 上分享 「如何开发一款游戏:游戏开发流程及所需工具」,阅读原文查看交流实录。

    文末高能

    编辑 | 哈比

    游戏作为娱乐生活的一个方面,参与其中的人越来越多,而大部分参与其中的人都是以玩家的身份。

    他们热爱一款游戏,或是被游戏的故事情节、炫丽的场景、动听的音乐所艳羡,亦或是被游戏中角色扮演、炫酷的技能、有趣的任务所吸引,然而他们中的大多数可能并不了解如此一款好玩的游戏是如何打造出来的。

    对于想来这个行业尝试的新人们,先对游戏开发制作有个整体的了解也是非常必要的。

    接下来我将从几个方面来分别进行阐述。

    基础知识

    游戏,说白了就是一个程序,这个程序或在 PC 上或在移动设备上运行,玩家通过与这个程序交互来达到娱乐性的目的。我们先了解一下游戏中用到的各种引擎以及游戏相关术语。

    游戏引擎

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

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

    • 渲染引擎:是对游戏中的对象和场景起到渲染的效果,游戏中的角色都是通过渲染引擎将它的模型、动画、光影、特效等所有效果实时计算出来并展示到屏幕;

    • 物理引擎:让对象运动遵循特定的规律,比如当角色跳起的时候,系统内定的重力值将决定它弹跳的高度及下落的速率;

    • 碰撞检测系统:可以探测各物体的边缘,当两个 3D 物体在一起的时候,系统可以防止它们相互穿过;

    • 网络引擎:是负责玩家与设备间的通信,处理来自键盘、鼠标及其它外设信号。若游戏联网,它也用来管理客户端与服务器间的通信;

    • Lua 引擎:是 Lua 的服务器引擎,lua 是一种轻量级的嵌入式脚本语言,在网游开发中应用广泛。

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

    游戏名词

    • CD-key:游戏的序列号或防盗密码;

    • BugFree:测试管理平台,是一款基于 Web 的开源错误追踪工具;

    • Ping:从客户端发送数据到服务器到接收到服务器反馈数据的时间,以 ms 计,若 Ping 值高会感觉延迟;

    • Proxy Server:代理服务器,代理网络用户去取得网络信息;

    • PU:付费用户;

    • RU:注册用户;

    • AU:活跃用户;

    • DAU:平均每日活跃用户;

    • CCU:同时在线人数;

    • PCU:最高同时在线人数;

    • ACU:平均同时在线人数;

    • ARPPU:付费玩家平均收入;

    • 封测:限定用户数量的游戏测试,用来对技术和游戏产品进行初步的验证,用户规模较小;

    • 内测:面向一定数量用户进行的内部游戏测试,多用于检测游戏压力和功能有无漏洞;

    • 公测:对所有用户公开的开放性的网络游戏测试。

    游戏的种类

    游戏的分类方法很多,可以按终端、内容、摄像类型、玩家格斗对象、玩家人数等来分,其中按内容来分最直观,它可以根据游戏的元素迅速锚定游戏范围。

    • 按终端分:主机游戏 (电视机游戏)、客户端游戏、网页游戏、手机游戏;

    • 按摄影类型分:2D 游戏、2.5 游戏、3D 游戏;

    • 按格斗对象分:PVE:PlayerVsEnvironment、PVP:PlayerVsPlayer;

    • 按玩家人数分:单机游戏(Singe-Player Game)、多人游戏(Muti-Player Game)、大型多人在线(Massive Multiplayer Online Game)。

    我们可以看一下 AppStore 中游戏的分类,非常鲜明,如下图所示。

    ?wx_fmt=png

    游戏的开发流程

    游戏开发从狭义上讲就是程序部门进行相关游戏程序的编写,从广义上讲,是整个游戏制作过程,这其中包括多个部门的人员配备。下图是一个一般性的游戏开发团队。

    ?wx_fmt=png

    整个团队包含四个部门,即策划、美术、程序、制作人,各个部门负责不同的工作,协调完成整个游戏的开发。

    策划是团队的灵魂,也分执行策划、数据策划、表现策划、资源策划等,他们主要对游戏剧情、背景进行分析设计,对游戏中的各种规则进行描述及公式确定,对各种资料表格进行维护,对游戏中的特效、动作等进行收集并提出需求,进行 UI 设计及模型相关配置等。

    程序是团队的骨肉,也可细分为主程序、客户端引擎、服务器引擎、3D 程序、AI 程序、脚本程序、数据库程序等,他们主要负责确定程序的数据结构,确定策划方案的完成方法,将策划提出的各种需求用程序来实现,并为游戏开发过程提供良好的编辑工具。

    美术是团队的皮肤,可细分为人物原画、人物建模、材质贴图、人物动作、场景动画等,他们主要负责整个游戏的视觉风格,以及人物模型动作等的设计等。

    制作人主要进行游戏的外部统筹,市场调研、游戏开发进度、游戏版权、游戏宣传、游戏发布及音乐音效素材的管理都是制作人工作的范畴。

    下图是某国外游戏研发团队的组织架构图,可以参考了解一下。

    ?wx_fmt=png

    游戏开发的各个时期

    对于游戏制作人来说,每个游戏从产生要消亡要经历各个阶段,下面是普遍适用的典型范例,但并不是每个游戏都要经历所有的时期。

    • 概念时期:就是整个游戏概念的确定,要做什么样的游戏,主题线索是什么;

    • 原型开发时期:这个时期要制作游戏的原型,用来体验游戏的设计概念,从而纠正和改善不足的地方;

    • 推广时期:此时是游戏开发方向出版方推广产品,向投资方展示游戏的设计概念、主要卖点、产品如何适应市场的需求、产品开发的可行性及具体的实现方案;

    • 准备时期:这个时期主要处理游戏项目所涉及的商务及法律方面的事务,比如游戏专利、剧本版权、品牌商标等,从而组织开发团队制作大致的方案,确定游戏开发所需要的工具及其它细节问题;

    • 制作时期: 这个时期是游戏制作的主体时期,完成 3D 模型的制作,场景制作,过场动画、画面渲染及音效录制等,游戏引擎和资源在此时期将被完全整合到一起。

    • 质量保证时期:这个时期是游戏的 QA 或测试时期,主要用来保证游戏的各项功能是否完好,从而发现和修复各种 Bug 和错误;

    • 母盘生成时期:这个时期是将游戏存盘交由平台厂商测试检测的时期,每个平台厂商的测试标准不尽相同,这个时期中也需要不断地测试改进游戏,修复 Bug,准备市场投放。

    • 运营维护时期:这个时期是游戏发布后持续运营,在运营过程中发现问题,修复并更新升级的过程,这是一个长期的过程。

    项目流程

    一部游戏完整的开发过程,归纳起来可分为五步,如下图所示。

    ?wx_fmt=png

    市场调研可以分为三个小部分,

    1)调研前进行 “头脑风暴”,让尽量多的人想出尽量多的创意点子并做好记录,从而在市场调研过程中一一确认,不符合的排除;

    2)撰写策划草案,从而让项目小组中的每一个成员对开发的项目有一个大体的认识,并且对目标明确;

    3)对每一个草案都进行市场调研和分析,决定是否要开发这个游戏。市场调研主要从两个方面入手,即目标客户(玩家)和开发成本。

    需求分析主要是撰写需求分析书,这主要包括三个方面:

    1)策划需求

    • 策划的分工:包括剧本、数值、界面、执行等方面;

    • 进度控制:要时刻注意时间和开发进度的控制,需要写一个专门的项目进度汇总表。

    2)美术需求

    • 场景:包括游戏地图、小场景等方面;

    • 人物:包括玩家角色、重要 NPC(玩家队友、提供任务的 NPC、主线剧情 NPC 等)、次要 NPC(路人、村民等)、怪物、BOSS 等;    

    • 动画:动画方面估计每个公司的需求都不尽相同。如果公司能力有限,动画的制作可以考虑外包的方式;

    • 道具:主要需要考虑是否采取纸娃娃系统;

    • 全身像:人物的全身像方面;

    • 静画 &CG:游戏中可能出现的静画和 CG 的需求,没有则不需要写;

    • 人物头像:人物的头像制作需求,其中包括人物的表情方面,包括喜、怒、哀、乐和悲等多种表情;

    • 界面:界面的需求,包括主界面、各项子界面、屏幕界面、开头界面、END 界面、保存和载入界面等方面;

    • 动态物件:包括游戏中可能出现的火把、光影等方面;

    • 卷轴:又称为滚动条。根据游戏的情况来定具体的需求;

    • 招式图:根据游戏开发的具体情况决定是否有此需求;

    • 编辑器图素:各种编辑器的图素需求,例如关卡编辑器、地图编辑器等方面;

    • 粒子特效:3D 粒子特效的需求;

    • 宣传画:包括游戏的宣传画、海报等方面的制作需求;

    • 游戏包装:游戏客户端的封面包装的制作;

    • 说明书插图:游戏说明书内附插图的制作需求;

    • 盘片图鉴:游戏客户端盘片上的图鉴的制作需求;

    • 官方网站:游戏官方网站的制作需求。

    3)程序需求

    • 地图编辑器:包括编辑器的功能需求、各种数据的需求等;

    • 粒子编辑器:关于粒子编辑器的需求;

    • 内镶小游戏:包括游戏内部各种小游戏的需求;

    • 功能函数:包括游戏中可能会出现的各种程序功能、技术参数、数据、碰撞检测、AI 等方面的需求;

    • 系统需求:包括升级系统、道具系统、招式系统等系统导入器的需求。

    项目开发步骤就是将整个游戏项目的资源通过引擎组织起来,对游戏的架构、功能及各逻辑模块进行充分的整合。

    这就要明确游戏开发的日程和进度安排,这也是充分利用各种开发工具让开发效率大大提升的根本所在。

    测试发布流程主要包括两次大型正规的测试,即 Alpha 测试和 Beta 测试,其中前者意味着游戏的功能和流程完整,QA 会为游戏定制测试计划,测试人员将发现的 Bug 提交到数据库,开发和设计人员对相应的错误进行修复。

    后者意味着游戏中的各种资源已完成,产品已定型,后期只是修复 Bug。在这两次测试修复后,得到待发布的 Release 版。

    Gold Release 流程主要是开发游戏的各种补丁包、游戏的升级版本,以及官方的各种礼包和插件等。

    游戏开发所用的工具

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

    程序工具软件

    • 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 就是你最佳的选择。

    好了,关于游戏开发的相关知识,我就介绍到这里。游戏开发涉及的知识太多太多,我在这里只是概括性的做了一个引入,希望对您有些许的帮助,文章内容不免有很多不足之处,还请各位大侠多多指教。

    对于在游戏公司工作的体验以及对未来想入行的伙伴的建议,我将在接下来的 Chat 中与大家交流,谢谢大家!

    近期热文

    深入浅出 JS 异步处理技术方案

    敏捷教练 V 形六步法实战:从布朗运动到深度协作

    从零开始,搭建 AI 音箱 Alexa 语音服务

    修改订单金额!?0.01 元购买 iPhoneX?| Web谈逻辑漏洞

    让你一场 Chat 学会 Git

    接口测试工具 Postman 使用实践

    如何基于 Redis 构建应用程序组件


    ?wx_fmt=jpeg

    「阅读原文」看交流实录,你想知道的都在这里

    展开全文
  • 游戏开发学习路线

    2018-08-02 23:30:50
    游戏开发这个方向看起来目标很明确,但其实是个领域很广的方向,入门的时候如果得不到指点一二,很容易误入歧途,相反,如果走这条路之前能得到前人的一些指引,是可以事半功倍的。 下面就结合自己的学习历程和大家...
  • 经常有知友问我,我很喜欢玩游戏,可以从事游戏开发吗?开发游戏需要哪些技能?一款游戏的开发需要哪些人员参与?诸如此类的问题比比皆是。 本场 Chat 老司机带你弯道超车,以 10 年游戏行业的真实背景和经验为实例...
  • 链接:游戏开发入门(十一)游戏引擎架构(8节课 时常:约2小时40分钟) 该堂课是对游戏引擎内容的一个概括总结,同时也是对游戏开发技术的一个相当全面的总结。 正如我在开篇所提到的,游戏引擎架构的学习有助于...
  • 我做游戏开发这八年

    2020-07-19 10:01:37
    我做游戏开发这八年简述与编程擦肩而过从图像设计到痴迷编程入门编程沉迷编程Java的图形编程就职游戏开发2011,第一次面试&实习生第一个游戏2012年,第二个重量级IP游戏2013年,转战手游与创业2014-2015,第一次...
  • 视频链接:游戏开发入门(一)游戏开发概述(3节课 时常:约1小时03分钟) 该视频围绕电子游戏的发展与开发简单介绍了一些基本常识,同时提出并解决了几个问题 笔记与总结(请先学习视频内容): 1.游戏机发展...
  • 游戏开发完整流程

    2018-07-18 18:56:24
    Ø 一个项目立项的原因可能性非常多,有可能是公司拿到一个好的IP,也有可能是几个负责人有个很棒的idea,亦或是老板的梦想是做一个XX类型的游戏,这边不做过多的讨论。   Ø 立项过程中应该包含市场...
  • 偶然在Gad上看到这个系列的视频,觉得内容挺全面的,就定了一个月的计划把这些课程都看完了,收获不小,对游戏开发有了更为全面的认识。 如果你想进入游戏行业,觉得学习资料太多很难入门,那不妨先看看这个系列的...
  • 网络游戏开发分为:服务器编程、客户端编程、人工智能、数据库管理、游戏策划、美工设计、音乐特效等。 大型游戏往往需要团队合作开发,因此面向对象的编程思想在网络游戏中得到了广泛应用。 游戏开发基本流程:...
  • 近几年来游戏行业发生了翻天覆地的变化,以至于很多人现在都想加入这个行业,这个行业给大家的感觉,首先是高工资,...而我就是这众多当中的一个,今天就说说的我的游戏开发之路。  我是一名刚毕业的计算机的大...
  • 前言很多刚刚接触到游戏开发,准备大展拳脚的小鲜肉们,往往在技术选型这第一关就栽了跟头。毕竟网络上的游戏引擎良莠不齐,官网上相关资料也比较少,而选择一个适合的游戏引擎是一个项目最基础,也是很核心的一部分...
  • 如何防作弊在游戏开发中还是占蛮重的比例的,这也涉及到游戏盈利的问题,如果不做防作弊措施,或许我们开发出来的app当前上线或许第二天就出破解免费版了,这个事情我亲身经历过,当然这是基于app做的比较好被外挂...
  • 【基本概念】游戏公司一般是指游戏开发公司或游戏发行、代理公司。那游戏公司开发游戏需要哪些技术人员?简单的说:需要游戏造型、游戏动画、3D美工、纹理师、原画设计师、建模师、UI制作、手游程序员、网游程序员...
  • 5.《Directx游戏开发终极指南》 6.《Windows游戏编程大师技巧》 7.《快乐之道:游戏设计的黄金法则》   人类的大脑通常是一个贪婪的模式吞噬者,是一个吞吃概念的柔软矮胖的灰色小精灵。   8.《3D游戏编程...
1 2 3 4 5 ... 20
收藏数 439,499
精华内容 175,799
关键字:

游戏开发