跳到主要内容

Private study surface · PDF Q01–Q50

题库逐题实验室

这里不是背答案的清单,而是把每道腾讯技术美术题拆成「先观察、再预测、只改一个变量、最后讲清原因」的小实验。 它藏在 Lab 里,不会出现在作品集的公开导航。

50 道题 · 一题一页

Find your next experiment

按关键词或课程筛选

当前显示 8 / 共 50 道题 · 会自动记住筛选和阅读位置

卡片只显示题干摘要;进入题目后可看到完整原题、30 秒答案和全部深挖内容。

不会做时,照这个顺序就好
  1. 先观察:打开题目对应的 Lab,记下默认画面和指标。
  2. 做预测:先写一句「我把 X 调大,Y 会变成 Z,因为……」。
  3. 只改一个参数:让变化能归因,而不是把所有开关一起拨动。
  4. 看证据再表达:回到代码锚点,练习 30 秒、2 分钟、5 分钟三种说法。

卡住可以直接跳过预测;自由探索也没问题,重要的是最后补上一句「我看到了什么,所以我认为……」。

Q01 未开始

自我介绍

请做一下自我介绍。(必问题,结合经历)

PDF p.1 case case-study

Session · interview-defense

开始这题
展开 Q01 的实验与代码入口
Q02 未开始

PBR 与 BRDF 原理

请详细解释迪士尼 PBR 材质模型的 BRDF 实现原理,与标准 Oren-Nayar 模型的核心差异是什么?(常问题,理清逻辑)

PDF p.4 concept experiment

Session · pbr

开始这题
展开 Q02 的实验与代码入口
Q03 未开始

Metallic 与 Albedo

在 PBR 工作流中,金属度(Metallic)为 1 的物体,其 Albedo 贴图应如何处理?若绘制一块纯黑煤炭,Albedo 值应为多少?(必问题,理清逻辑)

PDF p.6 concept experiment

Session · pbr

开始:先裸跑
展开 Q03 的实验与代码入口
Q04 未开始

Normal Map 空间

请说明法线贴图(Normal Map)在 Tangent Space 与 Object Space 中的区别,为何游戏引擎普遍采用 Tangent Space?(必问题,理清逻辑)

PDF p.8 concept experiment

Session · normal-spaces

开始这题
展开 Q04 的实验与代码入口
Q05 未开始

SSS 皮肤 Shader

如何在 Unity 中实现一个支持次表面散射(SSS)的皮肤 Shader?需考虑哪些参数与采样策略?(常问题,理清逻辑)

PDF p.11 shader experiment

Session · rendering-effects

开始这题
展开 Q05 的实验与代码入口
Q06 未开始

SSR 屏幕空间反射

请描述 SSR(屏幕空间反射)的实现流程,并说明其在移动端的性能瓶颈与优化手段。(常问题,理清逻辑)

PDF p.13 shader experiment

Session · screen-space

开始这题
展开 Q06 的实验与代码入口
Q07 未开始

光照一致性

什么是“光照一致性”?在多光源、多材质的场景中,如何保证美术资源在不同光照环境下视觉统一?(必问题,避坑防雷)

PDF p.15 concept experiment

Session · pbr

开始这题
展开 Q07 的实验与代码入口
Q08 未开始

光照衰减

请解释“基于物理的光照衰减”与“美术调整衰减”的区别,腾讯项目中更倾向哪种方式?为什么?(常问题,价值匹配)

PDF p.17 concept code-reading

Session · pbr

开始这题
展开 Q08 的实验与代码入口
Q09 未开始

Roughness 高光分布

在 PBR 材质中,粗糙度(Roughness)与金属度(Metallic)的贴图如何影响反射高光的分布?请结合 Shader 代码片段说明。(必问题,理清逻辑)

PDF p.19 shader experiment

Session · pbr

开始:先裸跑
展开 Q09 的实验与代码入口
Q10 未开始

ShaderLab 法线 Shader

请手写一个 Unity ShaderLab 实现的简单法线贴图 Shader,包含顶点着色器与片元着色器结构。(必问题,直接背熟)

