编程学习网 > 程序人生 > 游戏程序员的工作是怎样的?
2016
03-03

游戏程序员的工作是怎样的?

问题:

1.现在编那些动辄几十个G的游戏和以前编DOS游戏的方法是一样的吗?是原理不同还是原理相同只是工作量变大?
2.从事这行在现在的高等教育中最对口的专业是哪些?(比如游戏程序员对应的是哪个专业;游戏美工对应的是哪个专业;游戏音乐对应的是哪个专业;等等)
3.在编写游戏的过程中有没有一些值得一说的故事?
4.做这行,收入高吗?大约是多少?
5.从事这个行业未来的上升空间大吗?如果做到管理层级别,负责的内容和一线程序员有什么不同?





1.现在编那些动辄几十个G的游戏和以前编DOS游戏的方法是一样的吗?是原理不同还是原理相同只是工作量变大?

没有写过DOS游戏;
现在游戏大主要是因为美术资源量大:模型复杂,贴图精度高,动作丰富,特效绚丽等。代码量再多也不会导致游戏包大到哪里去;
现在游戏和以前的游戏有一些不同,现在游戏基本上都基于一款引擎来制作(例如OGRE,寒霜,CRY,虚幻,U3D等引擎),也就是说已经有一些常用、公用的东西(渲染,物理,动作等)被从游戏逻辑里抽离出来了。
这样游戏写起来反而更容易一些,生产力一直都在提高嘛。想了解引擎的话,推荐看一看《游戏引擎架构》@Milo Yip

2.从事这行在现在的高等教育中最对口的专业是哪些?
程序猿当然是计算机最好了,另外通信,自动化也可以,也有很多学生物化学的同学凭借毅力转到这条路上来,当然那更辛苦了。
最重要的相关知识有:用到的计算机语言,算法与数据结构,设计模式,图形学等…当然要增强内力的话要学的更多更深。


具体工作:
个人先按自己的经验分一下游戏前端的工种(同行请轻拍):引擎程序,游戏底层程序,战斗程序,上层逻辑程序;

引擎程序:主要有3大主要业务:渲染,物理,动画。几个分支业务:音效,地形等……例如渲染来说,从像素开始,向量,矩阵,导入模型,摄像机各种矩阵计算(旋转,位移,缩放),各种模型填充方式,材质,光照模型等等。——这一部分的工作大部分都被商业引擎做完了,少数大厂会养一些大牛来维护自研引擎。

 

 游戏底层程序:具体业务具体办——例如实现前端数据的存储,需要研究xml,binary,excel表等东西怎么读,怎么写(核心3~5千行),读写工具最好自动生成(代码生成代码);例如实现与服务器通信的逻辑,需要知道TCP/IP,协议最好自动化生成(代码生成代码),怎么加密解密等(核心3~5千行);例如实现资源打包,需要思考怎么压缩资源,怎么解压资源,怎么从服务器下载资源,存放在哪里等(核心3千行)。——一般是主程做这些工作。

 

战斗程序:和策划讨论好需求后,写角色的身体控制,特效控制,动作控制,封装出技能,然后实现AI;然后从角色派生出主角,NPC,怪物,宠物以及各种小物件等东西,然后写一下摄像机的镜头控制(共3~8万行)。当然,最好写一些编辑器让策划去使用,或者指定好表格结构告诉策划怎么配置,以达到他们的需求。——一般是核心元老程序做这些工作。

 

上层逻辑程序:与策划讨论需求,确定需求后消化之,然后确定表格结构,确定数据存储结构,确定网络协议,用已经写好的工具生成一些基础代码,然后就是编码实现各种逻辑(普通功能3千行),再把相关的UI的按键,效果写完(普通功能2千行)。例如实现一个铁匠铺,定好哪些是材料(铁锭),哪些是产品(铁锤),然后按什么逻辑从材料到产品,向服务器要哪些数据并告诉它存哪些东西,最后把UI的按钮以及效果写完。——界面可能改动量非常大,仔细认真,任劳任怨的工作态度尤为重要。

 

 3.在编写游戏的过程中有没有一些值得一说的故事?

这要看你想问哪方面了,业内各种奇葩八卦很多,开发阶段,运营阶段都有。
想起一件事情来,当年班禅活佛来公司视察,一个负责项目开发的小伙子负责讲解。活佛挺有兴趣的,还拍了拍小伙子的脑袋,算是灌顶祝福。晚上这位同学上吐下泻,大病一场,我们都说活佛灌顶果然有效,他体内积攒的毒素甚多,这下算是全排出去了。


4.做这行,收入高吗?大约是多少?
不等,年收入5万-50万都不算罕见。当然这肯定不是平均分布的,还可以的项目里面年收入主要在10-30万之间。

5.从事这个行业未来的上升空间大吗?如果做到管理层级别,负责的内容和一线程序员有什么不同?
各行各业上升几率和空间都差不多,因为主管管理的人员基本都是5-10人之间,所以基本就是10-20%的几率升迁,最高能升迁到什么层次看公司规模。是否升迁技术能力占一部分因素,和人沟通的能力(尤其是跨部门)也占很重要的因素,另外就是资源的协调能力,这点游戏行业和其他行业并无不同。至于负责的内容,当然看你升迁到什么级别。 


文章整理于【知乎】

扫码二维码 获取免费视频学习资料

Python编程学习

查 看2022高级编程视频教程免费获取