[Request] "Unload from memory" action

0 favourites
From the Asset Store
Alot of High Quality Items sound effects for your game!
  • Relates to audio and music too. There absolutely needs to be an unload asset option to give developers more control that they need for more complex or large scoped games.

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • Not to troll or flame but often I have this impression that the C2 doesn't have all this features that would benefit big project developers simply because... It was not meant for big projects. Like no one behind the curtain actually believed that the users will come up with something more then Flappy Crap or browsers games...

  • Irbis I don't think so because C2 supports large layouts, render and collision cells. Seems like it's just very difficult to implement and will also cause a lot of problems for inexperienced users.

  • if you add actions to unload from memory maybe you will save memory but you will increase cpu usage

    so you have to choose between memory and cpu usage

    the best is to keep both light

  • Irbis I don't think so because C2 supports large layouts, render and collision cells. Seems like it's just very difficult to implement and will also cause a lot of problems for inexperienced users.

    Yeah i know =\ I am just very bitter at this point.

    if you add actions to unload from memory maybe you will save memory but you will increase cpu usage

    so you have to choose between memory and cpu usage

    the best is to keep both light

    Yes and no. 80% of the machine usage comes from VRAM usage. If you are not trying to find the number Pi or doing some real time Newtonian advanced physics - you will never reach even the half of you CPU usage from pure data processing. what chokes the user machine is 80% of the time the VRAM hogging.

    And here - we have little to no control over that VRAM.

    • I have a layout which has a lot of objects created and destroyed right after they are used.I stored all sprites in another layout and called to create them only when they are needed . But in the playing layout I use only less than 20 sprites/text ~ 20 mb memory, and only 1 animation sprite working at once. The mobile devices ( cheap mobiles ) can't handle it, because the size of images memory keep increasing after they are created and still keep its memory after destroying ~ 100mb images memory if all the sprites are loaded in the layout. I upgraded my game with many versions then I decided down-graded it to the original version for every mobiles can run without crashing because out of memory. I really need a solution for my next games.
    • I wonder if multi-layouts can solve it ? When my layout reached ~50 mb images memory and can still work, I saved it and go to another layout. Then I called an action to load that layout again, and Black-Screen , the game has crashed and quit.
    • I'm not sure this request "Unload from memory" can solve my issue or not. Really need helps and advices
  • > Bump.

    >

    > I'm loading some assets externally for an editor. If an image is loaded, then the source image modified, then uploaded again, nothing happens. I can only assume this is because C2 is loading the image from memory instead of reloading the source image. If that is correct, then I support this request.

    >

    If you are using file chooser to pick the file and picking the same file it's quite likely this (it's not even loading):

    Have the same problem, but as I recall the reason for this being so, is to minimize the amount of data needed to be downloaded, which makes sense if that Is what you are worried about. But if its not, the consequence is that you need to make a memory inefficient workaround, which makes little sense to me. I fully understand why it original is designed to work as it is in regards to the problem is trying to solve, but not why it justify that if that is not your problem, then being able to unload from memory is not needed, as its two different problem/issues that clearly doesn't share the same worries.

  • I have a question here. I tested my game with a low-end Android device ( Dragon Touch Y88 512 Mb ram ), it runs very well my game, but when I added more images to a layout which are never called to load these images , the game has crash. The more never-used images, the more crashes my game has. I tried it in my HTC One ( 1 Gb ram and better cpu chips ), and I didn't get any crashes. Can someone explain for me please ? Is this sample relate to Unload issue ? Thank you for any advices and please excuse me for my english

  • I'm wondering about a similar thing. As I'm doing a Multiplayer game I would like to load character files on demand as they log in, and unload character assets as they log out. Would this be possible?

  • I did not know it acted like this. I definitely will NOT be purchasing a license until this is addressed. This is a memory leak, plain and simple. It's a shame. I'll be giving my money to another company.

  • Negative. Read the owners posts here. He does not care because he thinks it's not really a problem. He has made his money and went all big time on everyone. It's a damn shame as I thought this was a good company.

  • Negative. Read the owners posts here. He does not care because he thinks it's not really a problem. He has made his money and went all big time on everyone. It's a damn shame as I thought this was a good company.

    Hey there, Runthis

    I can definitely understand your frustration because it's a very large flaw. Hopefully it's implemented within Construct 3 and you can give that a chance.

    Heck, they may be developing Construct 3 because of such flaws as that. Haha.....

  • I'm wondering about a similar thing. As I'm doing a Multiplayer game I would like to load character files on demand as they log in, and unload character assets as they log out. Would this be possible?

    You cannot unload, except when changing layouts.

    Memory is managed by the browser engine, C2 has no control over it besides the initial drawing of an asset (first time will load it into memory).

    It's the downside of the engine, that its suitable and streamlined for game development to keep these advanced features hidden, but it detracts from power-users who prefer to have this explicit control.

    This matters but it's becoming less of a problem as mobile devices advance and they have a lot of memory.

    Once you become adept at using C2, you have to design around it's limitations if you want to make a grand-scope games.

    The funny thing is Unity also behaves like this, I hear from Steam devs who complaint about their lack of control over memory management.

    Even turn based games, hex grid, like Thea the Awakening, lags like hell in some parts due to Unity not behaving.

  • Construct Classic unloads memory simply destroying the last sprite instance.

  • I don't understand how you can have memory issues when changing layout pretty much dump all previous non-global objects from memory, especially when making complex games such as mine.

    Destroying objects and instances when they are unneeded also remove them from memory.

    If you are having memory issues, its more due to how your game design and logic works, rather than the engine supposedly flaw. Try reading some nice blogs and articles written by veterans who can give you good tips to work your game around those issues.

Jump to:
Active Users
There are 1 visitors browsing this topic (0 users and 1 guests)