IssuesCategory: IgnisAudio and Material error after resetting object
Rubs asked 1 year ago

Hello!
I’ve been using Ignis in a project for a while and I’m very happy with the results. It’s a great asset. I do have a problem though when it comes to resetting the flammable objects.
I have a scene where I set a room on fire by starting it with one piece of furniture on one side of the room and letting it propagate to the rest. The first time I do this everything works fine and when the player extinguishes the fire or fails to do so I reset all objects with a Flammable Object script via:
for(int i = 0; i < livingRoomFlammableObjects.Length; i++)
{
     livingRoomFlammableObjects[i].ResetObj();
     livingRoomFlammableObjects[i].ResetMaterialFromIgnis();
}
When I start the fire again the flames work as intended, but the children SFX are not updating and keep the volume at 0. The material animation doesn’t update either so the charred wood texture never shows. The fire works just the same and can be extinguished, but there are these two things I can’t seem to work around. I tried to check the Flammable Object script to try and find out why this happens but I can’t figure it out. Can you shed some light on all of this?
Thank you in advance!

2 Answers
Thomas Staff answered 1 year ago

Hello!
 
Thank you for reporting this bug! SFX does not indeed update when object is reset. This is now fixed in the new update.
However I cannot replicate the material not updating bug. Material updates correctly on my tests. Which Unity version are you using + are you using Built-in RP or URP or HDRP?
 
All the best,
Thomas

Rubs replied 1 year ago

Hello!

Thank you so much for the update. It is great to see developers that listen to feedback and support their assets so actively. I just downloaded the new version and I’m glad to see the audio is now fixed, thank you!

As for the material bug, to replicate it you can create a new scene with two cubes, make both of them Flammable Objects with the OAVA-Convert, and have both of them next to each other with the IsReignitable variable set to “Always”. I use it this way so all the furniture in my game keeps burning one another until the player extinguishes the fire completly, without using the “IsEffectOnForever” flag. If you have this setup and ignite one of the cubes so they both keep burning even when the material is scorched and then reset them and ignite it again I believe you will see the material no longer updates.

If somebody runs into this issue I kind of found a workaround solution for it. I add a new script to all flame vfx objects when they are created that tries to check if the object is actually burning or not (it does this by comparing the putOutSphere with a fixed radius that is more or less the size of the object, if the putOutSphere is smaller than this fixed radius then the object is burning, and if it is burning then I update the “charred_wood_blend” variable in the shader with a constant speed).

Thank you again for your answer. I hope you can also find a solution to this!

Best regards,
Rubs

Rubs replied 1 year ago

Hello!

Thank you so much for the update. It is great to see developers that listen to feedback and support their assets so actively. I just downloaded the new version and I’m glad to see the audio is now fixed, thank you! As for the material bug, to replicate it you can create a new scene with two cubes, make both of them Flammable Object with the OAVA-Convert, and have both of them next to each other with the IsReignitable variable set to “Always”. I use it this way so all the furniture keeps burning one another until the player extinguishes the fire completly, without using the IsEffectOnForever flag. If you have this setup and ignite one of the cubes so they both keep burning even when the material is scorched and then reset them and ignite it again I believe you will see the material no longer updates.

If somebody runs into this issue I kind of found a workaround solution for these. I add a new script to all flame vfx objects when they are created that tries to check if the object is actually burning or not (it does this by comparing the putOutSphere with a fixed radius that is more or less the size of the object, if the putOutSphere is smaller than this fixed radius then the object is burning, and if it is burning then I update the “charred_wood_blend” variable in the shader with a constant speed).

Thank you again for your answer. I hope you can also find a solution to this!

Best regards,
Rubs

Rubs replied 1 year ago

Hello!

Thank you so much for the update. It is great to see developers that listen to feedback and support their assets so actively. I just downloaded the new version and I’m glad to see the audio is now fixed, thank you! As for the material bug, to replicate it you can create a new scene with two cubes, make both of them Flammable Object with the OAVA-Convert, and have both of them next to each other with the IsReignitable variable set to “Always”. I use it this way so all the furniture keeps burning one another until the player extinguishes the fire completly, without using the IsEffectOnForever flag. If you have this setup and ignite one of the cubes so they both keep burning even when the material is scorched and then reset them and ignite it again I believe you will see the material no longer updates.

If somebody runs into this issue I kind of found a workaround solution for these. I add a new script to all flame vfx objects when they are created that tries to check if the object is actually burning or not (it does this by comparing the putOutSphere with a fixed radius that is more or less the size of the object, if the putOutSphere is smaller than this fixed radius then the object is burning, and if it is burning then I update the “charred_wood_blend” variable in the shader with a constant speed).

Thank you again for your answer. I hope you can also find a solution to this!

Best regards,
Rubs

Rubs replied 1 year ago

Hello!

Thank you so much for the update. It is great to see developers that listen to feedback and support their assets so actively. I just downloaded the new version and I’m glad to see the audio is now fixed, thank you! As for the material bug, to replicate it you can create a new scene with two cubes, make both of them Flammable Object with the OAVA-Convert, and have both of them next to each other with the IsReignitable variable set to “Always”. I use it this way so all the furniture keeps burning one another until the player extinguishes the fire completly, without using the IsEffectOnForever flag. If you have this setup and ignite one of the cubes so they both keep burning even when the material is scorched and then reset them and ignite it again I believe you will see the material no longer updates.

If somebody runs into this issue I kind of found a workaround solution for these. I add a new script to all flame vfx objects when they are created that tries to check if the object is actually burning or not (it does this by comparing the putOutSphere with a fixed radius that is more or less the size of the object, if the putOutSphere is smaller than this fixed radius then the object is burning, and if it is burning then I update the “charred_wood_blend” variable in the shader with a constant speed).

Thank you again for your answer. I hope you can also find a solution to this!

Best regards,
Rubs

PD: I don’t see my answer showing up, I hope I’m not making an awful lot of posts -.-‘

Rubs answered 1 year ago

Hello!
Thank you so much for the update. It is great to see developers that listen to feedback and support their assets so actively. I just downloaded the new version and I’m glad to see the audio is now fixed, thank you! As for the material bug, to replicate it you can create a new scene with two cubes, make both of them Flammable Object with the OAVA-Convert, and have both of them next to each other with the IsReignitable variable set to “Always”. I use it this way so all the furniture keeps burning one another until the player extinguishes the fire completly, without using the IsEffectOnForever flag. If you have this setup and ignite one of the cubes so they both keep burning even when the material is scorched and then reset them and ignite it again I believe you will see the material no longer updates.
If somebody runs into this issue I kind of found a workaround solution for these. I add a new script to all flame vfx objects when they are created that tries to check if the object is actually burning or not (it does this by comparing the putOutSphere with a fixed radius that is more or less the size of the object, if the putOutSphere is smaller than this fixed radius then the object is burning, and if it is burning then I update the “charred_wood_blend” variable in the shader with a constant speed).
Thank you again for your answer. I hope you can also find a solution to this!
Best regards,
Rubs

Your Answer