从0开始学游戏开发
蔡能
原网易游戏引擎架构师,资深游戏底层技术专家
立即订阅
5825 人已学习
课程目录
已完结 41 讲
0/4登录后,你可以任选4讲全文学习。
开篇词 (1讲)
开篇词 | 跟我学,你也可以开发一款游戏!
免费
第一章:游戏开发基础知识 (5讲)
第1讲 | 游戏开发需要了解哪些背景知识?
第2讲 | 2D游戏和3D游戏有什么区别?
第3讲 | 游戏的发动机:游戏引擎
第4讲 | 底层绘图接口的妙用
第5讲 | 构建游戏场景的武器:地图编辑器
第二章:客户端开发 (10讲)
第6讲 | 从0开始整理开发流程
第7讲 | 如何建立一个Windows窗体?
第8讲 | 如何区分图形和图像?
第9讲 | 如何绘制游戏背景?
第11讲 | 如何载入“飞机”和“敌人”?
第12讲 | 如何设置图像的前后遮挡?
第14讲 | 如何设置精灵的变形、放大和缩小?
第15讲 | 如何设置淡入淡出和碰撞检测?
第17讲 | 如何制作游戏资源包和保存机制?
第18讲 | 如何载入背景音乐和音效?
第三章:UI和键盘鼠标 (3讲)
第20讲 | 如何在游戏中载入UI和菜单?
第21讲 | 如何用鼠标和键盘来操作游戏?
第23讲 | 如何判断客户端的网络连接?
第四章:脚本语言 (3讲)
第24讲 | 如何嵌入脚本语言?
第26讲 | 脚本语言在游戏开发中有哪些应用?
第27讲 | 如何使用脚本语言编写周边工具?
第五章:服务器端开发 (6讲)
第29讲 | 如何选择合适的开发语言?
第30讲 | 如何定制合适的开发协议?
第32讲 | 不可忽视的多线程及并发问题
第33讲 | 如何判断心跳包是否离线?
第35讲 | 如何用网关服务器进行负载均衡?
第36讲 | 如何制作游戏内容保存和缓存处理?
第六章:热点剖析 (9讲)
第10讲 | 热点剖析(一):HTML5技术是如何取代Flash的?
第13讲 | 热点剖析(二):如何选择一款HTML5引擎?
第16讲 | 热点剖析(三):试试看,你也可以编写一款HTML5小游戏!
第19讲 | 热点剖析(四):安卓端和苹果端游戏开发有什么区别?
第22讲 | 热点剖析(五):如何选择移动端的游戏引擎?
第25讲 | 热点剖析(六):AR和人工智能在游戏领域有哪些应用?
第28讲 | 热点剖析(七):谈谈微信小游戏的成功点
第31讲 | 热点剖析(八):谈谈移动游戏的未来发展
第34讲 | 热点剖析(九):谈谈独立开发者的未来发展
加餐 (3讲)
复习课 | 带你梳理客户端开发的三个重点
课后阅读 | 游戏开发工程师学习路径(上)
课后阅读 | 游戏开发工程师学习路径(下)
结束语 (1讲)
结束语 | 做游戏的过程就像是在雕琢一件艺术品
从0开始学游戏开发
登录|注册

第1讲 | 游戏开发需要了解哪些背景知识?

蔡能 2018-05-26
这一节开始,我将带你进入游戏开发的世界。
从最初的小霸王,到充满混混和烟味的街机厅,到 PS、Xbox、DC、N64 等次世代游戏主机,再到电脑游戏,再到如今,在手机上就能玩到各种各样的游戏。
我会依次为你揭密,这些令人痴迷、沉浸的游戏,究竟是怎么发展的,常见的游戏种类有哪些,这些游戏在开发流程和细节上有什么不同,以及游戏开发究竟要从哪里开始学起。

浅述游戏的发展

