项目职位细分,这也有弊端。 例如,当一个方向达到一定深度时,你就会面临一个问题。 朝哪个方向? (当然,大佬们都是无所不能的。)再比如,入门时应该选择哪个方向?
深入理解每个立场后,思考某些问题可能会更容易理解。
包含职位
游戏行业的分工越来越细。 每个岗位除了策划、美术、编程之外,还呈现出不同层次的细分。 我们来谈谈目前游戏程序职位的功能细分、每个职位的任务以及日常状态。
简单来说,编程岗位除了我们最熟悉的客户端、服务端、引擎之外,还包括工具,还有现在越来越流行的TA。 总共5个模块位置。
下面详细说一下各个岗位的职责和日常工作。
客户
客户端也称为前端,作为客户端的程序也称为游戏玩家。 简单来说,他主要负责UI和玩法逻辑。
游戏玩法包含很多模块,不同类型的游戏之间也存在差异。 比如moba游戏不一定有养成系统,赛车游戏不一定有战斗系统。
从总体上看贴图笔刷,区分包括以下常用模块:UI、成就系统、战斗系统、任务系统、AI系统。
UI主要负责与玩家交互的逻辑,比如点击按钮、弹出界面等。 一般新手都会从UI开始。 因为UI逻辑比较简单,直观上就能看出问题。
大型项目组中,客户的每个子系统一般都有一个总负责人。 从一开始就由一个人负责,不仅可以提高效率,还可以避免不必要的麻烦,减少沟通成本。
这里就会出现一个问题,物理、渲染、音效、状态机呢? 难道它们不都是客户的吗? 难道客户不需要深入了解这些吗?
不属于! 我很清楚这些都是属于引擎的。 客户端脚本层只需要知道如何使用、如何设置参数、调用哪个接口等即可,真正的核心逻辑是由引擎封装的。 当然,如果你实现了额外的一套,比如脚本层来实现状态机,这不是一个单独的事情。 当然,这并不意味着客户端不需要知道这些。
简而言之,客户端负责实现游戏的核心玩法,即所谓的玩法。
客户的日常生活是怎样的?
1. 输入代码
2.修复BUG
3. 反对计划
客户与规划师沟通最频繁。 当然,它也是迭代次数最多的一款。 毕竟规划思路从一开始就不是完美的,设计往往漏洞百出。 有时甚至连夜就改了,否则就省了很多工夫。 因此,客户需要与策划师密切沟通,这样才能避免不必要的工作,得到准确的策划思路。
服务器
服务器也称为后端。 将您的游戏从单人游戏转变为多人游戏。
服务器和客户端需要完全不同的技术堆栈。 简单来说,它包括以下几个模块。 框架、网络传输、游戏逻辑、后台数据。
服务器端技术迭代很慢,没有太多知识,但需要深度。 很多担心进入游戏行业很难跳到其他行业的人都会考虑在后台工作。
事实上,作为一名服务器端开发人员,我大部分时间都在编写游戏业务逻辑。 毕竟框架和协议都是一开始就定下来的,甚至很多新游戏都复用了公司之前的游戏。
日常生活中,除了游戏逻辑之外,还包括服务器扩展、服务器切换等。
与客户端相比,服务端只需要写完逻辑,不会时不时地迭代。 这很舒服。
但上线后,意外通常是服务器端造成的。 没办法,服务端面对的是裸代码,不写一点逻辑给客户端看效果。 你总不能在服务器端写一个逻辑,让几万人去运行、测试吧? 毕竟服务器的特点就是抽象、难以验证。
编写游戏逻辑,模仿修改现有代码,对知识积累没有帮助。 网络库、数据库、定时器、协议编解码、分布式结构、热更新、消息分发、高并发等,只有核心的东西需要自己花。 是时候学习和消化了。
引擎
该引擎包含许多模块。 场景编辑器、特征编辑器、Spine编辑器等,渲染、物理、动画等核心系统,资源管理、运行时系统等基础系统等。
除了上述之外,其实还有另外一块,游戏AI,它和具体项目有很大的关系。
基础系统和编辑器的迭代很少,日常的变化和新功能主要集中在核心系统。 核心系统需要根据需求进行调整,并且随着技术的更新而不断迭代。 如果你深入核心系统的一个方向,你就能成为专家。 能够在各个方面都取得成就,绝对是天才。
引擎的日常工作就是添加功能和修复bug。
群里的日常说法是,生命所剩无几,无能为力。 需求一般不紧急,一般不遵循游戏版本。
但发动机模块太大,故障排查困难。 内存泄漏、资源释放、性能优化每次都会导致死亡。 技术需要与时俱进。 很多第一手资料都是国外的,浏览英文文献也很常见。
工具
工具是一个非常广泛的模块。 不同的公司和不同的项目团队有不同的需求。 但许多工具是通用的。
常用工具包括通用工具(SVN、Jenkins、P4)、资源相关工具(资源检测、优化、美术制作工具)、团队协作工具等。
此外,未直接集成到游戏引擎中的功能可能会被制作成单独的工具。 比如资源转换、离线烘焙等。
日常生活中,项目组中很少有人纯粹负责工具开发。 毕竟要开发的工具实在是太多了。 很多时候责任就从客户端身上免除了,或者工具的负责人也会做一些客户端的要求。
真正负责工具开发的人通常会开发引擎相关的工具,因为它们需要一定的专业知识。
相信了解之后2d素材,我心中的一些疑惑就会得到解答。
TA
TA,即技术艺术,这几年越来越流行,在校招里已经可以找到这个职位了。 主要负责游戏的各种渲染效果、图像质量等。
众所周知游戏开发岗位,它包括艺术导向和技术导向。 艺术导向一般是指从艺术到TA的转移,技术导向是指从程序到TA的转移。
该程序与图形程序非常相似,只不过一个倾向于编写着色器,另一个倾向于在渲染管线中折腾。
TA包括UI、动画、特效、材质、灯光、工具等方向。
简单来说就是三个部分:美术、渲染和工具。 我每天都会编写工具和着色器。 在一个大的团队中,我有具体的方向来细分动作、材质、UI、美术资源分配等。
技术艺术相对来说有一定的门槛。 很多客户在深入发展后游戏开发岗位,会考虑转做TA。 技能点是图形渲染+美术工具+美学。 这确实是一个很好的方向,而且工作成果也非常明显,效果可以直观地看到。 据说只有大中型企业需要(待考察),专家级人才紧缺。
总结
事实上,除了上面提到的五个职位之外,还有一些职位正在被创建。 例如,技术规划TD很可能成为未来的趋势。
总之,分工越来越细化、专业化。 游戏行业本身也在向精细化方向发展。 每个公司都会慢慢深入某一类型的游戏领域,类型壁垒和技术壁垒逐渐形成。
最近一段时间我一直在努力跟上进度,每天加班,非常努力地保持更新。
目前我已经发表了几篇介绍游戏开发岗位基础知识、路线等的文章,因为在后台咨询和和一些朋友聊天的过程中,我感觉大家似乎不太了解岗位的基本信息。 希望这些可以帮助到大家。
也欢迎大家来找我聊聊、聊聊、聊聊。
原创并不容易。 路过的大佬们请注意观看。
游戏君无尘
游戏入口| 游戏技术|
求职面试 | 游戏科学