找回密码
 立即注册
查看: 300|回复: 8

请问腾讯校招中游戏引擎开发和游戏客户端开发有什么区别吗?

[复制链接]
发表于 2021-9-3 21:01 | 显示全部楼层 |阅读模式
游戏引擎开发这个岗位好像是今年才在校招官网上有的,我想问下和之前客户端岗位有什么区别吗?
1.技术要求上的区别?(主要是下面几个方面,其他方面说一下更好)
1.1.游戏引擎和游戏客户端对实时渲染知识的要求区别?
1.2离线渲染、物理引擎、数字几何处理、计算几何、模拟这几个方向,要求的深度?
1.3本科生是否有机会,引擎客户端难度区别?如何准备?
1.4两者均要求C++/C#调试经验,区别?
2.工作内容的区别?
3.各工作室对游戏引擎和游戏客户端两岗位的区别(指4大工作室+Next)?
4.待遇区别?
发表于 2021-9-3 21:04 | 显示全部楼层
作为一个客户端开发和引擎开发都干过的人,当初入行之时也对这个问题十分困惑,因此看到这个问题很亲切,就当作知乎首答吧。
本人在网易雷火做过五个月的游戏客户端开发(实习),目前在腾讯天美做了三个多月的游戏引擎开发(实习),所以对这两个岗位都有了一定的了解,我会尝试针对题主提出的这几点来作出回答,但是顺序不一定一致,希望能够让大家更加容易理解这两个岗位的区别。
1. 工作内容上的区别
客户端开发更偏重于游戏玩法的实现,也就是常说的Gameplay,比如战斗系统怎么实现、任务流程怎么进行、UI界面如何交互等等,细分来说,其实客户端也有很多方向,比如3C(Character、Camera、Controller)、AI(怪物、寻路)等。再具体一点,一般新人进去大概率是当UI仔,你可能会接到一个需求,比如实现一个简单的背包界面,背包里面会存放人物身上的物品,点击的时候会显示物品的具体信息(属性、数量、价格等),并且可以出售、丢弃、购买、整理等。因此客户端开发,更多的会跟策划打交道,每当机智的策划同学想到了一个什么新的点子(需求),你就需要把他们精妙的想法实现到游戏中。
游戏引擎开发则更偏重于游戏的画面和性能,以及工具链,并且引擎还会更多地涉及底层的技术知识。引擎岗也有很多细分方向,最大的一块肯定是渲染(或者说人们一般最关注的),除此之外还有动画、物理、编辑器、脚本、性能等等,以及一大堆的工具链。这一点其实可以去看看UE引擎的官方文档,下面那么多模块,每一个都是可以深入研究的领域:


