🎮 GPU渲染管线·深度调优
移动端实战
📱 30章 · 从入门到精通
01
渲染管线总览
CPU→GPU
从CPU到GPU的旅程,移动端与PC端渲染管线的核心差异。
02
顶点处理瓶颈
Draw Call
CPU提交数据的效率陷阱,Draw Call与顶点缓存优化。
03
光栅化阶段
Early-Z
像素填充率的秘密,Early-Z与Hi-Z的实战应用。
04
片元着色器
MAD/Tex
指令数与带宽的博弈,MAD与Tex指令的平衡艺术。
05
帧缓冲与Tile-Based
TBDR
TBDR渲染原理,带宽与功耗的取舍。
06
OverDraw深度剖析
半透明
半透明渲染的代价,如何用深度测试减少无效绘制。
07
LOD与Mipmap
细节层次
细节层次的艺术,纹理采样性能与视觉质量的平衡。
08
GPU内存带宽
ETC2/ASTC
纹理压缩格式选型(ETC2/ASTC),减少带宽占用的策略。
09
Shader变体管理
分支代价
条件分支与动态分支的代价,如何减少Shader编译卡顿。
10
CPU-GPU同步
Fence
Fence与Semaphore机制,如何避免Pipeline Stall。
11
多线程渲染
Command Buffer
渲染线程与主线程的并行设计,Command Buffer的提交策略。
12
GPU Instancing
合批
批量渲染的原理,静态与动态合批的最佳实践。
13
Compute Shader
GPU加速
后处理与粒子系统的GPU加速,减少CPU负载。
14
深度缓冲优化
Reverse-Z
Reverse-Z与浮点深度,提高深度精度的技巧。
15
模板缓冲应用
Stencil
Stencil Test的妙用,遮挡剔除与轮廓渲染。
16
纹理采样优化
各向异性
各向异性过滤与Trilinear,采样器状态的切换成本。
17
Render Pass与Subpass
Vulkan/Metal
Vulkan/Metal的显存管理,减少Load/Store操作。
18
GPU计数器与Profiling
Xcode/AGI
利用Xcode Instruments/AGI定位瓶颈。
19
功耗与发热
降频策略
GPU频率与电压的权衡,如何通过降频策略延长续航。
20
Vulkan vs OpenGL ES
现代API
现代API的驱动开销,显式控制带来的性能红利。
21
延迟渲染与Forward+
光照
移动端光照计算的取舍,带宽与精度的平衡。
22
阴影贴图优化
PCF/VSM
PCF与VSM的移动端实现,分辨率与性能的权衡。
23
后处理特效
Bloom/DOA
Bloom与DOA的优化,降采样与双边滤波的实战。
24
粒子系统优化
GPU Particle
GPU Particle与CPU Particle的选型,发射器合并策略。
25
骨骼动画优化
蒙皮GPU
蒙皮计算在GPU上的实现,骨骼数量与顶点权重的控制。
26
UI渲染优化
Canvas/图集
Canvas重建与图集合并,减少UI OverDraw。
27
地形渲染
Clipmap
Clipmap与Virtual Texture,视锥剔除与遮挡剔除的结合。
28
HDR与Tonemapping
LUT/ACES
移动端色彩精度,LUT与ACES的权衡。
29
抗锯齿技术
MSAA/TAA
MSAA与TAA的移动端实现,性能与画质的取舍。
30
综合调优案例
20→60fps
从帧率20到60的实战,一个完整项目的优化流程。