美文网首页
第四章 游戏开发者的道路

第四章 游戏开发者的道路

作者: gsscsd | 来源:发表于2018-08-11 07:12 被阅读0次

    在第二部分讲到过,游戏开发者最后升级为开发总监或者游戏制作人,但是,这两个岗位不只是需要技术,对于很多的开发者来说,技术非常重要,以下列出一个资深游戏开发者的标准:

    1. 内功:

    内功是最重要的,内功也是决定一个人发展的潜力。

    • 数学基础:根据你所做内容来决定,一般上层逻辑比较少的去考虑到积分等高数内容。但是如果想搞图形学,矩阵线性代数,高数必须要有一定的功底
    • 算法:常见的排序,查找需要理解并掌握,进一步常见的还有分治,贪心,动态规划,有时候现学现卖也是可以的。另外,除了这些基本的算法,在游戏领域还是有很多其他领域不太常用的算法,比如八叉树查找,碰撞检测,A*。还有一些很特殊的情况需要开发者自己去寻找合适的算法。
    • C++:基本语法,代理,命名空间,const,继承,内存结构,虚表,引用,断言,宏定义等
    • 数据结构:首先是掌握链表,数组,队列,堆,栈,图,树等数据结构,然后是各种排序,查找,遍历等算法。这些掌握了以后可以很快的熟悉stl或者类似的基本库原,用的时候可以更准确的选择合适的数据结构
    • 设计模式:一般来说,我们需要设计模式来快速的搭建游戏逻辑框架,比如前面提到的各种逻辑系统。而且还需要通过设计模式来理解引擎各个模块的设计思路。当然,如果你想设计游戏引擎,那更不能少了设计模式了。
    • 对引擎各个模块由一定深入的理解:这个不用多说,看一遍游戏引擎架构吧,不理解写出的代码经常会出现各种问题(比如同步问题),编辑器各种功能也用不好。
    • 内存管理:可能很多引擎或者语言已经尽可能的帮你处理内存了,但是你难免需要在一些特殊情况下自己处理,内存池技术,各种C++的new的使用,不得不会。
    • 对开发工具的熟悉:这里并不是指只是对某一个引擎使用熟练,而且对不同引擎相关的内容都有一定理解,可以很快的触类旁通。
    • 性能分析与性能优化: CPU与GPU,渲染批次,渲染实例化,布料优化,网络同步数据量,物理开销等,加载资源优化
    • 对游戏的理解:虽然不玩游戏也一样能参与游戏开发,但玩过游戏的人还是有优势的。最明显的是玩过游戏的人会对游戏有更多的想法与意见,也习惯去主动学习其他的游戏的技术与优点。(程序这样,策划更是如此)
    • 开发经验:这个就比较宽泛了,难以只言片语说清。比如你的游戏莫名其妙的出现了一些bug,新手完全无从下手,而有经验的人会有各种手段去调试并解决。经验丰富的老手有时真的抵得上N个新手的,所以这需要各位不断的学习与实践了。
    1. 技术点:
    • 存储与序列化(protobuf) 单机玩家的游戏存档如何实现?通过序列化 socket 搭建基本的TCP/UDP通信系统
    • 多线程 一般用于渲染,物理,网络同步等,减少开销,增加cpu利用率
    • 打包流水线,包的大小优化,包的多层递归引用优化等
    • 数据库 什么数据要存在数据库里面,什么存在本地就可以。应该选择什么数据库?之后会不会出现游戏合服?
    • CDN /服务器的部署与运行等 这个也很复杂,又要考虑成本又想容纳更多玩家(网游),有时可能需要用到CDN技术来优化网络同步,另外还要考虑成本等问题来决定是否租用云服务器
    1. 其他:
    • 版本控制 一般使用git或者svn
    • 性能分析工具 前面提到了性能优化,优化前我们需要各种工具来辅助我们找到影响游戏效率的瓶颈
    • 平台对接 游戏需要发布到不同的平台,这个平台不仅仅指硬件平台(Android,iOS,PS4,PC,XBOX)还包括各种软件平台(各种应用商店,如PC上的Steam,WeGame。安卓上的应用宝,各种软件管家等)该过程其实也相当繁琐,有一些平台的审核非常严格,需要积累一定的经验才能快速的处理相关内容
    • 国际化与本地化 简单来说,就是不同国家的语言版本不同。如果你的游戏不是只卖给英国美国,你就不得不面对本地化,坑很多
    • 日志系统 开发与运营 游戏上线一定很多bug,你又没办法去玩家电脑上调试,如何快速定位bug,日志系统很有效
    • 调试 开发期 断点调试(最有效)、日志调试、dump调试 、控制台调试,可视化调试(在场景内绘制特定的几何体),截图录屏调试(一般用于调试渲染,动画等) 上线期 日志调试、服务器可以用dump调试,也可以想办法把客户端的dump传送到服务器 、管理员GM调试(非常重要,可以避免重启服务器)
    • bug处理 有时候已经发生的bug无法改变,又不能及时修复,想要弥补玩家,可以通过GM来给予玩家补偿
    • 工具开发 提高美术策划的开发效率

    最后给出一份腾讯资深游戏设计师的公开课的资料:

    视频链接:游戏开发入门(一)游戏开发概述(3节课 时常:约1小时03分钟)
    视频链接:游戏开发入门(二)游戏中的设计模式(3节课 时常:约2小时40分钟)
    视频链接:游戏开发入门(三)图形渲染(3节课 时常:约2小时20分钟)
    视频链接:游戏开发入门(四)逻辑与脚本开发(7节课 时常:约2小时40分钟 第4节无内容)
    视频链接:游戏开发入门(五)游戏动画系统(6节课 时常:约4小时 建议戴耳机观看)
    视频链接:游戏开发入门(六)游戏物理引擎(4节课 时常:约1小时20分钟 第5节无内容)
    视频链接:游戏开发入门(七)特效系统(6节课 时常:约2小时20分钟)
    视频链接:游戏开发入门(八)游戏中的场景管理(5节课 时常:约2小时07分钟)
    视频链接:游戏开发入门(九)游戏同步技术(3节课 时常:约1小时07分钟)
    视频链接:游戏开发入门(十)游戏中的网络模块(6节课 时常:约2小时20分钟)
    视频链接:游戏开发入门(十一)游戏引擎架构(8节课 时常:约2小时40分钟)

    视频链接:一堂课学会shader——渲染拓展课程(3节课 时常:约1小时20分钟)

    相关文章

      网友评论

          本文标题:第四章 游戏开发者的道路

          本文链接:https://www.haomeiwen.com/subject/saurbftx.html