PDF p.22 shader code-reading

Session · graphics-debugger

开始这题
展开 Q10 的实验与代码入口
Q11 未开始

软遮挡与可见性

如何在 Shader 中实现“动态遮挡剔除”(Soft Occlusion Culling)?请说明其与传统遮挡查询的区别。(冷门题,理清逻辑)

PDF p.26 shader experiment

Session · graphics-debugger

开始这题
展开 Q11 的实验与代码入口
Q12 未开始

Alpha to Coverage 与 Blend

请解释“Alpha to Coverage”与“Alpha Blend”在透明物体渲染中的性能与视觉差异,腾讯项目中如何选择?(常问题,避坑防雷)

PDF p.28 shader experiment

Session · graphics-debugger

开始这题
展开 Q12 的实验与代码入口
Q13 未开始

粒子 Shader 优化

你如何优化一个包含 100+ Draw Call 的粒子特效 Shader?请列出至少 5 种优化策略。(必问题,理清逻辑)

PDF p.30 shader experiment

Session · shader-performance

开始这题
展开 Q13 的实验与代码入口
Q14 未开始

视距 LOD 材质切换

如何在 Shader 中实现“基于视距的 LOD 材质切换”?请说明其与模型 LOD 的协同机制。(常问题,理清逻辑)

PDF p.32 shader experiment

Session · shader-performance

开始这题
展开 Q14 的实验与代码入口
Q15 未开始

Forward 与 Deferred

请描述“延迟渲染”(Deferred Rendering)与“前向渲染”在 TA 工作流中的适用场景,腾讯游戏为何多采用前向?(常问题,价值匹配)

PDF p.34 pipeline experiment

Session · screen-space

开始这题
展开 Q15 的实验与代码入口
Q16 未开始

动态天气体积光

如何在 Shader 中实现“动态天气系统”的云层体积光效果?需使用哪些纹理与计算方法?(冷门题,理清逻辑)

PDF p.36 shader experiment

Session · rendering-effects

开始这题
展开 Q16 的实验与代码入口
Q17 未开始

GPU Instancing 植被

请说明“GPU Instancing”在植被渲染中的应用原理,如何避免因材质差异导致的 Instancing 失效?(必问题,理清逻辑)

PDF p.38 shader experiment

Session · shader-performance

开始这题
展开 Q17 的实验与代码入口
Q18 未开始

Shader 溢出调试

你如何调试 Shader 中的“颜色溢出”或“数值溢出”问题?请列举至少三种工具或方法。(常问题,理清逻辑)

PDF p.40 shader experiment

Session · shader-performance

开始这题
展开 Q18 的实验与代码入口
Q19 未开始

Mipmapping 采样

请解释“Mipmapping”在纹理采样中的作用,为何在移动端必须禁用某些材质的 Mipmaps?(常问题,理清逻辑)

PDF p.42 concept experiment

Session · texture-sampling

开始这题
展开 Q19 的实验与代码入口
Q20 未开始

FBX UV 与法线自动化

请描述你使用 C# 在 Unity 中开发的自动化工具,用于批量处理 FBX 模型的 UV 拆分与法线重算。(必问题,结合经历)

PDF p.44 pipeline case-study

Session · ta-tools

开始这题
展开 Q20 的实验与代码入口
Q21 未开始

PBR 贴图命名规范

如何用 MaxScript 或 Python 编写一个脚本,自动为角色模型生成标准的 PBR 贴图命名规范?(常问题,结合经历)

PDF p.46 pipeline case-study

Session · ta-tools

开始这题
展开 Q21 的实验与代码入口
Q22 未开始

Houdini 程序化植被

请说明你如何使用 Houdini 制作程序化植被,并将法线信息从球体“包裹”到复杂树形结构上?(冷门题,理清逻辑)

PDF p.48 pipeline code-reading

Session · asset-pipeline

开始这题
展开 Q22 的实验与代码入口
Q23 未开始

Material Function 复用

在 Unreal Engine 中,如何通过 Material Function 实现跨材质的参数复用?你如何管理其版本冲突?(常问题,结合经历)

PDF p.50 pipeline experiment

