技术深度不足怎么办,不妨从以下几点进行突破:
后续会逐个更新并接入最新项目
内存:
拆装箱
资源引用泄漏static和SO
字符串拼接
协程的yield return内存压力
struct内存对齐
GC:
foreach
IDisposable控制释放时机
unityEngine.Profiling.MemoryProfiler
排查闭包和协程对于高频使用的
使用static和list复用避免
渲染管线修改:
Renderer Feature
SRP Batcher(Property Sheet优化Draw Call)
网络同步:
快照差值
客户端预测和服务器矫正
《守望先锋》GDC分享中的网络同步架构
protobuf协议:
在不同端的性能差异
二进制数据压缩
UI优化:
Rebuild和mask重绘
协程:
yield return new WaitForSeconds
的GC问题
自定义缓存策略(工厂)
CoroutineManager管理生命周期,切换 场景终止协程
Shader:
ComputeShader
GPUInstance
多线程:
主线程
渲染线程
工作线程
jobsystem创建额外的线程
物理:
绳子
齿轮
布娃娃
塞尔达王国之类2024年GDC演讲
关于物理驱动世界
动画:
Culling Mode
GPU Skinning
动画事件与逻辑解耦:使用ScriptableObject配置动画事件,避免硬编码
表达:
原理,实践,优化