Proven ways of lowering load times?

GamersRejoiceGamersRejoice Member Posts: 817
edited November -1 in Working with GS (Mac)
Anyone come up with some techniques for lowering the length of your load times? I'm pushing 8 seconds currently and it's making me cringe. Not sure what to do because I know this will make people angry. I've experimented a little with the initial image being a white square and then having a manager actor load them all layer by layer. But I haven't seen a ton of difference from that yet. Any other ideas?
«1

Comments

  • outasiteoutasite Member Posts: 417
    make sure images and sounds files are compressed as much as possible?

    Right click on project > Show Package content. Then edit all of your files.
    Image Compressor: ImageOptim
    Sound Compressor: Switch Audio Converter

    Show Package Content > Screenshots and delete them all. (one I picked up from QS)

    *EDIT:I once read something about someone completing a test much like the one you are talking about, but there image was a 2x2 image then everything was changed over. They had reported a significant time loss, but I cannot find it again... If anyone knows post the link?
  • ozboybrianozboybrian PRO Posts: 2,102
    There is also a video from Tshirt booth that optimises size use for images. It's a bit confusing but I can understand it's method.
  • POMPOM Member Posts: 2,599
    Glad my findings helped you a bit .

    Try to use low number of prototype actors , and use instances (unlocked in the scene) , i learned that it helps a bit, in my upcoming game (current name "The Loonimals Toy Box") i reduced my prototypes from 60 to 27, its a bit of work and lots of copy paste but 1 prototype can do the work of lots of different actors.
    I think it will save you an extra 1-2 sec (which is a lot)

    Roy.
  • olster1olster1 Member Posts: 396
    This is from experience and it may just be me but if you have load of prototypes, unlock all the actos on your scene and then delete all the rules in the prototypes. That seemed to help thing, try it out of a duplicate of your project.
  • GamersRejoiceGamersRejoice Member Posts: 817
    Thanks for the ideas guys. I'm going to try all of these things. Plus I'm going to experiment with spawning some actors later on once the scene is loaded rather than having everything there at once. Only small actors though to avoid hiccups.
  • kapserkapser Member Posts: 458
    Good to know. I'm really worried that my project gets slow and I'm using tons of actors so I'm gonna keep an eye on that.
  • mynameisacemynameisace Hull, UKMember Posts: 2,484
    I'll make a video, show you what I've done in my latest game.

    Ace
  • mynameisacemynameisace Hull, UKMember Posts: 2,484
    Here's a quick video I made:



    Ace

    mynameisace.com
  • IsabelleKIsabelleK Member, Sous Chef Posts: 2,807
    mynameisace said:
    Here's a quick video I made:



    Ace

    mynameisace.com

    So Ace, summarizing we just have to put blank actors in the scene and load their images after the scene is loaded? Pretty nice idea!
  • mynameisacemynameisace Hull, UKMember Posts: 2,484
    Yeah, works a treat!

    Ace
  • GamersRejoiceGamersRejoice Member Posts: 817
    Very cool, thanks Ace. I may have to try this if nothing else works. I'd have to rebuild my whole game this way, so a bit discouraging, but if push comes to shove then I will do it.

    Do your prototype actors have any rules in them? Or just the instances?
  • RHRH Member Posts: 1,079
    This is a great thread, whilst i knew most of them I've still learnt one or two things. Thanks!
  • mynameisacemynameisace Hull, UKMember Posts: 2,484
    GamersRejoice said:
    Very cool, thanks Ace. I may have to try this if nothing else works. I'd have to rebuild my whole game this way, so a bit discouraging, but if push comes to shove then I will do it.

    Do your prototype actors have any rules in them? Or just the instances?

    All instances ;)

    Ace
  • GamersRejoiceGamersRejoice Member Posts: 817
    It seems to me that if it's this simple to to trick GameSalad into loading faster why can't it just load a certain way to begin with and save us all the trouble?
  • mynameisacemynameisace Hull, UKMember Posts: 2,484
    Because we don't get the pleasure of coming up with creative ways of making things better ;) Haha

    Ace
  • kapserkapser Member Posts: 458
    I'm not sure if this is how GameSalad works, but what this does is change the loading time from when the game loads to when the scene loads, couldn't this create a lag when the scene is loaded?

    Thanks for the video, but having all actors white in the editor looks really annoying so the game really need to be over before doing that.
  • mynameisacemynameisace Hull, UKMember Posts: 2,484
    Nope, doesn't create a lag at all when the scene is loaded, it's instant...

    It is a little annoying but I just navigate via the layers tab.

    Changing them all at the end is a little problem because you have to edit the XML file because it still pre-loads images that were originally there.

    Ace
  • GamersRejoiceGamersRejoice Member Posts: 817
    mynameisace said:
    Nope, doesn't create a lag at all when the scene is loaded, it's instant...

    It is a little annoying but I just navigate via the layers tab.

    Changing them all at the end is a little problem because you have to edit the XML file because it still pre-loads images that were originally there.

    Ace

    So if I have an actor with an image already attached to it. But in the instance of the actor I give it a different image, will it be loading both images or just the newest image I gave it?
  • mynameisacemynameisace Hull, UKMember Posts: 2,484
    I believe it would be loading both the prototype and the instance images, it's a little error in the XML I think.

    Ace
  • GamersRejoiceGamersRejoice Member Posts: 817
    mynameisace said:
    I believe it would be loading both the prototype and the instance images, it's a little error in the XML I think.

    Ace

    Dang! If that's true that would explain my load times!

    What would I need to look for in the xml to know if it is doing this or not?
  • olster1olster1 Member Posts: 396
    mynameisace said:
    I believe it would be loading both the prototype and the instance images, it's a little error in the XML I think.

    Ace
    That would seem about right, seen as my less good solution seems to follow that.

    Ace man, I gotta hand it to you! You hero!
  • PhoticsPhotics Member Posts: 4,172
    outasite said:
    Image Compressor: ImageOptim

    This is a waste of time. GameSalad compresses the images for you.

    You can see the Game Creation Log for BOT to see it's not worth it.
    http://gamesalad.com/forums/topic.php?id=15896&page=6
  • mynameisacemynameisace Hull, UKMember Posts: 2,484
    I've not tried this yet and will do tomorrow, but you could try to delete an image from your project, preview it, save it, restart GS and open up the project then reimport the image and do the change image trick.

    That should sort things out...

    A bit of a pain, but should lower the loading times between scenes.

    WARNING: If you have a big project, you'll probably be one step away from suicide by the time to get to the end, make sure you have Red Bull to hand and hide all sharp objects :)
    olster1 said:
    That would seem about right, seen as my less good solution seems to follow that.

    Ace man, I gotta hand it to you! You hero!

    Lol, the guys at DC Comics went overboard with their heroes, instead of being bitten by radioactive animals, come from the planet Krypton or be a hot chick that can fly, they should have just created the one and only SALAD-MAN who fights for justice, one scene loading second at a time :)

    Ace
  • GamersRejoiceGamersRejoice Member Posts: 817
    I tried to spawn some actors with timer after the scene is loaded and apparently it did nothing. GameSalad must load the actors that are going to be spawned in memory... That's poopy!

    And here I thought I was being creative.
  • GamersRejoiceGamersRejoice Member Posts: 817
    Holy Frack! I just figured out what was causing the huge load times. In my game I have different "skins" for my characters which means I need different animations based on an attribute. So I had them all imbedded within the same actor and apparently GameSalad hates me doing that so I'll have to separate them out. I don't know if that makes any sense but I'm stoked because finding the problem is half the battle.
  • LordTarantorLordTarantor Member, PRO Posts: 890
    @mynameisace
    I think that approach is genius...I am going to try it after my brain comes back... It ran out of my head in panic when I started to watch your video.
  • AppsRacKAppsRacK Member Posts: 346
    Just got back from a month long vacation anyways this is really helpful but just one question.
    @mynameisace
    Does your method reduce the loading time between scenes or the loading time of the game it self upon start? I Think your method works perfect for big images like background and foreground but for small size actors that needs a bit of precision location its a tedious effort to track them when you only see all white.

    Im gonna try this with the new game im making.
  • mynameisacemynameisace Hull, UKMember Posts: 2,484
    It reduces the scene loading times as well as the initial start up time.

    Ace
  • AppsRacKAppsRacK Member Posts: 346
    Thanks for the reply but one thing i also notice is that if use a lot of instances actor (unlock actors), the game file size becomes bigger. My project went from 9 MB to 15MB. Anyone can confirm this?
  • beefy_clyrobeefy_clyro Member Posts: 5,394
    Lets say im 90% done on a game and im having some long load time between scenes;

    1. How do i apply this without re-doing it all?

    2. Is there any way to change an actor, who has already been assigned an image to be blank and then put in the change image attribute?

    3. Does the change image attribute on its own lower times or do you need to have little as possible prototypes? i.e. As im nearly done, to take my game down to 3 or so prototypes would mean virtually re-doing it all. Could it be left as it was but just make all prototypes and instances blank and load the image once the scene has started?

    Cheers
Sign In or Register to comment.