Unity3D性能优化(二)

一、GPU:
(瓶颈) 受供给比率或内存带宽的限制–》降低显示分辨率
(非瓶颈)处理顶点过多,顶点的个数由GPU以及顶点着色器的复杂成都决定
手机:主要图形不超过10万个
电脑: 1000万

①优化模型几何体
a.切勿使用过多的三角形
b.尽量降低UV贴图接缝和硬边缘数目(顶点增加一倍)
②光照性能—使用光照贴图“烘焙”一次静态光照,而不是逐帧计算
③纹理压缩和Mipmaps
a.纹理压缩可以减少纹理的尺寸(使加载时间更快,内存占用更少)
b.mip贴图的纹理让GPU能让较小的三角形使用较低分辨率的纹理
④LOD和每层消隐距离
a.细节层次系统
b.相机设置每层消隐距离实现(Camera.layerCullDistances)
⑤尽量不要用实时阴影
⑥编写高性能的着色器
a.复杂数学运算(pow exp log cos sin tan)
b.浮点运算(挑选精度尽可能小的浮点)
Gg/HLSL:float(完整32位,适合顶点变换);half(简化16位,适用于UV坐标);fixed(10位定点,适合色彩、照明计算等)

二、CPU:
(瓶颈) 受需要渲染的对象的数量限制(绘制调用)–》优化对象数量
(非瓶颈)处理顶点过多,(蒙皮网格,棉布仿真、粒子)
渲染屏幕图像,CPU的计算工作:光照效果会影响的对象、设置着色器和着色器参数、向显卡驱动发送调用命令、
减少CPU工作-》最好减少可见对象的数量
①手动或者使用Unity的绘制调用批处理将临近的对象组合在一起
②通过将独立的纹理放在更大的纹理地图集等操作,在对象中使用更少的材质
③尽量避免使用会导致对象多次渲染的效果(反光、阴影、逐像素光照)

发布了46 篇原创文章 · 获赞 5 · 访问量 4万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览