创客说V04:在职TA的工作日常漫谈

前言

  • 这是我们《创客说》的第四期,第四期的内容是一位在职TA同学分享他的日常工作

  • 为什么会有这一期?因为我在平时授课时经常有同学问到在职同学的工作内容,或者作为学生怎样能成为一名在职TA,所以本期邀请到了阅文集团的一名在职TA,他的网名叫阿中大人,来给我们分享他平时的工作内容

  • 说起来,阿中大人可能跟我之前工作的公司有点小渊源,我最早是之前在盛大游戏工作,那时盛大最火的游戏是《传奇世界》,当然,除了游戏以外,盛大还有一块业务是起点文学网,当时占盛大营收很大比例

  • 不过现在起点文学网是属于阅文集团了,现在阅文集团有很多的IP,有很多出版方面的业务,所以也会衍生出来游戏开发的这方面的业务。那么具体的情况,我想交给我们的阿中大人来说

版权声明

本文为“优梦创客”原创文章,您可以自由转载,但必须加入完整的版权声明

更多学习资源请加QQ:1517069595或WX:alice17173获取(企业级性能优化/热更新/Shader特效/服务器/商业项目实战/每周直播/一对一指导)

点赞、关注、分享可免费获得配套学习资源  

机构介绍

  • 优梦创客:我们的目标是帮助各位同学创作一款大家爱玩的游戏

  • 我是今天课程的主讲老师雷蒙德。在行业内有14年的从业经验,做过程序员,技术经理,教学经理,目前的是我们优梦创客的创始人

  • 下面是我曾经参与制作过的一些成功的项目作品,包括有《传奇世界》,《神迹I/II》,《疯狂赛车》,《Infinity3D引擎》,《剑网三》等

提示:以下内容中:“阿中同学”代表学生发言,“雷蒙德老师”代表老师发言


关于本人

  • 阿中同学:

    • 我先来介绍一下自己:

      • 我是阅文集团游戏产品部N1工作室的在职TA    

      • 我爱好是3A游戏,平时喜欢做竞品反推,学习课程,喜欢高端显卡,基本上3070显卡都买了一轮,在这方面有兴趣的,也可以跟我交流        

      • 我进入游戏行业已经有十多年了,以前是专注于前端开发,图形开发方面        

      • 曾经在盛趣游戏就职,经过一段时间的自主创业之后,进入了巨人网络,参与了球球大作战和一款枪战类的游戏的创作,现在在阅文集团负责将知名IP转化为游戏        

      • 阅文集团,以前是起点中文网,在2015年被腾讯收购,所以在外面也被叫做“腾讯阅文”        

      • 腾讯阅文拥有940万名在职作家,1450万部作品以及数亿活跃用户,是IP产业的源头之一,阅文集团在以前大多会将大IP授权出去,但现在都是自己在内部孵化  

      • 成功输出的IP有《庆余年》、《赘婿》、《鬼吹灯》、《琅琊榜》、《全职高手》等等,还有大量的动漫的IP在进行游戏IP的改编化

从课程中收获的帮助

  • 阿中同学

    • 在这里就要说一下我与雷老师的渊源了    

    • 我的团队一开始是做卡牌RPG转化的工作,我们原先的产品在线上已经跑了一段时间,但是它的品质还是几年前的标准    

    • 后来有机会做新项目,要提前做一些技术储备,看看以前的标准跟现在的标准有哪些差距,以及有哪些需要改进,结果发现差距真是不小:        

      • 我们以前是使用BuildIn管线,现在需要用URP管线。以前的材质不怎么强调PBR,但是现在PBR已经成为标准。以前还不用特别风格化一些产品,但现在风格化也变成了标准    

    • 在这个时间点与前几年来比的话,行业的进化速度是非常快速的,也给我们的专业度提出了更大的要求和挑战    

    • 我因为长时间处于线上产品维护中,在开发新产品时需要去复习以往的基础,那么最快的途径就是直接上课学习。自己平时看一些技术内容,只是相对于上课于来说速度还是比较慢的    

    • 我通过对比筛选了一些在线课程之后,很有缘的,得到了能够向雷老师学习的机会,这对我来说获得了以下五个好处:        

      • 温故而知新:            

      • 因为我对专业能力的学习截止在2017年,在长时间的维护工作中,很多知识被淡化、忘掉            

      • 我自己是学图形学的,很多知识很多细节,你不经常用的话就会逐渐淡忘,比如说某些效果的制作方式,以前会,现在一段时间不用,就会忘掉            

      • 上雷老师的课有非常好的一点,可以把以前的一些知识,比如基础的原理重新掌握起来,在后面的开发过程中打好基础            

      • 之前有个同事问我,四元数是怎么玩儿的,我本来觉得这么基础的问题,我可以跟他好好的讲一遍,但话到嘴边却发现想不起来了            

      • 这种情况普遍出现在与我类似的情况中,后来我上了雷老师的课,看了图形学基础的,才想起这是怎么回事儿        

      • 知识点拾疑            

      • 就如刚才所说,我忘掉了许多细节,但是我可以通过雷老师的课程来补充渲染管线的知识,通过了解和复习,来看看现在的标准是什么样的        

      • 加速学习新知识            

        • 我们以前的项目都是用BuildIn管线,但是现在市场上都用URP管线,所以说我肯定要进行URP方面的学习,不学习的话,差距就会大到无法驾驭            

        • 我特别幸运,雷老师的课程中有专门的一块内容就是对URP源代码进行解读,这部分讲的特别好,非常细致,给我的工作提供了很多帮助,加速了我学习新知识的速度,能够让我尽快过渡到URP的思考逻辑里去        

      • 了解行业普遍制作技巧            

        • URP在2018年出现,2019年升级,我现在的项目使用了2021版本,有大量的基于URP实现方式、比如说水体效果,此外还有很多脑洞值得我们去学习      

        • 比如说BuildIn材质是用GrabPass去实现,那么在URP上面可能就不行了,很多知识点是需要围绕着URP管线,需要你自己对项目进行相应的调整,要重新把以前的东西给适应出来            

        • 那么现在有哪些制作方式是在URP上使用的?雷老师这边做了很多的案例,我每篇案例都会认真看一遍,自己再做一遍,来掌握这些知识        

      • 促进解决现有难题            

        • 这一块的话,我等会儿会有一些具体的案例分享

