beefy_clyro said: 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
This is not my topic, and my idea, and I'm sure that Ace will be able to answer your questions much better, but I just want to help you with the first two questions: 1. You have to change every single actor and instance, there is no faster way. 2. Yes, it is. When you open your actor, or instance, there is a text attribute "Image" on the left, there will be something like that: xxx.png. Just click this, and then click Delete on your keyboard.
Unfortunately, I can answer your answer lol... Bad news I'm afraid. The least amount of prototypes you have, the better, but I would first test your game with just the change image trick, that might get your loading times down enough without having to cut down on prototypes.
I dont have a huge amount of prototypes as is and testing on my 3gs, scene changes from level to level clocks in at up to 2 seconds max (usually 1 second) which feels fine. However, its going from the main menu to the level select which is taking about 6 seconds!!! This feels too long and i would like to get that down. It is loading a good 130 odd actors for this mind you but i'll try the change image trick and see if that shaves any off!
GamersRejoice said: 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.
You should explain more, because this might help people.
Are you saying all your skins were in one actor, and now you are separating your skins out in to several actors?
GamersRejoice said: 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.
So spawning in actors after loading doesn't help with reducing load times? That's a bummer since a lot of my actors are off screen to start.
I kept thinking about this approach and how genius it is but not being able to see the actors in the game is to confusing. Well I think I figure it out. When we make the actor we don't add an image to it. We will add the image to the actors on the scenes. So in the left side where the actor prototype are, all of them are white, without an image but their instances on the scene they do have their image. Finish the game make sure it runs like you want and then when you get ready to send it to apple go to every actor on every scene and revert to prototype their images. This might take a long time but a I think it is a small sacrifice for better performance. Thanks mynameisace for complicating my live even more...
Metronome49 said: You should explain more, because this might help people.
Are you saying all your skins were in one actor, and now you are separating your skins out in to several actors?
Exactly so I had one actor with 6 different animations but only need to use 1 at a time. So I pulled them out and am making different actors for each animation cycle, this way it's only loading the one animation.
LordTarantor said: I kept thinking about this approach and how genius it is but not being able to see the actors in the game is to confusing. Well I think I figure it out. When we make the actor we don't add an image to it. We will add the image to the actors on the scenes. So in the left side where the actor prototype are, all of them are white, without an image but their instances on the scene they do have their image. Finish the game make sure it runs like you want and then when you get ready to send it to apple go to every actor on every scene and revert to prototype their images. This might take a long time but a I think it is a small sacrifice for better performance. Thanks mynameisace for complicating my live even more...
You could always color code your instances to help differentiate.
I'm really happy to see so much participation in this thread. I guess that's mostly due to Ace.
TheMoonwalls said: This is not my topic, and my idea, and I'm sure that Ace will be able to answer your questions much better, but I just want to help you with the first two questions: 1. You have to change every single actor and instance, there is no faster way. 2. Yes, it is. When you open your actor, or instance, there is a text attribute "Image" on the left, there will be something like that: xxx.png. Just click this, and then click Delete on your keyboard.
Hope that helps!
Cheers!
2. When i go into my actor, prototype or instance, the part where it says the image is greyed out! I cant click on it and delete it! any other way of stripping the image?
I've been following this thread as I'm in serious need of lowering my load times.
I have a character select screen that needs a lot of help. Imagine a room that gradually fills with characters over the course of the game. You unlock them as you progress through the game. At its worst, there are 9 characters on the screen, and each one brings with it a number of animation frames. So its quite the hog.
I first tried the method of having an empty actor that spawns the real actors in. I was surprised to see this didn't change anything. I see now after continuing to read the thread that this isn't working for anyone.
I can't use the change image trick, because my actors are made up of animations rather than just a single image.
This is especially frustrating because all but 1 of these actors don't even load at the beginning of the game. So it should be a lightning fast load.
There must be some way for me to keep GS from loading all of those frames when the actor doesn't even exist. (I'm literally not even telling it to spawn unless certain conditions are met)
If there is any further advice, it would be much appreciated. Thanks.
Did you ever have any success separating out your actors?
It seems to me that if there is any reference to an actor whatsoever in your scene, GS will load all of those images. I have a level in my game, and the actor spawns one of 9 selected characters at the beginning. I'm now realizing that its loading ALL of those images, even though they never show up in the game at all. There must be a good way around this. The only way I can think of right now is creating 9 separate scenes for the same level, each one loading its own unique character. Not ideal of course.
The more I look into this the more I realize how crippling this whole situation is for my game. Help friends!
Comments
1. You have to change every single actor and instance, there is no faster way.
2. Yes, it is. When you open your actor, or instance, there is a text attribute "Image" on the left, there will be something like that: xxx.png. Just click this, and then click Delete on your keyboard.
Hope that helps!
Cheers!
Ace, care to share a little more info on this, particulary question 3? Would be great if that is still likely to cut down load times a bit.
Ace
Cheers
Are you saying all your skins were in one actor, and now you are separating your skins out in to several actors?
This might take a long time but a I think it is a small sacrifice for better performance.
Thanks mynameisace for complicating my live even more...
I'm really happy to see so much participation in this thread. I guess that's mostly due to Ace.
But I have had a headache since last night cause i've been going GS crazy.
So in a nut shel. Have limited prototypes and just copy them on the scene and resize and edit them to reduce the number of prototypes.
This will reduce all loading times?
I've been following this thread as I'm in serious need of lowering my load times.
I have a character select screen that needs a lot of help. Imagine a room that gradually fills with characters over the course of the game. You unlock them as you progress through the game. At its worst, there are 9 characters on the screen, and each one brings with it a number of animation frames. So its quite the hog.
I first tried the method of having an empty actor that spawns the real actors in. I was surprised to see this didn't change anything. I see now after continuing to read the thread that this isn't working for anyone.
I can't use the change image trick, because my actors are made up of animations rather than just a single image.
This is especially frustrating because all but 1 of these actors don't even load at the beginning of the game. So it should be a lightning fast load.
There must be some way for me to keep GS from loading all of those frames when the actor doesn't even exist. (I'm literally not even telling it to spawn unless certain conditions are met)
If there is any further advice, it would be much appreciated. Thanks.
Did you ever have any success separating out your actors?
It seems to me that if there is any reference to an actor whatsoever in your scene, GS will load all of those images. I have a level in my game, and the actor spawns one of 9 selected characters at the beginning. I'm now realizing that its loading ALL of those images, even though they never show up in the game at all. There must be a good way around this. The only way I can think of right now is creating 9 separate scenes for the same level, each one loading its own unique character. Not ideal of course.
The more I look into this the more I realize how crippling this whole situation is for my game. Help friends!