Memory Usage of DMIs in BYOND Discussion
|
|
I'm creating a game that I knew would be somewhat memory intensive from the beginning. Prism uses pre-rendered graphics so it is easy to generate high-FPS, 8 direction animations. I have posterized my sprites down to about 16-20 levels and reduced the number of frames to a bare minimum. The numbers I'm about to cover are from before I reduced my file size. I'm bringing this up because I would really like to use more than 3-4 frames per animation.
I have things working OK now, but I'd still like to know why DMIs take up SO much memory in DS. Here are some examples:
Base human dmi: 3376 kb on disk
...when loaded onto a map in dream seeker: 130,504 kb
Boots armor overlay dmi: 1890 kb on disk
...when loaded onto a map in dream seeker: 104,684 k
Chest armor overlay dmi: 3131 kb on disk
...when loaded onto a map in dream seeker: 104,932 k
[edit]I should mention that the above numbers were retrieved using a completely blank project and loading the DMIs one at a time onto the map. There was no other code or resources that could have reflected upon the numbers.
The end result is 15.4 megs of art taking up a memory footprint of 742 megs.
Like I said, I've managed to shrink my file size down considerably (15.4 megs down to 4-5 megs). Even with the reduced size, I'm concerned that multiple characters with different armor on the map will take up obscene amounts of memory.
I'm looking forward to some insight.
|
That said, it usually isn't an issue because DS will unload icons as needed-- it only really needs to load into RAM those icons that are in use. I can't recall the heuristic we use for this (it's something I can look up). You could always play with it more and see if this is problematic for you.