zoukankan      html  css  js  c++  java
  • 游戏程序员的工作是怎样的?采访一下,为什么会选择游戏开发工程师!

    问题:

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

        2、从事这行在现在的高等教育中最对口的专业是哪些?(比如游戏程序员对应的是哪个专业;游戏美工对应的是哪个专业;游戏音乐对应的是哪个专业;等等)

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

        4、做这行,收入高吗?大约是多少?

        5、从事这个行业未来的上升空间大吗?如果做到管理层级别,负责的内容和一线程序员有什么不同?


     

    现在我们来一一探究游戏工程师的秘密:

    1、

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

    没有写过DOS游戏;

    现在游戏大主要是因为美术资源量大:模型复杂,贴图精度高,动作丰富,特效绚丽等。代码量再多也不会导致游戏包大到哪里去;

    现在游戏和以前的游戏有一些不同,现在游戏基本上都基于一款引擎来制作(例如OGRE,寒霜,CRY,虚幻,U3D等引擎),也就是说已经有一些常用、公用的东西(渲染,物理,动作等)被从游戏逻辑里抽离出来了。

    这样游戏写起来反而更容易一些,生产力一直都在提高嘛。想了解引擎的话,推荐看一看游戏引擎架构。

    2、

    从事这行在现在的高等教育中最对口的专业是哪些?

    程序猿当然是计算机最好了,另外通信,自动化也可以,也有很多学生物化学的同学凭借毅力转到这条路上来,当然那更辛苦了。

    最重要的相关知识有:用到的计算机语言,算法与数据结构,设计模式,图形学等…当然要增强内力的话要学的更多更深。

    具体工作:

    个人先按自己的经验分一下游戏前端的工种:引擎程序,游戏底层程序,战斗程序,上层逻辑程序;

    ✪ 引擎程序:主要有3大主要业务:渲染,物理,动画。几个分支业务:音效,地形等……例如渲染来说,从像素开始,向量,矩阵,导入模型,摄像机各种矩阵计算(旋转,位移,缩放),各种模型填充方式,材质,光照模型等等。

    这一部分的工作大部分都被商业引擎做完了,少数大厂会养一些大牛来维护自研引擎。

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

    一般是主程做这些工作。

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

    一般是核心元老程序做这些工作。

    ✪ 上层逻辑程序:与策划讨论需求,确定需求后消化之,然后确定表格结构,确定数据存储结构,确定网络协议,用已经写好的工具生成一些基础代码,然后就是编码实现各种逻辑(普通功能3千行),再把相关的UI的按键,效果写完(普通功能2千行)。

    界面可能改动量非常大,仔细认真,任劳任怨的工作态度尤为重要。

     3、

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

    这要看你想问哪方面了,业内各种奇葩八卦很多,开发阶段,运营阶段都有。

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

    4、

    做这行,收入高吗?大约是多少?

    不等,年收入5万-50万都不算罕见。当然这肯定不是平均分布的,还可以的项目里面年收入主要在10-30万之间。

    5、

    从事这个行业未来的上升空间大吗?如果做到管理层级别,负责的内容和一线程序员有什么不同?

    各行各业上升几率和空间都差不多,因为主管管理的人员基本都是5-10人之间,所以基本就是10-20%的几率升迁,最高能升迁到什么层次看公司规模。

    是否升迁技术能力占一部分因素,和人沟通的能力(尤其是跨部门)也占很重要的因素,另外就是资源的协调能力,这点游戏行业和其他行业并无不同。至于负责的内容,当然看你升迁到什么级别。


     

    最后,不管你是转行也好,初学也罢,进阶也可,如果你想学编程~

    【值得关注】我的 C/C++编程学习交流俱乐部!【点击进入】

    问题答疑,学习交流,技术探讨,还有超多编程资源大全,零基础的视频也超棒~

  • 相关阅读:
    使用taobao的npm镜像源,同时安装nrm镜像工具
    文档工具
    javascript基础语法备忘录-变量和数据类型
    a :hover 和a:hover 区别
    我使用的brackets插件
    使用git将自己的代码同时保存在多个代码托管平台
    mac os安装macvim
    ubuntu下安装录屏软件
    解决 eclipse cdt 运行时控制台乱码解决
    Chrome开发者工具详解(五)之Network面板
  • 原文地址:https://www.cnblogs.com/huya-edu/p/14326890.html
Copyright © 2011-2022 走看看