Memory management


#1

The game that I’m working on has one endless level being generated by spawning objects (with some child objects) in random order. I noticed that even when I remove the objects from scene (Remove Object node) and remove them from the arrays, Armory (Krom) doesn’t release the memory, it just keeps using more and more. Which is a problem with the endless level of course.

Is there a way to clean the removed objects from memory?


#2

I studied the endless runner example scene for a solution, but it behaves the same. Here’s a screenshot of the memory use after running for a while.


#3

Perhaps the object.remove() call is not clearing all of the references, investigating!


#4

Found the issue, the uniform buffer used for armature bones was not released properly. Patched in upcoming Armory 0.3. :hammer: