我独自在 Unity 6(URP) 中开发一款低多边形风格的电力网络游戏。如果电缆过载,它会烧毁。旧版本在电缆中间只出现一团烟雾,然后电缆直接消失。没人注意到,所以我重新做了它。
替代电缆:真实电缆在游戏中立即被删除,所以我先复制它的绳索点,然后将其重建为一堆短棱柱(最多 120 个)。它们使用 MaterialPropertyBlocks 从橙红热到灰烬再到黑色炭化,然后收缩并下垂直至消失。
烧灼前端:每根电缆段根据其距离故障点的距离决定是否点燃。最远端总在 0.9 秒内燃尽。烟雾、火焰、火花和灯光都使用相同的时间,因此它们全部由同一个组件控制。
烟雾让我尝试了三次。我在游戏中使用不透明、平面阴影的低多边形烟雾球。
- 第一次烟雾太小且分散,看起来像碎石。增加烟雾数量,每米 12 个。
- 然后烟雾球以完整大小出现,像散落在路面上的巨石。现在它们从小开始,上升时逐渐变大,并随风漂移。
- 由于光照立体的缘故,它仍然看起来像石头。我为每个烟雾球添加一点发光(约为其颜色的 45%)以柔化阴影,这才让它最终看起来像烟雾。
火焰与光照:使用未受光照的小火焰,颜色为 HDR,以便 bloom 采样它们;最多 4 个闪烁的点光源随火焰移动。夜晚时它们照亮地面和烟雾底部,这实际上比火焰本身看起来更好。
测试方式:我在 Play 模式中有一个小测试场景,故意过载电缆并拍摄烧毁、白天和夜晚的截图。我主要通过查看这些截图来调整烟雾,因为在移动过程中很难看出它看起来像石头。
我还能做什么来让它更好?有任何想法?
如果你对游戏感兴趣:Steampage
评论 (0)