Session · asset-pipeline

开始这题
展开 Q23 的实验与代码入口
Q24 未开始

AssetBundle 与 Addressables

请解释“Asset Bundle”与“Addressables”在腾讯项目中的选型依据,你如何设计资源热更新策略?(必问题,理清逻辑)

PDF p.52 pipeline experiment

Session · engine-pipeline

开始这题
展开 Q24 的实验与代码入口
Q25 未开始

自动质检工具

如何开发一个“自动质检工具”,检测导入模型的面数、贴图分辨率、法线方向是否符合项目规范?(必问题,结合经历)

PDF p.54 pipeline experiment

Session · ta-tools

开始这题
展开 Q25 的实验与代码入口
Q26 未开始

DCC 与引擎同步

你是否写过用于 DCC 软件(Maya/Blender)与引擎间的数据同步插件?请说明其工作流程与数据格式。(常问题,结合经历)

PDF p.56 pipeline experiment

Session · engine-pipeline

开始这题
展开 Q26 的实验与代码入口
Q27 未开始

LOD 与 Collider

如何实现“一键生成 LOD 模型”并自动绑定碰撞体?请描述你使用的算法与性能权衡。(常问题,理清逻辑)

PDF p.58 pipeline experiment

Session · asset-pipeline

开始这题
展开 Q27 的实验与代码入口
Q28 未开始

材质参数预览面板

请说明你如何使用 Unity Editor 扩展开发“材质参数预览面板”,让美术可实时调整 Shader 参数。(必问题,结合经历)

PDF p.60 pipeline code-reading

Session · ta-tools

开始这题
展开 Q28 的实验与代码入口
Q29 未开始

TA 工具版本控制

你如何管理 TA 工具链的版本控制?是否使用 Git LFS?如何避免美术误用旧版脚本?(常问题,避坑防雷)

PDF p.62 pipeline case-study

Session · ta-tools

开始这题
展开 Q29 的实验与代码入口
Q30 未开始

Quaternion 旋转

请推导四元数(Quaternion)绕任意轴旋转的公式,并说明为何游戏引擎优先使用四元数而非欧拉角?(常问题,理清逻辑)

PDF p.64 math experiment

Session · transform-math

开始这题
展开 Q30 的实验与代码入口
Q31 未开始

向量夹角与精度

如何用线性代数计算两个向量之间的夹角?在 Shader 中如何避免浮点精度误差?(必问题,理清逻辑)

PDF p.66 math code-reading

Session · transform-math

开始这题
展开 Q31 的实验与代码入口
Q32 未开始

Projection 与 Viewport

请解释“投影矩阵”与“视口变换”在渲染管线中的作用,如何根据目标分辨率动态调整?(常问题,理清逻辑)

PDF p.68 math experiment

Session · screen-space

开始这题
展开 Q32 的实验与代码入口
Q33 未开始

齐次坐标

什么是“齐次坐标”?在 3D 变换中为何需要引入第四个维度?(常问题,理清逻辑)

PDF p.70 math experiment

Session · transform-math

开始这题
展开 Q33 的实验与代码入口
Q34 未开始

Skinning 权重

如何用矩阵变换实现“骨骼权重插值”?请写出从模型空间到世界空间的完整变换链。(冷门题,理清逻辑)

PDF p.72 math code-reading

Session · transform-math

开始这题
展开 Q34 的实验与代码入口
Q35 未开始

Bezier 曲线

请说明“贝塞尔曲线”在动画路径规划中的应用,你如何用 C# 实现一个可编辑的样条线生成器?(常问题,结合经历)

PDF p.75 math code-reading

Session · transform-math

开始这题
展开 Q35 的实验与代码入口
Q36 未开始

IK 校正

在实现“角色 IK(反向动力学)”时,手臂末端出现扭曲,可能的原因有哪些?你如何用脚本自动校正?(常问题,理清逻辑)

PDF p.77 math code-reading

Session · transform-math

开始这题
展开 Q36 的实验与代码入口
Q37 未开始

GPU Profiler

