从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开始学游戏开发
登录|注册

复习课 | 带你梳理客户端开发的三个重点

蔡能 2018-07-18
我们用了将近两个月的时间,讲述了游戏客户端的开发流程和代码编写,今天我来带你总结并且回顾一下。
我这里列了一些编写游戏客户端你必须要掌握的知识和注意的事项。希望通过梳理这些知识,能让你对学过的内容有一个全盘的认识和更加深入的理解。

重点一:客户端开发中 4 个重要方法

首先,我们来看,设置前后遮挡效果时要用到的一个虚拟概念,Z 值。 2D 游戏中其实是不存在这个概念的,因为 Z 值是高度概念,一般只存在于 3D 游戏当中。2D 游戏的坐标轴,拥有 X 和 Y 两种位置。X 轴是横向坐标,Y 轴是纵向坐标。在斜 45 度角的游戏,或者需要经常改变前后遮挡位置游戏中,往往才需要加入这个概念。在 2D 开发中,用好了 Z 值,能够帮你计算 2D 游戏中图片的前后位置,在游戏中设置前后遮挡效果的时候就会更加方便。
其次,在 2D 游戏中制作碰撞检测的时候,可以使用图片相交检测的方法,来替代物理引擎。像打飞机游戏这样非常简单的 2D 游戏,是完全不需要使用物理引擎的,我们使用图片相交检测的方法,直接写对应的代码就可以。
什么时候才要使用物理引擎呢?这取决于你的代码量和程序编写的复杂程度。
如果碰撞代码非常复杂,占据整个工程量的 1/5~1/4,那就可以直接使用物理引擎;如果仅仅用一两个函数就可以搞定,那就可以自己模拟物理碰撞效果来写相应的代码。毕竟 2D 游戏不比 3D 游戏,对“拟真”的要求没有那么高。而图片相交检测这样的方法易于编写,且效果也可以满足需求。当然,3D 游戏中,往往需要高精度地模拟真实世界的碰撞,这个时候就直接使用物理引擎就好了。
取消
完成
0/1000字
划线
笔记
复制
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
该试读文章来自付费专栏《从0开始学游戏开发》,如需阅读全部文章,
请订阅文章所属专栏。
立即订阅
登录 后留言

精选留言(2)

  • 淡看烟雨_
    其实在大型工程中,往往遇到的主要麻烦还是解耦,取决于设计者的理解能力,例如,程序过程与界面逻辑是两个完全应该分离的东西,大部分情况下,刚开始设计的时候还能规划好,但是难以坚持,到后面界面逻辑,服务逻辑,单元逻辑会混在一起,这对后来参与的人非常痛苦,我早年遇到过这样的MFC程序。能不能请您介绍一下,一个最小游戏系统的功能划分,抽象思路。非常感谢
    2018-08-28
    4
  • 赵鹏
    游戏逻辑越复杂,架构越大,后期就越难维护
    2019-01-29
收起评论
2
返回
顶部