什么是技术美术?

前言

技术美术,英文名是Technical Art,简称TA.
说白了就是一群既懂程序又懂美术的人。
至于技术美术是属于程序还是属于美术我们在这里不做过多讨论,要不然会打起来的。。。
反正我认为技术美术就是一名特殊的美术,要不然的话为什么不叫美术技术呢?

职责与技能

我们先来聊一聊TA的职责,然后再来分析下需要什么技能,最后也能清晰的知道该学习什么技能了。
总的来说呢分为四大主要职责:

1.美术与程序间的沟通桥梁
职责: 负责协调沟通美术与程序,甚至策划间的各种问题,类似调和剂或者说是中间翻译者。做的好的会让整个项目在资源输出上如鱼很水,尤其是程序在资源使用上会相当舒心。
为什么这么说呢,大多的程序是不懂美术的,同样大多的美术更是不懂程序的,这样就存在一个问题,当程序需要某个资源的时候,美术不懂得应该怎么出才是最正确的,常规的资源没什么问题,但是一个项目中总是存在各种各样的需求与规范的。
技能: 懂美术,懂程序,懂引擎,否则你沟通不起来。

2.着色器shader
职责: 整个项目的Shader规划,以及利用Shader来提升美术效果,这里包括美术各个模块,角色、场景、特效、后处理等。
有一点要注意的是,着色器和性能消耗有很大的关系,需要把握好这之间的平衡点。
技能: 掌握shader语言,编写符合需求的shader。如果是美术出身的会更喜欢用可视化的Shader工具,比如Shader Forge(已下架),Amplify Shader Editor(个人重点推荐),又或者是Unity2018中的Shader Graph(官方自己的可视化着色器工具)等,也没关系,只要最后再从代码层面优化一遍就好了,因为可视化工具生成的代码含有大量的冗余计算。还有一点,可视化工具目前都会有一些限制,并不能像代码一样灵活,可以随心所欲的制作出任何想要的效果与功能。总之,只会节点拉一拉拖一拖是不行的。

3.插件工具
职责: 主要是围绕美术来制作一些工具,这里一般会有两种情况:
帮助美术提升工作效率,DCC软件中或者引擎中,怎么方便怎么来。
严格控制美术输出的资源,以便符合项目制定的规范。
技能: 能写程序,要求不高,真的要求不高,因为你写的工具又不需打包进游戏,所以不存在性能消耗问题,只要让使用工具的人爽就行了(当然,同时也要满足项目功能的需求)。

4.资源性能优化
职责:负责所有美术资源的性能问题,这个锅一定是你的,一定要保证美术输出的资源符合项目定位的性能标准,这点很重要!
技能:熟悉DCC工具,了解每一类美术资源,以及它们的性能消耗点。会利用性能分析工具进行性能测试。
大致就这么多吧,这是大的分类点,细说的话还会有很多,比如前期美术资源的标准制定啊,资源的配置啊,甚至是UI的排版配置啊等等等等的。。。
总之TA的工作很杂,相当的杂,涉及的范围也是相当的广,这也要求了TA所需要会的技能很多,这也是为什么市面上TA较少的原因之一。

学习线路

先从引擎下手,TA大部分的工作都是基于引擎展开的。市面上关于Unity引擎的教学相当的多,不过我还是建议看官方文档,虽然没有中文。
了解每个美术模块的制作方法流程,以及他们所使用的DCC工具,最常用的就是3dsMax、Photoshop、substance系列、AE、Zbrush。
学习如何制作shader,前期可先通过可视工具来制作,然后同时查看生成的代码来学习。同时一定了解下图形渲染管线的原事,这对于学Shader以及上面说的资源性能优化有非常重要的帮助。

建议在掌握一定基础后,自己尝试做些小游戏,这样可以快速的掌握引擎以及比较全面的功能,这在以后与程序打交道时会有很大益处。最后就是不断学习,不断接收新的知识,不断进步。。。