请描述你如何使用 Unity Profiler 定位一个场景的 GPU 瓶颈?请列出你曾解决的 3 个典型问题。(必问题,结合经历)

PDF p.79 pipeline experiment

Session · shader-performance

开始这题
展开 Q37 的实验与代码入口
Q38 未开始

Draw Call 合并

什么是“Draw Call 合并”?在腾讯项目中,你如何通过材质合并、图集打包减少 Draw Call?(必问题,理清逻辑)

PDF p.81 pipeline experiment

Session · engine-pipeline

开始这题
展开 Q38 的实验与代码入口
Q39 未开始

CSM 阴影

如何优化一个包含大量动态阴影的场景?请说明级联阴影(CSM)的参数调优策略。(常问题,理清逻辑)

PDF p.83 shader experiment

Session · shadow-mapping

开始这题
展开 Q39 的实验与代码入口
Q40 未开始

纹理压缩格式

请解释“纹理压缩格式”(ETC2、ASTC、DXT)在 Android 与 iOS 平台的选型原则。(常问题,理清逻辑)

PDF p.85 pipeline experiment

Session · texture-sampling

开始这题
展开 Q40 的实验与代码入口
Q41 未开始

异步资源加载

你如何设计“资源异步加载”系统,避免场景切换时的卡顿?请说明资源依赖管理机制。(必问题,理清逻辑)

PDF p.87 pipeline experiment

Session · engine-pipeline

开始这题
展开 Q41 的实验与代码入口
Q42 未开始

Overdraw 与 Depth Pre-Pass

什么是“Overdraw”?你如何通过深度预渲染(Depth Pre-Pass)降低其影响?(必问题,理清逻辑)

PDF p.89 shader experiment

Session · shader-performance

开始这题
展开 Q42 的实验与代码入口
Q43 未开始

法线精度与带宽

在移动端,如何平衡“高精度法线贴图”与“显存带宽”之间的矛盾?你采用过哪些替代方案?(常问题,理清逻辑)

PDF p.91 shader experiment

Session · texture-sampling

开始这题
展开 Q43 的实验与代码入口
Q44 未开始

GPU Timeline

请说明“GPU Timeline”分析工具的使用方法,你如何通过它优化粒子系统的渲染效率?(常问题,结合经历)

PDF p.93 pipeline experiment

Session · shader-performance

开始这题
展开 Q44 的实验与代码入口
Q45 未开始

TA 优化 STAR

请分享一个你主导的 TA 优化项目,说明问题背景、技术方案、量化结果(如 FPS 提升、内存下降)。(必问题,结合经历)

PDF p.95 case case-study

Session · production-case

开始这题
展开 Q45 的实验与代码入口
Q46 未开始

动态皮肤特效模块化

如果让你为《王者荣耀》设计一个“动态皮肤特效”(如电光缠绕),你会如何分模块实现?(常问题,理清逻辑)

PDF p.97 case case-study

Session · rendering-effects

开始这题
展开 Q46 的实验与代码入口
Q47 未开始

低端设备画质

如何在不增加美术工作量的前提下,提升低配设备的视觉表现?请给出你的技术方案。(必问题,理清逻辑)

PDF p.99 case case-study

Session · quality-tiers

开始这题
展开 Q47 的实验与代码入口
Q48 未开始

美术与性能取舍

你如何与程序、策划沟通“美术效果”与“性能成本”之间的取舍?请举一个你成功说服团队的案例。(必问题,结合经历)

PDF p.101 case case-study

Session · production-case

开始这题
展开 Q48 的实验与代码入口
Q49 未开始

AI 辅助 TA 工作流

你如何看待 AI 在 TA 工作流中的应用?例如:AI 生成法线贴图、自动 UV 展开、材质风格迁移?(常问题,价值匹配)

PDF p.103 case case-study

Session · interview-defense

开始这题
展开 Q49 的实验与代码入口
Q50 未开始

持续学习与验证

你如何持续学习 TA 前沿技术?请说明你最近学习的一项新技术及其在项目中的落地尝试。(常问题,价值匹配)

PDF p.105 case case-study

Session · interview-defense

开始这题
展开 Q50 的实验与代码入口