————————————————————

  • 雷蒙德老师

    • 我们的课程初衷就是帮助大家快速掌握一些知识,同时,我在课程里面还有一个一直坚持的原则:

      • 先讲原理,然后再讲具体的功能实现

    • 我看过网上很多的免费教程,它可能会带着你撸代码,但我不太建议直接去撸代码,你不懂他的思想,直接撸代码并没有什么效果

    • 所以我会在课程里花不少时间去讲代码背后的思想,比如URP的源码解读,我会着重讲代码框架方面的内容,大家也可以在学习过程中注意一下,应该先学习方法,然后再去掌握具体的实现

    • 阿中同学讲的很好,如果你和他是差不多的情况,或者你之前有一些基础,但是出现了断代,那么你可以尝试着按照他的路径走一走,看看能不能取得更好的学习效果


TA的日常工作内容与其他部门的配合

一、  BuildIn转URP

  • 阿中同学:

    • 这个过程一开始是有点艰苦的,刚刚也说过,雷老师的课程提供了很多帮助,我们在项目中碰到的一些问题是:        

      • 在我们以前的工程里,场景、特效、角色加起来,差不多有五十个Shader,工作量很大        

      • 原先的代码经过很多人维护,导致内容不统一,我们也想在这次进行整体梳理        

      • 需要在较短的时间内全面完成URP管线的改造,为什么?因为在年后有一轮美术外包的启动,美术外包一旦启动,就没办法再去修改Shader了,因为美术资源一旦做完,再去修改的话就会额外的增加时间和工作量    

    • 以下内容是我们经过调研后整理出的需求,我大致说一下

    • 以URP为基础进行调整,把需求进行拆分    

    • 所有材质都要拆分成透明材质和不透明材质,因为它的渲染序列是不太一样的    

    • 在新项目里把LOD层级要拆成三个层次,我们原来没有拆的那么细,只拆成两个    

    • 还有场景、模型要具体拆分成地形、植被、水面、天空等等,分别进行命名,有专门的命名规则。角色方面,要拆分成头发、眼睛、皮肤、衣服等等的细节    

    • 在我们迁移的过程中,其实也发现了一些问题,同样的代码,只是在语法层面进行改动,也会产生许多差异

    • 比如上图的狮子,左边是Buildin的PBR,右边是URP的Lit,同样的代码改完直接移过来,还是有很大的差异,这些差异都是需要TA去进行调研,并且找到问题所在的    

  • 当时的难点是:

      • 我对URP的熟悉程度有限,没有形成一套非常高效的开发流程        

      • 项目内部基于GGX的PBR的算法,有多处实现,这些实现基本上都比较乱,要进行代码的整理        

      • 美术催的比较紧,时间紧张    

    • 我的解决方法就是:        

      • 买优秀课程找到组织,进行学习和老师交流        

      • 以功能实现为优先,先满足美术的需求,后面再安排时间进行优化        

      • 按照80、20原则,先找到使用频度比较高的20%进行修改        

      • 这一块我具体说一下:            

        • 我们TA在工作过程中,永远是以效果实现为最优先的,你一定要确保效果能达到美术和制作人的要求。之后再考虑性能的问题            

        • 性能不是说不考虑,肯定也是要考虑的,比如有些性能明显是在手机上是无法实现的,那么你在一开始就可以告诉他们这个东西不行,比较有经验的美术,其实都是可以理解的            

        • 所以前期的沟通交流是非常重要的,这样你做起事情来会舒服一些    

    • 我们项目中大部分的Shader,都是场景全局光照相关的。这个问题我前几个月还问过雷老师:          

      • “Unity不是已经实现过全局光照吗?为什么我们还要再去实现一遍?”    

    • 当时老师是这么回答我的:        

      • “Unity是考虑所有人的需求,而不是你的项目需求,它的代码效率是存在一些问题的,如果你想性能极致优化或者后面需要做风格化修改的话,还是要自己去实现一轮”    

    • 当时听了雷老师这句话,我就把我们的全局光照全部重新调整了,现在已经使用在我们的demo里了,效果还可以

    二、实现效果的升级

    • 阿中同学:

      • 因为原先项目的版本做了一次引擎升级,虽然说引擎升级了,但是它的图形还是几年前的标准,所以新项目需要进行品质提升的,这里也包括一些问题:        

        • 首先美术大佬就说了:“我们要跟XX对齐”,XX是谁?很简单《逆水寒》、《天涯明月刀》等等,向这一类对齐        

        • 比如说捏脸系统不能比他们做得差。在工作中你经常会听到类似的一些需求,对于有经验的TA都不是太大的问题,都是能够解决的        

        • 需要支持大地形、支持开放世界、不能卡顿        

        • 场景需要有24小时天气系统,要能下雪又能下雨,还要能刮风,想法很多        

        • 需要有一些LightVolume效果        

        • 需要支持一些剧情模式,实现不同环境下的LUT的风格效果        

        • 能明显区分出大海、湖泊和小溪等等效果        

        • 进一步提升性能,因为我们使用了URP,URP的能力在他们看来就是性能能够提升,那么肯定要发挥出URP的能力。要有较强的适配性    

      • 给大家看看具体的需求:

    • 第一个,捏脸分析            

      • 我找了网易《天谕》这款游戏来做分析,因为《天谕》是几个竞品游戏中效果比较好的 

      • 我做了一些竞品的功能拆分,猜出了上图这些功能点。大家可以看一下,我就不细说了        

      • Shader要实现的一些内容:                

        • 角色的眼睛、脸部包括瞳孔头发,这些都要专门写一个Shader                

        • 鼠标选中区域会产生变化,这部分需要在脸部Shader上做一些额外的功能            

      • 捏脸部分还包括三个功能:                

        • 一个是骨骼的方面的调整                

        • 第二个,是脸上的贴花,比如说眉毛,眉毛其实就是一个贴花,它可以进行小范围的调整          

        • 第三个是表情的调整            

      • 做完这些,还有后期效果,要根据角色所处场景,进行一些局部的调整            

      • 把这些做完以后,基本就可以做到《天谕》那样的游戏效果。对我来说就是把需求屡清楚之后,再逐步实现        

    • 除了脸部之外还有一些角色衣服材质的需求,一共有五点:

      • 第一,实现普通的衣服            

      • 第二,一定要能够明显的区别出丝绸,我们的美术最开始说,一定要把丝绸给实现出来,右下角的图就属于丝绸材质          

      • 第三,透明的纱布材质,大家可以看到右上角的图,手臂上都是纱的材质,这种材质有一个特点,它的高光部分和透明部分是融汇在一起的,这里可能需要额外写一些代码来支持这样的效果            

      • 第四,普通的布料,它不是材质,是物理效果            

      • 第五,金属质感,金属质感基本上是用在衣服的边框部分和武器上            

      • 日常工作都会在需求问题上花很多时间,把这些需求捋清楚,后面才好安排制作,角色聊完之后,我们再聊一下场景方面        

    • 场景方面也是比较复杂的:

    • 刚刚也提到了天气系统,要实现地面上的雨滴效果,从实际上来说:雨滴效果就是NormalMap上面加了雨滴的Mask图来实现的            

    • 除此以外还有天气效果,在屏幕上要有雨水下落的粒子特效,这里面就会有一些性能问题,需要进行筛选和调整            

    • 水是要分成大海、湖泊和小溪,它们的实现方式是不一样的                

      • 大海的波浪要求比较夸张,我们设置了参数可以调整波浪的强度                

      • 小溪的边缘会有一些泡沫,如何去实现水的效果,大家需要去看更多关于水方面的文章和教程                

      • 我记得之前在实现这种效果时去看了雷老师的教程,专门讲解水的,我觉得讲的特别好,也推荐大家去看一下,功能分解是非常清晰的,上面所有的细节效果都能实现            

    • 还有地面上的下雪效果,这也是比较常见的效果,在雷老师的文档里面也有怎么样实现下雪的教程,是通过Mask图的方式来实现的        

    • 光照需求(GodRay)

      • 对于近几年立项的项目来说是一个基本需求,至少要实现出太阳光、月光和GodRay效果          

    • LUT后期风格化

    • LUT后期的风格化,表现不同的天气风格。在我们的项目里都是在场景上做开关,可以随时切换到任意风格

    三、风格化挑战

    • 阿中同学:

      • 项目要求的效果提升,我们只完成了百分之六七十的内容,那么怎么样达到100%的完成?就要对项目进行风格化    

      • 风格化这个概念也是最近才出现的,以前没有这样的要求,而现在风格化一直在提,比如二次元风格、中国风、日韩风,都是属于定制化风格    

      • 我们定了一个基本标准——以尽可能100%还原原画为目标        

        • 原画大家都知道,就是在公司里和你配合的美术,都是专业的,所以他们能够非常好的去把握光线的效果,并且原画能告诉你游戏最后是长什么样子的        

        • 我们的目标就是尽可能还原原画,在这个过程中很多的创意创新、特殊的骚操作是会经常出现的    

      • 不限于NPB加PBR,不局限于PBR怎么理解?        

        • 不知道大家有没有玩过那种角色的脸是二次元的,身体和盔甲是PBR真实的游戏,比如《异度装甲》,这个游戏大家可以看一下,就属于这种类型,要实现它的原画,就需要不同部门同心协力        

        • 对于TA来说,不局限于我必须使用PBR或者说我必须用NPR,使用的方式很多,这是对TA人员的综合能力的考核,需要针对某些效果去定制Shader        

        • 这里我举个例子:            

        • 比如我们美术说:“我能不能在天空盒中增加一些雾或者AO的效果”            

        • 我当时听得一脸懵逼,说你到底想怎样,他说:“天空盒不是就应该这样吗?我之前的项目里就用这种方式实现了更好的天空盒,你看看能不能实现”    

        • 美术他或许不太懂具体怎么做,但对我们来说:既然你把需求提过来了,那我肯定要去做        

        • 还有一个需求:要在Diffuse里增加高光效果。类似的需求经常会提过来,都是为了实现风格化而去做的。对于我们这边来说也是优先完成效果,再做性能优化        

        • 我们还会参考3A游戏、虚幻四、国外网站上的一些成熟效果等等,都是为了实现风格化    

    • 风格化案例:

    • 我这边不能放我们自己的项目,所以我找了知乎上的案例,这个案例和我们这边是比较接近的,也是抛砖引玉,面对这份案例我们首先考虑的问题就是如何进行分解:          

    • 笔触

      • 对于笔触我们比较常用的实现方式,就是在法线和Diffused图上做一些处理,比如增加滤镜什么的,使它看上去更油一些、有些地方更糊或者更清晰一些等等,最终效果是让他看起来更像油画            

    • 漫反射上色    

      • 对漫反射做进一步的处理,效果是在不同的光源角度下,角色身上的阴影和反射光也会不一样                

      • 比如说左图,这里可能是一张RampMap放在后面,在面对光的地方,它的反射会强烈一些。使用RampMap来模拟光照效果,这是经常使用的技巧                

      • 我记得我之前反推《原神》时,发现它的角色为了表现不同风格,使用了七八张RampMap来进行切换,让你感觉它能够受很多光影响,但其实是只受一种光影响    

    • 间接光

      • 间接光也是非常重要的,因为你的效果完全依赖直接光是不够的,需要靠间接光来进行加持,这里是用环境光加上Lighting Probe再加上一些颜色控制,来实现间接光的反应效果                

      • 有些美术他会说:“为什么这个贴图我不能直接用天空盒?”当然是可以的,所以开发过程中我们也要开放给美术一些开关,让他们自己进行调整            

    • AO    

      • 美术可能会单独提出:“是否需要AO?”,从我们的角度上来说:“AO贴图作为PBR的一部分,它可能是嵌入PBR的模型里面作为一张贴图存在”,但事实上我见过的所有AO,都是以黑白通道的形式嵌入到其他贴图中,这样能够达到节省资源的效果  

      • AO贴图是很重要的,它能让角色看起来更加立体,更有深度,所以AO贴图是风格化的必要手段之一            

    • SSS皮肤  

      • 然后是SSS皮肤的概念,SSS皮肤的实现方式其实是比较多的,最基本的方式是实现预积分的快速贴图,当然最近也有一些别的方式                

      • 上面的风格化案例中,这两个SSS效果是不太一样的,可以看到右边更加通透一些     

    • 后处理

    • 大家都说后处理是开美颜滤镜,不管你之前做的怎么样,开了后处理之后都会起到加分效果,对风格化来说也是一样的                

    • 上图中增加了Bloom效果和SSAO效果,这样从不同角度来看会比较有个性,风格化的效果也会大一点                

    • 风格化的问题,我自己也是在不断探索中,希望能借这个例子来进行一次抛砖引玉,让大家去思考这方面的一些事情到底是怎么样的

    ————————————————————

    • 雷蒙德老师

      • 这块内容是我们的阿中同学分享他在工作过程中出现的问题,是内置管线转URP时碰到的各种各样的技术问题。这块内容是比较实用的一些干货,我觉得大家都可以去学习一下

    我对技术美术岗位、行业的理解,岗位的细分

    • 阿中同学:

      • 其实TA这个岗位我在很早的时候就已经在做了,我在盛趣(盛大游戏)时,我的工作岗位叫做图形程序,随着手游时代的到来,岗位名称就变成了TA    

      • 在工作项目中,TA岗位的主要职责就是解决问题,所以我觉得解决问题的能力是非常重要的。如何才能把解决问题的能力发挥出来呢?        

        • 进行基础概念的积累        

        • 找到志同道合的社群或团体            

        • 这方面是比较重要的,因为大家都会碰到一些自己想不明白的问题,如果这时候能有大佬或其他人来和你一起解决问题,这可比你自己闭门造车要快多了    

      • 市场需求        

        • 当前市场对TA的需求是非常旺盛的,特别是在米哈游靠着画面的表现力圈了一大群粉之后,直接把市场的要求给带起来了        

        • 我以前在盛趣做图形程序时,要求是没有那么高的,只要你会使用引擎、能调一些基本功能、能写一个编译器就差不多了        

        • 但是现在不一样了,市场对能力的要求非常高,而市场上能够达到这条线的人少之又少,同时高品质的项目在逐渐增多        

        • 现在的玩家们看惯了非常好的游戏画面,可能他在玩手游的同时也在玩3A游戏,如果你的游戏品质不能达到市场用户的预期,这个项目就可能会出问题        

        • 所以每个项目在立项过程中都会格外要求产品的品质,这也是发挥TA核心价值的时候    

      • 薪资        

        • TA的薪资也是比较高的,比如腾讯、心动、盛趣他们TA的薪资都比主程或者主策划要高,这也在侧面反映TA在行业中是处于非常紧俏的状态        

        • 在我了解下来,你一旦成为大公司的TA,然后干上一年,基本上买一到两辆特斯拉是没什么问题的,所以这是一个非常好的机遇    

      • 岗位细分        

        • 对于企业来说,TA岗位分成了图形向TA和效果向TA,图形向TA更加偏向于功能实现,效果向TA更偏向于美术        

        • 现在市场的需求中,图形向TA占据了80%,基本都是图形TA,效果向TA相对来说比较少        

        • TA只是实现一些画面的表现效果吗?其实不是的,在国外的3A游戏工作室中,它还可以分成动画向TA、场景向TA、剧情向TA等等,TA岗位还可以细分下去,直到市场的供需达到平衡

    ————————————————————

    • 雷蒙德老师

      • 图形向TA在手游时代到来之前,就是端游时代所说的Shader Programmer,阿中同学所说的效果向TA不仅仅只是调图形效果,合格的效果向TA已经具备了“我想要实现什么效果,我就知道应该怎样去做”的能力,能够将Shader完全当作工具来使用,而不仅仅是实现某一个Shader的功能

    普通程序员要怎样转职TA,要怎样学习

    • 阿中同学

      • 很多人关心如何从一个普通程序员转职成专业专职的TA,需要如何学习?那么我就以我个人的一些经验来和大家说一下    

      • 数学,编程基础,3D图形相关理论        

        • 想要成为专职TA,数学、3D相关图形理论方面,是比较重要的,学习这方面的知识比较好的办法就是来上雷老师的课程,可以学到许多基础的理论相关的知识    

      • 批判性的思维方式        

        • 批判性思维方式,可以分为解读、拆解,理解等等,这块内容就不细讲了,大家可以在百度上搜一下批判性思维方式的书籍        

        • 要成为TA,你需要有能找到需求关键点,并进行拆分的能力,这个能力在日常工作中是经常用到的,平时学习时要经常去问为什么,这样你才能接近问题的核心和真实的情况    

      • 常用3D工具        

        • 3D方面的主流工具,都需要去学习一下,比如Blender,很多人喜欢,因为它是免费的,这方面大家自己去看一下,都很简单,不是特别复杂(课程里有)    

      • 引擎工具        

        • 从TA角度来说,我们不会把自己局限于虚幻TA,或者U3DTA,我们是3D游戏TA,所以这两个引擎都需要深入了解        

        • 平时要进行大量的实践和案例积累,特别是同行交流,在我的日常生活中,大部分时间都在看知乎上的文章,听国外大佬的内容分享,这是非常有价值的    

      • 程序与美术TA        

        • 拥有足够的能力之后你就可以选择成为哪一方面的TA        

        • 如果你有技术人员的思维方式,那么你就可以去学习技术TA的专业能力        

        • 如果你有美术人员的思维能力,那么你可以去学习美术TA的专业能力        

        • 在工作中与美术或程序交流可能会用到专业的术语。你可能也很讨厌别人明明不懂还在那里口若悬河,你当然不愿意听,这对美术来说也是一样的,TA除了效果的实现,还有一个职责就是帮助美术和程序进行交流        

        • 让自己变得更加专业,你在TA这条路才会走得更加顺畅        

        • 在一些大公司你可能会碰到非常厉害的人,他们可能以前在网易、腾讯待过,也可能他们以前是年薪百万的人物,与他们交流时如果你的水平跟他们有些距离,那他们可能会觉得你不够专业,这也是团队之间相互建立信任的必经之路        

        • 你要做的事情就是深入学习游戏引擎的实现,去学习PBR的源代码以及一些实现细节,这个阶段中最重要的就是实现过程。至于风格化是需要去逐步积累经验的

    资料网站分享

    • 阿中同学

      • 我这边分享几个我经常用来查资料的网站,这只是一部分,大家可以看一下:        

        • 雷老师有一些平时积累的教程,地址就在上面        

        • URP的源码解读,这些可以在URP工程里直接看,写得非常好,大家可以去了解一下        

        • 雷老师收集的一些资料,地址也在上面了        

        • 知乎上URP的相关话题,工作中的很多问题都能在知乎上找到回答或参考        

        • 国外网站,有一些专门做URP的教程        

        • 我使用的工具除了Rider以外还有VSCode

    问答环节

    • 雷蒙德老师

      • 这里我在这次分享前在我们VIP群里收集的大家平时比较关心的一些关于TA岗位的问题,下面我们请阿中同学来谈一谈他的理解

    • 阿中同学

      • TA平时要干什么?        

        • 上面已经讲过了    

      • 加班严不严重?        

        • 这个和公司氛围有关,我们这边有时也会加班,但我们的原则是:“坚决不做无用工”,要加班基本上都是事情紧急要出新版本时才会加班    

      • 如何有效的学习?        

        • 很简单,你可以对一些效果做反推,或者去国外找一些材料,买一些大神们做好的教程等等,都可以加速你的学习    

      • 对D3D和OpenGL要求高吗?        

        • 这个其实还好,因为在Unity里面,它已经帮你屏蔽了D3D和OpenGL还有Vulkan这几个基本API,但是对于ShaderModel版本号有一定的要求:你写Shader时至少要知道哪些API是可以用的哪些是不能用的        

        • 其实也不是太大的问题,如果你有兴趣,可以在网上深挖图形引擎程序,我因为入行时间比较早,对D3D是比较熟悉的,Vulkan前几年才去熟悉        

        • 这三个东西,特别是OpenGL和Vulkan对设备是比较敏感的,OpenGL3.0到现在才普及。在前几年我在做《球球大作战》时就在研究一个问题:“我们要不要去深造OpenGL3.0”,结果当然是没有必要的    

      • 什么时候才会在新立的项目中使用Vulkan?        

        • 差不多再过五年左右,Vulkan才会普及,这个过程中可能有些机型会普及,但最担心的一点是:

        • 一些杂牌机型或者OPPO的某些机型,它内部实现了一些API,但这些API的调用结果是不对的,这种情况存在于一些早期的机器或者千元机里            

        • 这样你就很尴尬了,你就需要做决策,这个游戏到底是给谁玩的?要求是什么?比如《原神》就比较机智,我只给高端用户玩,低端用户就放弃了,这也是它的底气        

        • API熟悉度方面,如果你有时间或者感兴趣,可以了解一下怎么玩儿API,但如果你要做产品的话,就需要你去考虑它的兼容性以及你使用的ShaderModel版本    

      • TA工作中对哪些技能要求高,高到什么程度        

        • TA工作对任何技能的要求都很高,但不管要求再怎么高,原理还是最基础,也是最常用到的,这块大家可以多看看雷老师关于原理方面的教程,我觉得非常重要  

        • 所谓的一些高要求,其实都是需求方面的,需求可以进行拆解,拆解以后还是有些地方不知道怎么实现的,这就需要你自己去研究一下了。当然这种情况也是比较少的    

      • 面试官希望看到什么样的作品?        

        • 肯定是希望看到令人惊艳的作品,那如何做出让人感到惊艳的作品,就需要你平时做一些积累        

        • 如果你的作品特别惊艳,那面试官会非常详细的问你怎样做的,怎样进行思考,最终花了多少时间等等        

        • 你一定要把所有的作品细节掌握的非常清楚,这样在面试的过程中,你的思路、你的想法、你的经验就能够充分的展示在面试官的面前,能大大增加面试通过的几率    

      • 客户端转TA对审美有什么要求?        

        • 如果你经常玩3A游戏或者手游,心里就知道什么样的东西是好的,什么样的东西是好看的,只要你游戏玩得够多,自然会形成自己的审美标准        

        • 如果你在游戏公司做客户端的话,也可以和主美或者原画多聊聊,看看他们对审美有怎样的考量,逐步提升自己的审美爱好或者审美倾向    

      • TA入行的最低要求:        

        • 要有一定的程序基础,如果说你本身是图形学相关专业毕业的应届生,那你在TA这一行入门的起点会高一些        

        • 你要喜欢玩游戏,比如3A游戏        

        • TA本身是综合性比较强的工作,除此之外,TA的成长空间也非常大,大家要明确自己的努力方向,能够熬得住寂寞,持久的进行知识积累,交流学习

    • Q:我有一个问题,你当时为什么要入职TA呢?

    • A:

      • 因为我自己是计算机系毕业的,专业方向也是客户端和图形方向,所以我从小就对游戏方面非常感兴趣,我家里什么游戏都有,平时也喜欢玩显卡,这两天PC端上架的《战神4》,我也第一时间入手了,入手之后我还看了PS4版本和PC版本有什么样的差异

      • 我的爱好与工作个人兴趣的结合给我带来了成就感和生活的意义,正好工作中有这样适合我的工作岗位,所以就一直做到了现在,做了十几年

    ————————————————————

    • 雷蒙德老师

      • 所以大家想要入行TA行业,需要对画面的实时渲染具有浓厚的兴趣,对游戏画面效果、光影、包括美术,甚至是哲学都要有兴趣,你能在工作过程中将这些兴趣逐步地发展起来,来为你的工作提供帮助

      • 我相信来看这篇文章的同学,要么是爱好游戏,要么是爱好游戏开发,或者你喜欢开发美术效果,如果你们遇到瓶颈或者苦于没有良好的学习路线,那么欢迎你来报名我们的课程

      • 非常感谢阿中同学的分享,今天的内容也是干货满满,不仅仅是技术干货,还有他个人对行业的见解,对于岗位和工作的认识与理解,相信也可以能给各位同学很多启发

    岗位招聘

    • 雷蒙德老师

      • 阿中同学来到这次分享会其实还有一个目的,这个就由阿中同学来说吧

    ————————————————————

    • 阿中同学:

      • 我们阅文集团其实也算是属于腾讯的一个分支,我们现在在招聘有兴趣在TA领域生根的同学、同志、爱好者,有兴趣的同学可以加我的微信,把简历提过来,成不成是后话,可以先交个朋友,然后随便聊聊,建立起同学关系

      • 我相信只要是在雷老师这边学习的同学,现在可能还需要修炼,但在未来几年中也可能成为行业中的大牛,所以咱们可以先保持联系,如果有兴趣就可以把简历提过来,看看是否有合作的机会(联系方式见文末)

    快问快答

    • Shader全局光照修改就是我们上课时说的那些吗?

      • 雷蒙德老师

        • 全局光照修改的修改方式有很多,这取决于你的游戏想要实现的美术效果,我在上课时会带大家分析全局光照Shader的代码结构,并且会提出一些案例来告诉大家如何修改全局光照

        • 很多同学在初学时,他可能都不知道全局光照要修改,比如在URP管线或者是传统的内置管线下,不知道从哪里入手。这就是我们的课程要帮大家解决的问题

    • 什么时候讲一下Shader插件的使用

      • 雷蒙德老师

        • 这一点在我们的ShaderGraph课程里面是有讲到的

    • LightingVolume是什么?

      • 阿中同学

        • 在这里有些说不清楚,篇幅太短了,简单来说就是:在一个体积空间能看到多种光线效果,相当于空气实体这样的感觉

    • 阿中大人的工资多高?

      • 阿中同学

        • 这是一个不能说的秘密

    • 关于TA岗位的分类:

      • 阿中同学

        • 每个公司可能都不一样,有的公司可能会分成图形向TA和效果向TA,再具体分的话:有专门去做动作的TA,还有专门做动作动画的TA,面部表情相关的TA,都会专门有人去做,包括一些图形效果或者物理学相关的东西,也会专门有人去做

        • 这取决于公司对TA岗位划分有多细,整体的工作量有多大。我这边对图形向TA和效果向TA的岗位需求差不多是两个到四个左右,但事实上很多公司对TA岗位人员的需求是比较多的

        • 比如腾讯有个项目叫《王者世界》是由王者荣耀改编的开放世界项目,据我所知,他们已经有1000来个人,这里面的TA已经是细分到非常细致的状态,比如在某几个风格的关卡中可能就有一个关卡TA,一些日常任务也会有专门的动画TA

        • 随着行业的分工,TA岗位也会越来越细,越来越多,大概就是这样

      • 雷蒙德老师

        • 如果大家想要学习动作动画,包括骨骼动画和网格的动画,或者BlendShape,在我们的DirectX图形学课程中都可以看到

    • 美术学习TA会不会很吃亏?

      • 阿中同学

        • 这要看你在什么地方,如果你在一个比较完备的工作室里,美术TA自己就能够实现一部分的效果,还有一部分不能实现的可以作为需求让程序TA来实现

        • 但它的核心点还是集中在最终效果好不好看这些问题上面,如果实力允许的话,美术TA能对编程方面有一些了解,那么比起其他美术向TA是有一定的优势的,因为最终还是要看效果

      • 雷蒙德老师:

        • 其实美术同学在游戏的3D画面上,还是有优势的,美术转TA的长项就是程序同学转TA的一个短板,相互之间可以互补

        • 有同学问说如果想要做TA实习生的话,有什么要求呢?我们这位同学应该是还没有毕业,其实我知道很多大四或者是研究生的同学,可能是想先做个实习生,那么他就会问TA岗位对实习生的要求和对社招的要求有区别吗?阿中同学的公司在招实习生吗?

    • 公司现在招实习生吗?

      • 阿中同学:

        • 在招的,我们这边招实习生的态度和社招是不太一样的,社招我们会看你的工作经验,会客观的评估你处于哪一个段位,合格就直接上手开始工作了

        • 而实习生就属于长期培养对象,短期内以熟悉磨合,培养为主,可能还会配一个师傅来带一下

        • 我们对实习生的毕业学校要求也是比较高,当然,只要你的作品足够好,能力也没有问题就不愁找不到工作

    • 有具体的需要学习的3D工具的清单吗?

      • 阿中同学:

        • 只要是做3D,那3DMax、Maya这两个你肯定是要会的,否则美术说要导出FPX你都不知道,出问题你也不能帮他解决是不是很尴尬?所以这两个工具肯定要能比较熟练的使用,也不用太深,有一个入门就好了

        • 因为你是做TA的,所以SubstancePainter这种专门是调材质的工具,你也要会,这是最基本的

        • 如果你想要渲染效果好,你可以去了解一下八猴渲染器,它能完成一些非常好的效果,顺便看看在以纯渲染为目标的工具里是怎样实现这些效果的,和自己有什么差异,它好在哪里、如何优化等等

    • 客户端程序有多少人?

      • 阿中同学:

        • 我们公司是以工作量与需求来决定岗位数量的,客户端程序准备招15到20人,有很多不同的分工。TA大概需要三到四个人。目前是这么一个配比

        • 这里我再多说两句:

        • TA这样的岗位,最终还是要动态化的,我们现在使用的所有图形学原理大多都是五、六年前甚至十年提出的概念,很多概念在今年才落实,运用到项目中。TA是强调应用的工作,原理性的东西要过好几年才会有爆炸式的变化

        • 比如说最近几年才出现光追,PBR自首次出现以来,也是在2014年才在游戏中应用,所以每个团队稳定的公司基本上都会形成一套自己的打法,这些打法包括工具与代码的积累,需要TA进行长期维护,但是这里面有一些问题:“你长期维护的代码如果不会随着时代变化,就会导致公司的制作水平与时代脱节”

        • 所以TA本身的自我修炼对于公司来说也是非常重要的

    • 系统优化是不是TA的工作?

      • 阿中同学:

        • 肯定是的,不管实现什么样的效果,首先要保证达成效果,然后就是进行优化,系统优化在这个层面是非常重要的,如果你性能很差的话就很难通过性能评级

        • 要想真正把优化做好,还是很有难度的,因为一些效果已经有了既定的实现方法,它通过一些性能代价来换取效果,想要进一步的优化,你甚至需要改变实现方法,推倒重来都是有可能的

        • 比如说水的效果,可能雷老师说了一种实现方式,但事实上可能还有好几种方法实现,这些方法中有的表现效果很好,但是性能较差;有些表现效果一般,但性能特别好,只有这里面的每一种方式你都了解之后,才能决定使用的哪一种实现方案

        • TA做优化是不包括客户端逻辑优化的,只是和渲染相关的一些优化。TA常用的优化的手段:一个是Shader本身,还有一个是从引擎层面上优化,比如现在Unity开放了URP渲染管线,你就可以从渲染管线的层面对它做各种各样的优化

    • 精通TA的程序去小公司是不是很有优势?

      • 雷蒙德老师:

        • 为什么要去小公司呢?小公司对这方面需求不高,最后还是要写程序

      • 阿中同学:

        • 做TA还是尽量去大公司,在大公司里你能和比你厉害得多的人合作,这个可能性是很高的,很多人看上去平平无奇,其实他可能是某个领域的大佬

        • 小公司在这方面就比较欠缺,而且小公司的工作量可以会大一些,因为他请不起特别多的人,可能会把你当个宝,你的重要度就会高一些

        • 其实两边来说,大家对项目的紧急程度都是卡的比较严格的,两边都有两边的压力,但是相对来说,小公司在人情方面会比较好一点,大公司的话可能KPI的考核方面会比较多一些

      • 雷蒙德老师:

        • 能力强的人去小公司能拿到的话语权还是很多的,这也跟你自己的能力有关,如果你的能力只能匹配小公司的话,就先去小公司呆着,然后再想办法做进一步的提升

    • 最后一个问题是:目前公司需要基于URP管线下的PBR效果,但是我个人才刚入门,想问一下有什么办法

      • 阿中同学:

        • 可以按照我刚刚说的套路,分析一下它的效果,比如效果是基于URP管线下的,那它是不是牵扯到全局光照?这些需求你要先捋清楚

        • 如果你只是需要有一个东西去撑一下,那么很简单,如果它只要实现基本的光栅效果,那你可以用URP的全局光照。当然也要提前去问一下,这个效果是要表现高温的多一些,还是金属的多一些,他会给你一个回答,你再进行对应的修改,先应付一下需求

        • 如果他觉得贴图上的优化做到不怎么好,能不能进一步优化,这个时候你可能要用Shader编辑器把基本的PBR拖出来,把贴图通道合一下连进去,也能满足基本的需求,大致上就是这样,希望能帮到你

    写在最后

    更多学习资源请加QQ:1517069595或WX:alice17173获取(企业级性能优化/热更新/Shader特效/服务器/商业项目实战/每周直播/一对一指导)

    点赞、关注、分享可免费获得配套学习资源

    资源下载: