美术资源的使用会对游戏的性能造成很大影响,下面列出了一些仅供参考的点:
- 模型顶点的数量会影响GPU的性能。通常,在手机平台上,模型的顶点数量控制在100 000个以内为佳。在PC平台上,模型的顶点数量可控制在几百万个以内。
- 减少模型UV接缝和硬边的数量。
- 场景中模型的数量会影响到CPU的性能,所以要尽可能减少场景中的模型数量,或者将使用相同Material的多个模型并和到一起(如果模型之间是使用的不同的Material,合并没有任何意义),这样会减少draw calls的数量。当运行游戏时,在Game窗口选中Stats会看到draw calls的统计。通常,在手机平台上,控制在数百个draw calls内为佳,在PC平台上可以控制在几千个以内。
- 尽可能减少角色模型骨骼的数量。
- 避免在Unity内使用IK动画。
- 减少Material的数量。通常,一个模型至少需要一张贴图,如果可能,可以将多张贴图拼成一张贴图,这样多个模型可以共享同一个Material。
- 尽可能压缩贴图,如果不能压缩,则尽可能将贴图设为16位而不是32位。
- 尽可能位贴图使用Generate Mip Maps功能,除非贴图总是1:1渲染显示,比如UI或2D游戏。
- 首选使用Mobile或Unlit的Shader,它们同样可以很好地工作在PC平台。
- 将不需要显示的模型隐藏,可以减少CPU的工作。
- 雾会对性能造成较大影响。
- 尽可能减少像素灯光、阴影、反射的使用,这些功能会导致模型被渲染多次,加重CPU的负担。
- 尽可能使用Lightmap而不是实时光照亮场景。
- 小心使用实时阴影,它会对性能造成较大影响。
- 在手机平台上,带有Alpha效果的Shader会对性能造成较大影响。