我们现在公认的第一款电子游戏(也就是主机游戏),是 1952 年面世的。游戏玩的是井字棋,6 年后才出现了简陋的网球游戏
下面这幅图就是井字棋游戏,尽管它与 1952 年的游戏画面还是有所出入,但是游戏内容是一样的。
此后,我们就进入了“雅达利”时期。随后的《太空侵略者》,是最经典的一款游戏。在这之后,我们耳熟能详的任天堂红白机,发布了《吃豆人》《大金刚》等游戏。再之后,就进入了各种游戏主机竞相绽放的阶段。
在电脑游戏方面,第一款电脑游戏是 1962 年面世的《太空战争》。这是一个学生编写的。到 1980 年之后,随着电脑技术的日趋成熟,电脑游戏的画面才开始有了逐渐赶超电子游戏的态势。到 2005 年之后,随着电脑图形硬件的发展,电脑游戏的发展进入了加速期。
电子游戏的优势是,它集合了当时高精尖的图形显卡技术,纯粹为游戏所设计。比如索尼的 PS 系列。据闻,PS 使用的显卡技术来自军用科技(传闻的真实性有待考证,但每一代 PS 的图形显卡的确都是业内顶尖水平)。而电脑游戏的优势是,它能更换显卡和硬件。当显卡升级换代的时候,理论上,只要主板支持,你就可以更新;而电子游戏主机是固化的硬件,只能靠购买新的版本。

游戏有哪些种类?

当前全世界的游戏琳琅满目,从硬件来讲,大致可以分为四大类。
第一类是我们前面提到的主机游戏,业界称为 Console Game。比如微软的 Xbox 系列、索尼的 PS 系列、任天堂的 Switch、N64、Wii 等。这类游戏的硬件可以插在电视机或者显示屏上。以前,游戏的载体一般是光盘、卡带,现在也可以直接从网上下载。
这些公司还相应推出了掌上游戏机,比如任天堂的 3DS、NDS、GBA,索尼的 PSP、PSV 等。掌上游戏机的推出,让玩家随时随地可以玩上游戏。由于是专业的游戏机,比之手机上的游戏,有更好的操作感,同时也更能体验到游戏的乐趣。
第二类是电脑游戏。电脑游戏品类繁多,有 PC 客户端游戏,比如《梦幻西游》《魔兽世界》《星际争霸》《GTA》等;还有 HTML5 网页游戏、Flash 游戏等等。
另外一类是移动游戏。包括 Pad 游戏、手机游戏。手机游戏目前品类繁多,包括 App 游戏、HTML5 游戏,以及微信发布的小游戏。
最后一类是目前并不是特别发达的电视机游戏。随着安卓系统的兴起,电视盒子的出现,出现了一种不需要游戏主机却能在电视屏幕上直接玩的游戏,这就是电视机游戏。但这类游戏一般需要用电视遥控器玩,而且由于电视盒子的机能限制,画面甚至可能比不上手机游戏,所以只适合闲暇的时候偶尔玩一下。

游戏开发使用什么编程语言?

在最早期的游戏开发中,比如任天堂的《FamiCom》(我们俗称《红白机 FC》)、《Super FamiCom》(我们俗称《超任 SFC》),都是使用汇编语言进行开发的。早期由于 8 位机能限制,程序员们为了优化游戏速度、提升游戏画面,无所不用其极,甚至到了奇技淫巧的地步。到了后期的游戏(比如《无赖战士》《足球小将》等),已经将机能挖掘到了极限。到了 16 位机后(任天堂《SFC》、世嘉的《MD》),才逐步使用 C 语言进行编程。到了 32 位机之后,基本都是使用 C/C++ 语言进行编程。

游戏开发从哪里开始学起?

手游这么火,我为什么不直接讲手游呢?原因很简单,想要开发手机游戏,对技术人员要求很高。手游有两种,一种是传统意义上的原生开发手游,一种是微信小游戏和网页小游戏。后面这个就不用说了,我主要说原生手游。
我在后面会讲到,游戏引擎可以购买也可以自己开发。原生手游的话,用购买的成熟引擎做的话,调试起来就会比较困难。毕竟要在手机跑,出问题再改,再跑,加上手机内存和硬件限制,不如电脑端可以随时调试。其次,手游的开发需要考量更多资源的分配和占比,发布的包就是一个考验,谁也不会下载一个三四百兆的安装包。
我会以电脑游戏为主,进行开发流程的讲解。首先,电脑游戏开发便捷。事实上,只要开发游戏,就一定离不开电脑,不管是主机游戏,还是掌上游戏、移动游戏,开发一定是在电脑上(或者专用开发电脑);其次,搞明白了电脑游戏的开发流程和知识之后,其他游戏的开发也一通百通
我会针对 2D 游戏(特指客户端游戏)进行剖析和讲解。为何专门选择 2D 游戏进行讲解呢?
取消
完成
0/1000字
划线
笔记
复制
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
该试读文章来自付费专栏《从0开始学游戏开发》,如需阅读全部文章,
请订阅文章所属专栏。
立即订阅
登录 后留言