转职通道

通常情况下没有一开始就是做技术美术岗位的,一般都是由其他岗位转职而来的。
从大的方面来讲分为两种:
程序转技术美术
嗯,似乎很少有程序会这么干,由于程序上升通道很多,本职程序的话也有很多高级职位,图形学方面感兴趣的也有很多适合程序员发展的空间,如果有哪位程序员转技术美术的看到的话可以来聊聊你的神奇想法。
不过话说回来,程序转技术美术还是有不少优势的,待会我们聊到技术美术的职责的时候就可以感受到这一点。
美术转技术美术
比较常见,也是目前技美当中的主要来源。
再细分的话,特效、动作、地编中转职的居多。大部分是在工作过程中和程序的沟通交流较多,结果被带偏了,从而走上了一条不归路。。。
美术转职技美的唯一门槛就是代码!所以想转技美的美术同学耐住性子一定要跨过这道槛。

关于本专栏

之前一直有想写点什么的,可由于平时工作太忙,也不怎么爱写作,所以一直没有写起来,最近看了好多大神们分享的知识,也受益很多,希望自己也能分享些有用的知识,帮到需要帮助的人,也希望能给更多的同学启发,让喜欢并想转职为技术美术的同学少走些弯路,同时也希望能结识到更多的朋友,共同学习共同进步。
所以才开了个专栏,本栏的定位就是Unity方向的技术美术,会不定期的分享与此相关的知识点,我会尽量的以每个模块清晰的从简到难来讲述TA的相关知识,也希望大家多多点赞,让我更有信心的坚持下去。

最后

欢迎大家关注更多干货的公众号: Unity技术美术(ID:gh_8b69cca044dc)
在这里插入图片描述

