移动端高性能体积云(unity)

如题所述

本文聚焦于在Unity URP下,采用GPU instancing叠层方式制作体积云的高效率解决方案。移动端性能表现显著,开销仅需1ms,使用单个drawCall,大幅简化了复杂体积云的着色实现。光影着色采用油画技巧,实现风格化与多样化效果,包括模拟体积雾、极光等场景。

性能方面,移动端设备表现出色,1ms开销,单个drawCall即可完成渲染,显示了高度优化的性能表现。

在多样性方面,通过调整UV变化公式,修改图片通道与明暗度,理论上可接近梵高风格的星空,实现画面风格化。同时,画面能够模拟出丰富的云层形态,包括平流层、台风、风眼、山顶云海以及普通天空和梵高星空等。

光影着色采用独特策略,不依赖阴影,而是利用光效模拟立体感。通过Color和SetFloatArray叠加背光部分,实现线性强度控制,编辑器调参以实现最佳效果。高亮部分则通过samplerColor R通道与阈值比较,结合光源颜色进行叠加,达到近似立体效果的云层表现。

Mesh和UV的变化策略为水平..ad,UV变化则具有特殊性,具体实现细节在此未详细阐述。

在参考与感谢部分,提及了两个资源库:一个是Unity体积云URP管线+GPU instancing+3DNoise的实现,去除了shadow Pass,进行了光影简化与重新计算;另一个是github上的pc端体积云实现案例,提供了一定的参考与思路。
温馨提示:答案为网友推荐,仅供参考
相似回答