精选留言(50)

  • HardToGiveaName
    个人觉得,demo有仨作用:
    1. 游戏原型、框架的制作;
    2. 骗投资人;
    3. 骗潜在玩家.
    😄 😄 😄
    不懂随意说说而已😂
    2018-05-26
    20
  • tiny🌾
    1.验证产品核心玩法
    2.搭建客户端,服务器架构,验证难度和可行性
    2018-05-26
    19
  • DeathKnightH
    Demo的话,我觉得有以下几点:
    1、确定游戏的玩法、画面、叙事方式等是否符合市场预期,也就是玩家和投资人买不买账。
    2、为游戏的后期开发确定方向。
    3、为前期开发做一次总结,总结经验和教训。
    4、根据市场预期,调整游戏开发的计划。
    2018-05-28
    11
  • cooruo
    提个建议:游戏需要画面去呈现,所以讲解最好要配图,比如2D游戏的类型最好每种都配图,这样便于理解和跟平时玩过的游戏匹配。对于没有做过游戏的同学确实很难想象是视角不同带来的视觉效果。
    2018-06-01
    10
  • Junlu
    请老师在最后也介绍一下3D游戏开发,至少介绍一下与2D的不同点以及需要注意的地方。另外,我个人很想听老师介绍一下在游戏公司内各个团队是如何协同工作开发游戏的,以及游戏运营后各个团队的协作包括新版本发布。谢谢🙏

    作者回复: 后续课程会有区别介绍,协作和新版发布每个公司都不同,游戏类型不同,方式也会不同。

    2018-05-26
    5
  • third
    创业中,有一个概念叫做,最小可用品。
    用最低的成本,做出一个可以用的产品。在市场上进行检验,然后不断根据用户的反馈进行迭代。
    demo应该是一个意思吧
    2018-06-10
    2
  • Geek_71078c
    1.试玩,测试逻辑流程
    2.验证玩家反响,是不是受欢迎,及市场反应
    3.测试服务器压力,修复bug
    4.给团队一定的运营数据做为正式版本的参考
    2018-06-02
    2
  • 栗芳凯
    快速迭代
    2018-05-28
    2
  • 雷阵雨
    1 前期宣传,同时筛选出核心用户
    2 找BUG,包括前端后端,包括自己发现的和用户提出的
    3 如果是收费游戏,那就是和商场试衣服一样了,用户看看喜不喜欢后,再决定是否购买
    2018-05-27
    2
  • 清新灬小柠檬
    Demo=最小可行性产品
    2019-06-20
    1
  • 😯
    个人理解:是和测试用例一样吧,测流程,逻辑
    2018-11-22
    1
  • hardcoreYutian
    1.测试游戏总体效果,获得反馈并改进;
    2.让玩家了解游戏玩法和体验,帮助玩家抉择,发展用户
    3.检测服务器等运行情况
    2018-10-01
    1
  • wyatt
    我觉得游戏demo最大作用是为了验证游戏玩法是否契合玩家玩游戏的爽点。一般游戏制作团队会从玩家角度去体验demo,也会将demo给到粉丝去体验,基于自身和粉丝对demo的体验来验证和调整游戏核心玩法。
    2018-05-28
    1
  • Kun
    验证游戏性
    验证可行性
    2018-05-26
    1
  • hb
    应该是所谓的内侧吧,找bug ,玩家反馈等等
    2018-05-26
    1
  • TreeNewBee
    虽然没开发过游戏,但demo的作用应该就是作为一个游戏的雏形或者说是骨架,从demo开始,再一点点完善。
    2018-05-26
    1
  • 刚刚查了一下什么是游戏demo,我觉得大概就是游戏正式发行前的试玩版本或者说是测试版本。应该是用来预估这个游戏的市场受欢迎度以及对于这个游戏的宣传作用。它应该大致包括游戏的框架和其中一部分的试玩内容。
    2019-06-03
  • Y💕
    demo应该不是内测,不会发布出来,二十内部人员调试用的吧。个人理解
    2019-05-20
  • 木又
    Demo可以让开发者对自己的游戏有一个最直观的感受,便于游戏玩法的快速迭代。
    2019-05-10
  • 盛世华夏
    AR/VR游戏
    2018-09-18
收起评论
50
返回
顶部