<think>好的,我现在需要帮助用户了解技术美术在性能优化方面的职责。用户之前询问过Substance Designer的细节,现在转向性能优化,可能是在学习技术美术的过程中遇到了相关问题。首先,我需要确定用户对技术美术和性能优化的基础了解程度。由于用户之前的问题是关于软件使用的,现在转向优化,可能已经有一定的3D开发经验,但需要更深入的指导。 接下来,我应该考虑技术美术在性能优化中的核心任务。需要涵盖渲染、内存、CPU、GPU等方面的优化,同时结合具体的技术点,比如LOD、批处理、纹理压缩等。还要注意用户可能关心的实际案例,比如在Unity或UE中的具体操作,以及数学公式的应用,比如Overdraw的计算。 同时,用户之前的对话中提到过LaTeX公式的使用,所以这次回答中需要适当加入公式,例如渲染负载的计算、mipmap的存储量公式。要确保这些公式正确,并且用$$包围,行内公式用$符号。例如,提到Overdraw时,可以写$Overdraw = \frac{\text{实际着色像素数}}{\text{屏幕总像素数}}$。 还要注意结构清晰,按照用户之前接受的层级结构来组织内容,比如分点说明优化领域、具体技术、工作流程和数学基础。需要提供实际案例,帮助用户更好地理解抽象概念,比如场景优化和角色材质优化的例子。 另外,用户可能需要学习资源推荐,所以最后要加入学习路径,包括工具、理论书籍和社区资源,帮助用户进一步学习。需要确保语言简洁,技术术语解释清楚,避免过于晦涩,同时保持专业性。 最后,检查是否符合系统级指令,正确使用LaTeX格式,结构清晰,使用中文回答。确保每个技术点都有对应的解释和示例,让用户能够逐步理解性能优化的各个方面。</think>以下是技术美术(Technical Artist)在性能优化领域需要掌握的核心内容及方法论的结构化说明: --- ### 一、性能优化核心领域 **1. 渲染管线优化** - **渲染负载计算** $$ \text{帧时间} = \text{CPU耗时} + \text{GPU耗时} + \text{数据传输耗时} $$ 需通过工具(如Unity Profiler/UE5 Unreal Insights)定位瓶颈 - **关键指标控制** - DrawCall数量:移动端建议 ≤ 100/帧,PC端 ≤ 500/帧 - 三角面数:移动角色 ≤ 15k,场景物件 ≤ 5k/模型 - Overdraw控制:$Overdraw = \frac{\text{实际着色像素数}}{\text{屏幕总像素数}}$(移动端建议 ≤ 2.0) **2. 内存管理** - **纹理内存优化** - Mipmap存储量公式: $$ \text{总内存} = \text{基础纹理内存} \times 1.33 $$ - 压缩格式选择:ASTC 4x4(移动端)/BC7(PC端) - **资产规范制定** - 纹理尺寸:根据屏幕占比动态调整(如512x512 → 256x256) - 动画精度:骨骼数 ≤ 40(移动端),关键帧间隔 ≥ 5帧 --- ### 二、具体优化技术 **1. LOD(Level of Detail)系统** - 几何LOD:按距离切换模型细节层级(如: $$ \text{切换距离} = \frac{\text{屏幕高度}}{2^{\text{LOD等级}}} $$ - Shader LOD:根据设备性能自动降级着色器复杂度 **2. 批处理技术** - **静态批处理**:合并相同材质的静态物体(需满足: $$ \text{顶点数} \leq 65535,\ \text{相同材质实例} $$ - **GPU Instancing**:通过矩阵数组批量渲染相同网格 $$ \text{性能提升比} ≈ 1 - \frac{1}{\text{实例数量}} $$ **3. 着色器优化** - 复杂度控制: - 移动端:避免分支语句(if/for),ALUs ≤ 50 - 使用$lerp()$代替复杂插值(线性插值效率最高) - 精度优化: ```glsl lowp float ambient = 0.2; // 低精度(移动端) mediump float specular; // 中精度 ``` --- ### 三、TA工作流程 **1. 性能预算制定** - 建立项目级规范表格: | 类别 | 移动端标准 | PC端标准 | |------------|------------|----------| | 纹理内存 | ≤200MB | ≤2GB | | 骨骼动画 | ≤30fps | ≤60fps | **2. 自动化检测工具开发** - 编写Python/C#脚本检测: - 模型面数超标 - 未压缩纹理 - 材质球冗余属性 **3. 实时调参系统** - 构建动态参数控制面板(如: ```csharp [Range(0.1, 2.0)] public float globalLOD = 1.0f; // 全局细节等级 ``` --- ### 四、数学与算法基础 **1. 空间复杂度分析** - 八叉树/四叉树:场景分割效率对比 $$ \text{四叉树查询复杂度} = O(\log_4 N) $$ **2. 光照计算优化** - 球谐光照(Spherical Harmonics): $$ L(\theta,\phi) = \sum_{l=0}^{n}\sum_{m=-l}^{l} c_l^m Y_l^m(\theta,\phi) $$ 用3阶系数(9个float)代替实时阴影 --- ### 五、实际案例 **1. 开放世界场景优化** - 植被系统: - 使用Impostor替换远处树木(纹理+广告牌) - 风场动画改用顶点着色器计算 **2. 角色材质优化** - 合并材质通道: - 将Roughness/Metallic合并到RG通道 - AO/Height合并到BA通道 --- ### 六、学习路径 1. **工具掌握**: - RenderDoc分析DrawCall - Intel GPA调试GPU负载 2. **理论深化**: - 《Real-Time Rendering》第4版(渲染管线原理) - 《GPU Pro》系列(实战技巧) 3. **社区资源**: - GDC演讲(如《Overwatch渲染架构》) - Unity/Unreal官方优化白皮书 --- 性能优化是技术美术的核心竞争力,需平衡艺术效果与硬件限制。建议从目标平台的反向推导开始:先确定设备性能天花板,再逆向设计美术资源规范。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值