
这两年游戏行业对技术美术TA的需求肉眼可见地涨可很多人对TA到底考什么、笔试怎么准备还是一头雾水。我翻出自己当年复盘搜狐畅游2019校招技术美术笔试题的笔记结合这几年真正在项目里做TA踩过的坑把这类笔试背后的考察逻辑、核心知识点和准备思路重新梳理了一遍。这篇内容不局限于畅游那一次笔试而是把TA岗位通用考法拆开来讲——数学基础、渲染管线和Shader、美术资源规范、引擎优化这几个大方向都会覆盖。无论你是美术转TA、程序转TA还是在校学生想投游戏公司技术美术岗这篇应该都能帮你理清复习重点。1. 技术美术笔试到底在考什么1.1 岗位定位决定题目方向技术美术不是“会写Shader的美术”也不完全是“懂美术的程序”。在绝大多数游戏公司里TA是美术和程序之间的桥梁负责把美术需求转译成程序能落地的方案再把程序的能力封装成美术能上手的工具。搜狐畅游这类老牌MMO厂商招TA更看重的是这个人能不能直接接进项目管线解决实际问题所以笔试题目会异常务实。我记得当时拿到试卷的第一感受是没有一道题是单纯考记忆的每道题都在问“你遇到这个情况怎么办”。比如Shader相关的题目不会让你背Blinn-Phong公式而是给你一个具体的渲染异常现象让你分析原因、给出修复思路。这就意味着如果只是把图形学书翻一遍、公式抄一遍遇到这种题基本是懵的。真正有效的准备方式是把知识放进项目场景里去理解——这个效果怎么实现、这个Bug为什么会发生、这个资源为什么爆内存。1.2 笔试考察的能力维度结合畅游那次笔试和我后来参与过的多场TA面试技术美术笔试的考察点基本可以归纳为四个维度数学与图形学基础向量运算、矩阵变换、坐标空间、光照模型、纹理映射这是硬底子。渲染管线理解从CPU提交到GPU光栅化的完整流程包括状态切换、DrawCall、合批、后处理等。DCC工具与美术流程Maya/Max建模、UV拆分、贴图烘焙、Substance Painter制作考察你对美术上游流程的熟悉程度。引擎与性能优化Unity或Unreal的资产导入规则、贴图格式与压缩、LOD、光照方案、内存管理。这四个维度不是割裂的笔试题目往往是组合出牌。比如一道关于法线贴图的题表面考的是“法线贴图为什么是蓝色的”实际打开后涉及切线空间、矩阵变换、双倍贴图精度、移动端压缩格式等多个知识点的串联。所以复习的时候我建议按“知识点之间的联系”来建立自己的知识网而不是单点背题。2. 核心考点拆解数学、渲染、Shader一个都别落下2.1 数学基础矩阵变换是绕不开的坎TA笔试里的数学题不会出偏题怪题但会把基础概念反复揉进实际场景。比如问“模型从本地空间变换到裁剪空间经历了哪几步”“法线变换为什么不能用模型矩阵直接乘”这类题看起来是送分题实际上能把原理讲清楚的人并不多。以法线变换为例很多人的第一反应是“法线是向量用模型矩阵乘一下就行”。但如果模型发生了非均匀缩放直接用模型矩阵变换法线会导致法线方向错误因为非均匀缩放会改变表面法线的角度。正确的做法是用模型矩阵的逆转置矩阵来计算。这个知识点如果不理解矩阵的几何意义光靠背结论换个问法就露馅了。我当时复习这套内容时用了一个土办法把向量和矩阵的几何含义画出来比如旋转矩阵的列向量是基向量旋转后的位置逆矩阵相当于反向变换。一旦建立起这种几何直觉类似的问题就不再是死记硬背而是可以现场推导。笔试和面试时面试官特别看重你能不能把推导过程一步步讲明白这比直接给出标准答案更有价值。2.2 光照模型从Lambert到PBR的演变逻辑光照模型是TA笔试的“老熟人”但很少直接让你默写公式。更常见的考法是给出一个效果目标让你设计实现方案。比如“如何让一个角色在暗场景中依然保持较好的体积感”“如何实现皮肤的半透明效果”这类题目考察的是对光照模型发展脉络的理解。从Lambert漫反射到Phong高光、Blinn-Phong半角向量优化再到PBR的微表面理论、GGX高光分布、菲涅尔效应这条发展线本质上是在解决一个又一个真实世界的光学现象。复习时要重点理解“每个模型为了解决什么问题而被提出”而不是单纯记公式。比如Lambert模型假设表面是理想漫反射所以它无法表现高光Blinn-Phong引入半角向量让高光计算更高效且更可控PBR则通过微表面模型让高光随粗糙度变化更接近真实物理。如果能在笔试中把这一层“为什么这样发展”的逻辑讲出来无论题目怎么变都能找到切入点。我当时还整理了一张对比表把不同光照模型的公式、适用场景、性能开销放在一起对比记忆复习效率会高很多。2.3 Shader编程读懂比会写更重要很多TA岗位笔试会直接给一段Shader代码让你分析渲染结果或指出性能问题。这比让你从零写一个Shader更常见也更贴近实际工作——因为项目里更多时候是在维护和优化别人写的Shader。我当时遇到的一道题是给出一段使用内置BlinnPhong光照模型的Shader代码然后问“为什么这个材质在移动端表现比PC端暗很多”。这种题表面在考Shader代码实际在考移动端渲染差异和精度问题。移动端的half精度处理、不同GPU对浮点运算的支持差异、Gamma空间与线性空间的混合这些全是可能的原因。回答这类题目的关键是先建立排查框架先看颜色空间再看浮点精度再看光照模型是否依赖于特定的平台能力。复习Shader时不要只盯着语法建议从渲染管线的角度理解一段Shader在GPU里经历了什么。比如顶点着色器输出的是裁剪空间坐标片元着色器输出的是颜色值中间的光栅化阶段做了什么这些问题能答上来Shader代码自然就能看懂。我自己复习时习惯把一段Shader的每一行都标注出它在管线的哪个阶段、改了什么数据这样一旦项目里Shader出问题也能快速定位。3. 美术资源与工具链TA笔试里的“软实力”考察3.1 资源规范与性能预算美术资源规范在笔试中占比不低因为TA日常工作中很大一部分是制定和执行资源规范。畅游那年的题目里有一道让我印象很深给出了一个角色模型的面数、贴图张数、材质数量和骨骼数然后问“这个资源在什么档次的机型上会出现问题怎么优化”。这类题考察的核心是性能预算思维。一个游戏项目能同时显示多少个角色、每个角色的面数和贴图内存是多少、骨骼数会影响蒙皮计算的CPU开销这些都需要在项目初期就定好预算。回答这类问题时除了给出具体的优化手段减面、合并贴图、材质合批、LOD更重要的是体现出“预算分配”的管理思维。比如一个场景中有100个角色如果每个角色4张1024贴图光是这些角色的贴图内存就很可观这时候是否可以考虑把远处角色切换到低精度贴图。我后来在项目里制定资源规范时会把所有资源按用途分类设定优先级。比如主角和重要NPC的贴图分辨率可以高一点普通怪物和场景物件次之远处的装饰物用最低档。把这些规则在先期定清楚比后期一个个资源去优化省力得多这也是TA岗位的核心价值之一。3.2 DCC工具与引擎的协作流程DCC工具相关的题目常常以“美术在Maya里做好的模型导入引擎后出现异常”这种形式出现。比如“法线贴图在Maya里看着正常导入Unity后光照方向不对”“模型导入后出现了接缝”等等。这些问题的根源大多是坐标系统不一致、单位不一致或者资源导出设置不当。Maya使用右手坐标系Unity也是左手坐标系但Max又是另一种如果导出时没有做轴转换模型就会旋转或镜像。单位方面Maya默认是厘米Unity也是厘米但有些引擎默认是米导入后模型大小会差100倍。这类问题考察的是你对美术生产流程、DCC工具、引擎导入设置三个环节串联的理解。复习时可以自己走一遍完整流程在Maya里建一个带贴图的模型导出FBX再导入Unity或Unreal检查资源设置。实际走一遍比看十篇文档都有用因为你会真正记住那些“坑”在哪儿。4. 实操复盘一份可复用的TA笔试准备思路4.1 建立自己的知识体系脑图我当时准备TA笔试时第一个动作不是刷题而是建了一张知识体系脑图。主分支是数学、渲染、Shader、DCC、引擎、优化每个分支继续细分。比如渲染分支下分光照模型、阴影、透明、后处理、颜色空间优化分支下分CPU、GPU、内存、带宽。这张脑图的价值在于每复习到一个知识点我会把它挂到对应分支下并且主动建立和其他分支的链接。比如“法线贴图”这个知识点一端连着数学里的切线空间另一端连着美术里的烘焙精度还连着引擎里的纹理压缩格式。当知识形成这样的网状结构后无论笔试题目从哪个角度切入我都能顺着链接找到相关的知识储备。这个习惯我一直保留到现在只是从手写脑图变成了Notion里的知识库。项目里遇到问题我会把排查过程、原因、解决方案都记进去用的时候直接搜索效率极高。4.2 手写一道典型题的完整解析过程为了让你更直观地理解TA笔试怎么答我复盘一道非常典型的综合性题目这类题目在畅游以及其他大厂的TA笔试里都出现过。题目假设一个角色使用了双面材质背面渲染出来是黑的而且角色边缘出现锯齿分析原因并提供解决方案。这类题的解答思路应该分三个层次推进首先分析双面材质背面发黑。常见原因是材质开启了双面渲染但光照计算时使用了面法线背面法线指向相机背面导致漫反射计算结果为0或负数。解决方案不应该是关闭双面渲染而是通过翻转背面法线让光照正确或者使用双面Shader中原生的法线翻转机制。然后分析边缘锯齿。这通常是多重采样抗锯齿MSAA和Alpha测试共同作用的结果。如果材质使用了Alpha Test来裁剪边缘MSAA在硬边缘处无法有效平滑就会形成锯齿。解决方案是改用Alpha to Coverage或者对边缘做距离场平滑。最后综合给出优化建议。从渲染性能角度双面渲染会增加片元着色器负载需要评估是否有必要全部双面还是只对特定视角开放从美术角度是否有办法通过建模避免出现大量背面。这个回答框架的好处是它展示了你不仅能发现问题还能从即时修复、根因优化、成本控制三个层面思考问题。面试官要的就是这种解决问题的层次感。4.3 面试环节的思考链展示笔试之后往往是面试面试官常会挑笔试题里答得不够好的部分追问。这时候最重要的不是背诵答案而是展示思考链条。我见过很多候选人在面试时急着抛出结论结果被追问一个“为什么”就卡住了。正确的做法是主动说出推导过程哪怕最后结论有偏差思考路径正确也能拿分。比如问“为什么Alpha Test会产生锯齿”如果你从“Alpha Test丢弃片元导致MSAA无法在边缘采样”这个机制讲起即使后面方案不是最优面试官也知道你底子是扎实的。这种能力只能靠平时多积累。我建议每次做完一道题都把自己的思考过程写下来包括为什么从这一步走到下一步。时间长了面对新问题时会自然形成一套稳定的分析套路。5. 常见问题与排查技巧实录5.1 笔试常见高频问题速查表这里整理一些TA笔试常见的高频问题每道题都附上核心排查思路。记住思路比结论重要这里的结论仅供参考。常见问题核心原因排查与优化思路角色模型导入引擎后偏暗法线贴图在切线空间/对象空间不一致或颜色空间未设线性检查贴图导入设置确认法线贴图类型统一颜色空间移动端Shader效果比PC端差half精度不足、高级光照特性不支持分级编写平台兼容Shader使用精度修饰符远处物体闪烁或抖动LOD切换距离设置不合理或深度精度不足调整LOD切换区间设置合适的近远裁剪面场景加载明显卡顿资源同步加载、优化缺失、贴图格式不当使用异步加载、资源压缩、Mesh合并UI文字边缘模糊Mipmap生成不当或纹理压缩格式有损UI图集关闭Mipmap选择适合UI的压缩格式半透明物体渲染顺序错乱透明物体渲染时机与深度写入控制不当统一透明排序规则手动控制深度写入和渲染队列这类问题在笔试里经常出现但实际项目中遇到的情况会更复杂往往是多个原因叠加。所以排查时我会从最便宜的检查项开始先看导入设置再看Shader最后才动底层渲染逻辑。这个顺序能省很多时间。5.2 我踩过的坑和心得准备TA岗位的过程里我也走了不少弯路。记忆最深的一次是在自己的Demo里做法线贴图怎么调光照都不对烘焙出来的法线贴图导入引擎后有明显接缝。排查了大半天才发现是低模的UV没有处理好导致切线空间不连续法线贴图采样出现接缝。这个经历给我上了一课很多渲染问题根子其实在DCC阶段。另一个常见的坑是迷信“标准答案”。笔试的参考答案只代表一种可行方案实际项目里永远存在约束条件。比如双面材质问题理论上可以彻底重写Shader但如果项目下周就要上线更稳妥的方案可能是先调整烘焙设置和模型布线。这种工程取舍的判断力才是TA真正值钱的地方。最后想说的是技术美术笔试准备没有捷径但也不需要把每本书都啃透。抓住数学、渲染、Shader、美术流程、引擎优化这几个主干建立起知识点之间的联系再补上一套稳定的问题分析思路面对大多数TA笔试都能游刃有余。做几套笔试题只是入门真正的成长还是要在项目里不断解决一个又一个具体问题。这个岗位的乐趣也恰恰藏在这些千奇百怪的实际问题里。