Ignis 可以把任何物体、植被或带皮带骨的网状物转换为可燃物体,它就会自动着火。然后,火焰可以蔓延,点燃其他物体,被粒子或光线熄灭,或者自然烧尽。也可以被粒子点燃。还会收到风力影响WindZone。
WindZone文档:
粒子特效碰撞检测参考:unity3d粒子碰撞检测,判断例子碰撞到物体_unity粒子系统碰撞检测_野区捕龙为宠的博客-CSDN博客
官方文档:入门 - 阿字节支持 (arctibyte.com)
官方下载地址:Ignis - Interactive Fire - URP/HDRP | Particles/Effects | Unity Asset Store
演示效果:
1.导入Ignis - Interactive Fire 包(官方收费)
2.导入Visual Effect Graph包(免费)下面是:Visual Effect Graph对应unity版本(不对应会出什么问题,我没有试过,有兴趣的可以去试试)
6.代码去调用燃烧,以下两种都可以:
flammableObject.setThisOnFireOnStart = true flammableObject.TryToSetOnFire(transform_.transform.position,1f);
下面方法等同于Time.timeScale = 0 ,只不过只暂停火,场景其他物体无效。
- 调用 FlameEngine.instance.PauseFlames() 以暂停
- 调用 FlameEngine.instance.ResumeFlames() 以恢复
7.燃烧控制(可以自己去测试效果)
下图第一个是:燃烧时长
第二个是:耗尽长度
8.粒子特效碰撞 点燃物体
被点燃的物体cube必须添加上可燃类(flammable Object),粒子特效必须添加勾选Collision
Type选择World,并勾选上Send Collision Messages(发送碰撞消息)。
以上选择完,运行 飞出去的粒子 碰到cube ,cube就会被点燃。
9.粒子特效收风力WindZone影响
给粒子效果添加下的ExternalForces启用即可
10.风力影响 WindZone(自己研究吧)
风吹过去的火 无法点燃物体,需要用自己的粒子特效去实现。
11.不支持移动端,webGL端(局限有点大),我只测试了webGL端是不可以的。
测试的dome场景:Built-in-RP_Sample
官方给了三个场景:Built-in-RP_Sample、HDRP_SampleScene、URP_Sample
12.官方提供了很多功能,需要自己去研究,基础的东西大家还是阅读官方文档,里面写的很清楚!