即使是最受关注的渲染方向,也还分为光照、着色、阴影、抗锯齿、后处理、特效等等,其实细分方向真的很多。
我本人是渲染方向的,具体的工作而言,你可能会去实现某种画面表现的特性,比如天气系统,你怎么实现动态昼夜变化的效果?比如粒子系统,UE的Niagara已经非常强大了,你当然不需要自己去实现一个粒子系统,但是你如何运用它的强大功能去实现一些酷炫的效果?比如像最后的生还者2中的雪粒子附着到人物身上、随着手电筒的光束照射,虫粒子群会随之聚集和扩散等。Niagara系统是可以在内置的脚本中写逻辑的,因此几乎你想要的粒子行为和表现效果,都可以通过代码(和美术)来实现。
此外,引擎岗之所以是引擎岗,肯定是要写引擎的代码的,不过除了极少数拥有自研引擎的工作室之外,大部分引擎岗的工作就是如何"用好"和"改好"商业引擎,不需要重造轮子。不过如果现在的商业引擎没有这个功能,但是你的项目又需要用到这个功能,你就需要去实现;如果这个引擎的功能,无法满足项目的需要或者太烂了(无论是质量还是性能),你就需要进行改进。包括一些引擎工具的开发,一些系统功能的扩展和优化(有时候你甚至需要修复引擎自身的Bug),这些,都是引擎岗的工作内容。当然,引擎还有很大的一块是性能优化,这一部分工作一般都是组里技术实力比较强悍、工作经验比较丰富的老司机来完成。
因此引擎岗的话,平时更多的会和美术打交道,一起去实现更牛逼和酷炫的效果。
推荐一个引擎大佬,北极光的技术总监:安柏霖 以及我们组的组长大佬 毛星云
不过我想提的重要一点是,其实客户端开发和游戏引擎开发,很多时候并不是分得那么清的。比如我曾经在网易实习的时候,那个项目的程序组只分为客户端和服务端,所以无论是客户端开发还是引擎开发,都由客户端的同学来完成。在这种组里面,一般会有一部分人做Gamplay的工作,还有一部分人,其实会做引擎的工作,比如渲染、性能优化、工具链等,而且客户端组长确实就是做渲染的(他一个人),(但项目主程是服务端)。即使在我现在的这个组,分了客户端和引擎岗,客户端很多一部分工作,都会与引擎岗交叉重叠,比如他们也会有做动画的(3C),做工具链的(美术资产管理工具),也会有一些改到引擎代码的工作。甚至我们引擎岗的很多工作,都需要客户端的同事来做支持。
2. 客户端和引擎岗的难度区别
一般来说,引擎岗的需求会比客户端岗稍微高一点,因为引擎更多地涉及到底层,并且很大一块是渲染,或者说图形学,因此需要较强的数学功底。但门槛的区别,不代表引擎岗做的工作一定比客户端难,客户端的很多进阶方向,比如上面提到的战斗、AI、动画、系统架构等,都是很有技术深度,值得深耕的。
比如这个知乎大佬 Jerish - 知乎 (zhihu.com) 写过很多客户端方向的高质量文章。
说到难度了,就顺便提一提游戏公司对于两个岗位的区别。其实我推测,题主问这个问题的目的应该是想知道这两个岗位到底哪一个未来的发展会好一点(比如待遇和晋升),以及引擎岗究竟难不难学,是否能够入门,这其实也是我当时的困惑所在。但从我的经验来看,可能不需要太纠结这个问题,因为无论是客户端还是引擎方向,都可以拥有很大的发展前景,客户端一样可以作为主程、组长甚至总监,我们项目中也有一些职级很高的客户端大佬。一个人的职业发展更多的是取决于你的能力,以及你工作上的表现,而不是取决于你选择了什么岗位。
不过客观地来说,引擎确实是一个门槛更高,以及天花板更高的岗位,腾讯中我所知道的3个T14的巨佬,都是引擎方向的(或者说客户端+引擎),我之所以说不需要纠结这个问题,是因为绝大多数人,都不会触及到客户端开发的天花板。而且随着你开发能力的提升,肯定是越来越往底层做的,客户端多多少少会涉及到引擎的工作,后期转引擎也是很简单的。这里再介绍一个技术大佬,据说是腾讯第一程序员 顾煜 - 知乎 (zhihu.com)  他前期也是做客户端开发的,后来职业中期的时候才转去研究引擎。所以我建议最好从自身的兴趣出发,找到一个自己喜欢的方向,做到精通,喜欢GamePlay,游戏玩法相关的就做客户端开发,对于画面表现、底层技术感兴趣的,就选引擎。有时候要做选择,不从功利的角度出发,也许反而能得到更好的结果。
但话说回来,咱实在点也没事(我真的很喜欢转折.jpg),如果真的关注薪资的问题,我也可以告诉你,客户端和引擎岗,如果是相同级别的OFFER,其实差距不大,可以说基本没啥差别。如果真要说差别,那就是引擎岗的上界会比客户端更高,毕竟这技术区间摆在这里,那些发了Siggraph的学神,那些浙大CAD的大佬,不给多点也说不过去啊。不过还是那句话,我们当中的大多数人都...不需要纠结这个问题。
3.技术要求的区别
其实这两个岗位的要求,可以直接去参考一下各个游戏大厂对于这两个岗位的jd(岗位描述),对于我自身的经验来说(我参加过客户端的秋招和引擎的秋招),有一部分技术要求是公有的(Public),比如计算机基础知识(数据结构、操作系统、计算机组成)、计算机语言能力(C++、C#、Lua)、算法能力;当然还有项目经历(项目、比赛、实习都算);区别来说,其实主要就是计算机图形学的知识了。除此之外,引擎岗可能还会更注重你的底层技术知识,比如计算机组成中的缓存技术,C++编译链接的原理(动态链接、静态链接),操作系统中的内存管理等。此外,游戏客户端可能更看重于你对游戏引擎的熟悉程度(使用),以及开发游戏的经验。如果你自己尝试开发过很多或者质量很高的游戏,面试的时候肯定是很加分的。
在图形学这一块,其实客户端开发也会问一些,但我个人觉得,其实客户端问图形学的意义不是很大,除非像我之前说的客户端和引擎都在一个组,不进行区分,否则进了客户端组大概率不会参与到渲染相关的开发(当然可能也会有一些用,比如一些渲染的基础知识,如果你要做一个美术资产管理工具,你连Mesh、Texture、Material这些都不懂,是不可能做出来的)。然后根据我的经验而言,我实习面客户端的时候,一点渲染知识没问,秋招的时候倒是问了一点,不过也是比较基础的东西,客户端更注重的还是软件开发的工程能力,问我图形的原因我认为是跟我自己的简历背景相关,如果你有很多Gameplay方面的经验,我想客户端的面试官肯定会更感兴趣问这些东西。
那么对于引擎岗来说,图形学基本是必问的了。游戏引擎主要关注实时渲染,所以离线渲染可能要求不是那么高,当然如果你光追学得很牛逼,实时光追很了解得话还是有用的。至于数字几何处理、计算几何这些,感觉算是一些前置基础知识,不用太过系统和详细地去学,用到的时候再学可能效率会更高。还有模拟,这些其实与你做的方向相关,比如我自己就对流体模拟、布料模拟很感兴趣,因此这些可以多深入学习,上面也说了引擎岗也分很多方向,如果你就是擅长物理,那么你的技术深度越深越好。
4. 如何准备
和职业发展一样,面试关注的是你的实力,跟本科生研究生没有太大的关系,只是一般研究生对于技术和知识的积累更深厚,导致了可能会被认为引擎岗研究生会更容易进入,其实我们组里就有几个本科生,实力也挺强。
如果想要系统地学习,那么还是我刚才说的那几点,计算机基础、图形学基础知识、算法和Coding能力,以及项目经验。对于图形学而言,现在的学习资料太多了,有空的话直接GAMES套餐来一套,学一学闫神的101和202,只要全部理解掌握了,把作业都独立完成了,面试肯定没问题
如果你只是想达到招聘的门槛,那么其实图形学也有一些八股文。我可以简单说一下,渲染管线、变换矩阵、着色模型、抗锯齿处理、辐射度量学(BRDF)、PBR、阴影、全局光照等。。面经也很多,自己找吧。但是光靠八股文还是有可能会翻车的,干程序员这行的,还是得有真材实料不是。
另外我有个小建议,可以考虑把问题描述改为游戏开发中的客户端开发和引擎开发有什么区别,这样可能会让更多的人看到。
OK,以上,算是我的知乎首答了,希望能够解决题主的困惑。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
发表于 2021-9-3 21:08 | 显示全部楼层
1.技术要求上的区别?(主要是下面几个方面,其他方面说一下更好)
1.1.游戏引擎和游戏客户端对实时渲染知识的要求区别?
客户端如果是做Gameplay的话,对实时渲染要求不高。引擎方向如果是做工具链的话,也对实时渲染要求不高。但是面试的话引擎方向对实时渲染是必须要求,客户端不是。
1.2离线渲染、物理引擎、数字几何处理、计算几何、模拟这几个方向,要求的深度?
任选一块专研即可,在游戏里都有可能用到,除了大牛以外,正常人只能在短暂的学校生涯中熟悉这几个中的一个领域。
1.3本科生是否有机会,引擎客户端难度区别?如何准备?
知识到位就行。全靠自学。引擎面试会更难,具体面试题可以去牛客看面经比对一下。
1.4两者均要求C++/C#调试经验,区别?
校招面试基本不问C#,C++是必要条件。组里没见过不会C++进来的程序,尽管进来以后可能写C#/Python/Lua/GLSL/HLSL/CG等多种语言。
2.工作内容的区别?
工作内容可能有重复之处。客户端的工作更偏向于具体完成某个游戏内容,而引擎则更倾向于为客户端/美工完成某个功能提供技术支持。但是不是完全的泾渭分明,两者的工作有许多交叉的地方。在许多工作室内部不会有专门设立的引擎岗位,都是统称客户端。只是有些客户端对接策划的需求写GamePlay,有些客户端对接美术的需求做渲染/物理特性的开发,有些客户端做工具链相关的开发。
3.各、工作室对游戏引擎和游戏客户端两岗位的区别(指4大工作室+Next)?
具体看项目组,和项目组的规模有关系。项目组越大分工越细。
4.待遇区别?
校招定级都差不多,待遇也不会拉开很多。引擎的天花板更高一点,但是这是职业生涯中后期才会考虑的事。腾讯内部目前很多高T总监,比如安老板,都是在客户端锻炼后转向引擎开发的。
发表于 2021-9-3 21:11 | 显示全部楼层
客户端拼开发速度,广泛知识面,勇气。
引擎开发拼底层技术原理,低调。
发表于 2021-9-3 21:20 | 显示全部楼层
区别就是面试官在筛选简历时,用哪个tag过滤会看到你的简历。不过一般广义的客户端翻简历时会把引擎和客户端都都勾上,所以可以认为几乎没有区别。
投了之后基本就属于盲盒阶段了,看哪个面试官先看到你的简历,至于最后具体什么方还是看你的实力来定,能力强基础好懂图形懂低层的可能安排偏引擎,编程基础还行但是没什么游戏或者图形经验的可能偏game play
另外,就算是同一部门同一岗位,不同项目/方向之间做的事情也可能差很多
发表于 2021-9-3 21:24 | 显示全部楼层
一个回答的都没有?答主也是校招生,对这个问题也非常兴趣,以下是其中几个问题的个人观点,供参考:

技术栈(校招):
客户端:
    C/C++(OOP, 11,17新特性), C#/luaU3D/UE4内存优化策略多线程优化策略数据结构算法图形学基础知识(3D数学知识等)
引擎
    客户端技术栈渲染基础(实时渲染基础,延时渲染基础等)物理学基础(牛顿动力学,刚体运动学,光学基础等)GPU架构(缓存,GPU并行处理等)
面试难度(校招):
本科生有机会,两者难度大体相同,主要在于引擎岗的hc远少于客户端,大概1:6?
学习建议(校招面试)
《深入探索c++对象模型》《STL源码剖析》《Fundamentals of Computer Graphics》《unity shader入门》,GAMES论坛的开放课程
其他《Mathematics for 3D Game Programming and Computer Graphics》《Physically Based Rendering》《Real-Time-Rendering》《Introduction to 3D Game Programming with DirectX 11》《Real-time Collision Detection》这种可选择性看,不如看《腾讯游戏开发精粹》面试效果更好?(如果你打算投腾讯)
工作区别(个人YY)
客户端
    根据策划需求,实现游戏的战斗/场景/系统/界面等逻辑和效果和策划/美术/引擎对接,确保游戏功能点的实现,工具链的优化,性能开销等问题
除了渲染,游戏客户端程序员还有哪些进阶方向? - Jerish的回答 - 知乎 https://www.zhihu.com/question/433768405/answer/1700193198
从事游戏开发,需要什么技能? - 胡帆的回答 - 知乎 https://www.zhihu.com/question/20242554/answer/84086866
引擎
    维护引擎的使用,解决引擎使用中的BUG 对游戏的某些性能瓶颈进行优化对游戏的某些卖点进行模块/流程/工具链的实现和设计,主要通过整合其他开源代码,复现业界前沿技术如每年GDC上的技术分享,以及论文中的方法并优化性能
待遇区别:
校招新人在一个价位区间,根据面试/简历 略浮动几个k。后期发展的待遇,我也想知道。
更新
终于有大佬来回答了
发表于 2021-9-3 21:31 | 显示全部楼层
一个偏工具和底层
一个更偏业务

对新人来说区别并不明显 反正你也只能打杂
分到什么组就干什么活
而做深了两个自然都得会
发表于 2021-9-3 21:40 | 显示全部楼层
虽然上面的大佬各种分析,但是真实秋招选手告诉你。这个方向就是个摆设,谁手快捞了你就是哪个方向。
发表于 2021-9-3 21:44 | 显示全部楼层
转载内容出处请移步
https://www.zhihu.com/question/414635763/answer/2077185460
作为一个客户端开发和引擎开发都干过的人,当初入行之时也对这个问题十分困惑,因此看到这个问题很亲切,就当作知乎首答吧。
本人在网易雷火做过五个月的游戏客户端开发(实习),目前在腾讯天美做了三个多月的游戏引擎开发(实习),所以对这两个岗位都有了一定的了解,我会尝试针对题主提出的这几点来作出回答,但是顺序不一定一致,希望能够让大家更加容易理解这两个岗位的区别。
1. 工作内容上的区别
客户端开发更偏重于游戏玩法的实现,也就是常说的Gameplay,比如战斗系统怎么实现、任务流程怎么进行、UI界面如何交互等等,细分来说,其实客户端也有很多方向,比如3C(Character、Camera、Controller)、AI(怪物、寻路)等。再具体一点,一般新人进去大概率是当UI仔,你可能会接到一个需求,比如实现一个简单的背包界面,背包里面会存放人物身上的物品,点击的时候会显示物品的具体信息(属性、数量、价格等),并且可以出售、丢弃、购买、整理等。因此客户端开发,更多的会跟策划打交道,每当机智的策划同学想到了一个什么新的点子(需求),你就需要把他们精妙的想法实现到游戏中。
游戏引擎开发则更偏重于游戏的画面和性能,以及工具链,并且引擎还会更多地涉及底层的技术知识。引擎岗也有很多细分方向,最大的一块肯定是渲染(或者说人们一般最关注的),除此之外还有动画、物理、编辑器、脚本、性能等等,以及一大堆的工具链。这一点其实可以去看看UE引擎的官方文档,下面那么多模块,每一个都是可以深入研究的领域:
即使是最受关注的渲染方向,也还分为光照、着色、阴影、抗锯齿、后处理、特效等等,其实细分方向真的很多。
我本人是渲染方向的,具体的工作而言,你可能会去实现某种画面表现的特性,比如天气系统,你怎么实现动态昼夜变化的效果?比如粒子系统,UE的Niagara已经非常强大了,你当然不需要自己去实现一个粒子系统,但是你如何运用它的强大功能去实现一些酷炫的效果?比如像最后的生还者2中的雪粒子附着到人物身上、随着手电筒的光束照射,虫粒子群会随之聚集和扩散等。Niagara系统是可以在内置的脚本中写逻辑的,因此几乎你想要的粒子行为和表现效果,都可以通过代码(和美术)来实现。
此外,引擎岗之所以是引擎岗,肯定是要写引擎的代码的,不过除了极少数拥有自研引擎的工作室之外,大部分引擎岗的工作就是如何"用好"和"改好"商业引擎,不需要重造轮子。不过如果现在的商业引擎没有这个功能,但是你的项目又需要用到这个功能,你就需要去实现;如果这个引擎的功能,无法满足项目的需要或者太烂了(无论是质量还是性能),你就需要进行改进。包括一些引擎工具的开发,一些系统功能的扩展和优化(有时候你甚至需要修复引擎自身的Bug),这些,都是引擎岗的工作内容。当然,引擎还有很大的一块是性能优化,这一部分工作一般都是组里技术实力比较强悍、工作经验比较丰富的老司机来完成。
因此引擎岗的话,平时更多的会和美术打交道,一起去实现更牛逼和酷炫的效果。
推荐一个引擎大佬,北极光的技术总监:安柏霖 以及我们组的组长大佬 毛星云
不过我想提的重要一点是,其实客户端开发和游戏引擎开发,很多时候并不是分得那么清的。比如我曾经在网易实习的时候,那个项目的程序组只分为客户端和服务端,所以无论是客户端开发还是引擎开发,都由客户端的同学来完成。在这种组里面,一般会有一部分人做Gamplay的工作,还有一部分人,其实会做引擎的工作,比如渲染、性能优化、工具链等,而且客户端组长确实就是做渲染的(他一个人),(但项目主程是服务端)。即使在我现在的这个组,分了客户端和引擎岗,客户端很多一部分工作,都会与引擎岗交叉重叠,比如他们也会有做动画的(3C),做工具链的(美术资产管理工具),也会有一些改到引擎代码的工作。甚至我们引擎岗的很多工作,都需要客户端的同事来做支持。
2. 客户端和引擎岗的难度区别
一般来说,引擎岗的需求会比客户端岗稍微高一点,因为引擎更多地涉及到底层,并且很大一块是渲染,或者说图形学,因此需要较强的数学功底。但门槛的区别,不代表引擎岗做的工作一定比客户端难,客户端的很多进阶方向,比如上面提到的战斗、AI、动画、系统架构等,都是很有技术深度,值得深耕的。
比如这个知乎大佬 Jerish - 知乎 (zhihu.com) 写过很多客户端方向的高质量文章。
说到难度了,就顺便提一提游戏公司对于两个岗位的区别。其实我推测,题主问这个问题的目的应该是想知道这两个岗位到底哪一个未来的发展会好一点(比如待遇和晋升),以及引擎岗究竟难不难学,是否能够入门,这其实也是我当时的困惑所在。但从我的经验来看,可能不需要太纠结这个问题,因为无论是客户端还是引擎方向,都可以拥有很大的发展前景,客户端一样可以作为主程、组长甚至总监,我们项目中也有一些职级很高的客户端大佬。一个人的职业发展更多的是取决于你的能力,以及你工作上的表现,而不是取决于你选择了什么岗位。
不过客观地来说,引擎确实是一个门槛更高,以及天花板更高的岗位,腾讯中我所知道的3个T14的巨佬,都是引擎方向的(或者说客户端+引擎),我之所以说不需要纠结这个问题,是因为绝大多数人,都不会触及到客户端开发的天花板。而且随着你开发能力的提升,肯定是越来越往底层做的,客户端多多少少会涉及到引擎的工作,后期转引擎也是很简单的。这里再介绍一个技术大佬,据说是腾讯第一程序员 顾煜 - 知乎 (zhihu.com) 他前期也是做客户端开发的,后来职业中期的时候才转去研究引擎。所以我建议最好从自身的兴趣出发,找到一个自己喜欢的方向,做到精通,喜欢GamePlay,游戏玩法相关的就做客户端开发,对于画面表现、底层技术感兴趣的,就选引擎。有时候要做选择,不从功利的角度出发,也许反而能得到更好的结果。
但话说回来,咱实在点也没事(我真的很喜欢转折.jpg),如果真的关注薪资的问题,我也可以告诉你,客户端和引擎岗,如果是相同级别的OFFER,其实差距不大,可以说基本没啥差别。如果真要说差别,那就是引擎岗的上界会比客户端更高,毕竟这技术区间摆在这里,那些发了Siggraph的学神,那些浙大CAD的大佬,不给多点也说不过去啊。不过还是那句话,我们当中的大多数人都...不需要纠结这个问题。
3.技术要求的区别
其实这两个岗位的要求,可以直接去参考一下各个游戏大厂对于这两个岗位的jd(岗位描述),对于我自身的经验来说(我参加过客户端的秋招和引擎的秋招),有一部分技术要求是公有的(Public),比如计算机基础知识(数据结构、操作系统、计算机组成)、计算机语言能力(C++、C#、Lua)、算法能力;当然还有项目经历(项目、比赛、实习都算);区别来说,其实主要就是计算机图形学的知识了。除此之外,引擎岗可能还会更注重你的底层技术知识,比如计算机组成中的缓存技术,C++编译链接的原理(动态链接、静态链接),操作系统中的内存管理等。此外,游戏客户端可能更看重于你对游戏引擎的熟悉程度(使用),以及开发游戏的经验。如果你自己尝试开发过很多或者质量很高的游戏,面试的时候肯定是很加分的。
在图形学这一块,其实客户端开发也会问一些,但我个人觉得,其实客户端问图形学的意义不是很大,除非像我之前说的客户端和引擎都在一个组,不进行区分,否则进了客户端组大概率不会参与到渲染相关的开发(当然可能也会有一些用,比如一些渲染的基础知识,如果你要做一个美术资产管理工具,你连Mesh、Texture、Material这些都不懂,是不可能做出来的)。然后根据我的经验而言,我实习面客户端的时候,一点渲染知识没问,秋招的时候倒是问了一点,不过也是比较基础的东西,客户端更注重的还是软件开发的工程能力,问我图形的原因我认为是跟我自己的简历背景相关,如果你有很多Gameplay方面的经验,我想客户端的面试官肯定会更感兴趣问这些东西。
那么对于引擎岗来说,图形学基本是必问的了。游戏引擎主要关注实时渲染,所以离线渲染可能要求不是那么高,当然如果你光追学得很牛逼,实时光追很了解得话还是有用的。至于数字几何处理、计算几何这些,感觉算是一些前置基础知识,不用太过系统和详细地去学,用到的时候再学可能效率会更高。还有模拟,这些其实与你做的方向相关,比如我自己就对流体模拟、布料模拟很感兴趣,因此这些可以多深入学习,上面也说了引擎岗也分很多方向,如果你就是擅长物理,那么你的技术深度越深越好。
4. 如何准备
和职业发展一样,面试关注的是你的实力,跟本科生研究生没有太大的关系,只是一般研究生对于技术和知识的积累更深厚,导致了可能会被认为引擎岗研究生会更容易进入,其实我们组里就有几个本科生,实力也挺强。
如果想要系统地学习,那么还是我刚才说的那几点,计算机基础、图形学基础知识、算法和Coding能力,以及项目经验。对于图形学而言,现在的学习资料太多了,有空的话直接GAMES套餐来一套,学一学闫神的101和202,只要全部理解掌握了,把作业都独立完成了,面试肯定没问题
如果你只是想达到招聘的门槛,那么其实图形学也有一些八股文。我可以简单说一下,渲染管线、变换矩阵、着色模型、抗锯齿处理、辐射度量学(BRDF)、PBR、阴影、全局光照等。。面经也很多,自己找吧。但是光靠八股文还是有可能会翻车的,干程序员这行的,还是得有真材实料不是。
另外我有个小建议,可以考虑把问题描述改为游戏开发中的客户端开发和引擎开发有什么区别,这样可能会让更多的人看到。
OK,以上,算是我的知乎首答了,希望能够解决题主的困惑。
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2024-11-24 13:35 , Processed in 0.122973 second(s), 26 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表