Will this be addressed soon?!

charliehgreencharliehgreen ArizonaMember Posts: 233
Hello,

Before I start I would just like to say that this is not a rant/bash and I love GS.

I find it pretty hard to upgrade to a "Pro" account due to one simple reason, GS can't really handle games without lagging.
I'm not speaking about games with 200-300 actors on the screen at once, I'm talking about simple games.
I find it strange that every game I downloaded and played from other GS members, lag before I even leave the Menu screen.

I played at least 10 - 15 games from us all and I have yet to experience no lag during gameplay (Well, at least some make it pass the minute mark). And it seems like the longer you play, the more you lag (Including my game).

Now I know some will say "it's because of kinks in your code". Which I find kind of strange as well, since GS codes are straight to the point and are suppose to be easy for the user. If that's the case, then the provided behaviors must not be too easy if the majority of GS members experience the lag in their game.

Some might even say "They might have too many actors at once". Which could be possible, but that doesn't explain why the start screen will lag or games with a maximum of 10 actors on the screen at once would lag.

Now again, this is not a rant/bash. This is just a serious question that I would love to be addressed.

I think me and (I forgot his name) kind of found what might be the problem. I've noticed while playing my game with the viewer showing the specs while playing, that the images are building up. For example; when I enter a scene, the images will read, 2.8mb. Which is cool.

Then as I'm destroying actors and having more spawn, the images are stacking. 1 minute later my image stats will read, 12.3mb.

But! once I change to a whole new scene, the image stat will reset. Hmmmm

It seems that when the actors are being destroyed, the images are not really being removed from the scene. Seems like they're just being pushed to the back somewhere until the scene changes.

Comments

  • SingleSparqSingleSparq Member Posts: 1,339
    You fail to mention one important thing. What your playing on. Is it you that's noticing this or others? What hardware version? I expect my games will be slower and lag bound on devices less than iPhone 4 but can't say I have any significant slowdowns on my games worth noting nor have I seen too much mention of this since new devices came out and with the recent updates.
  • AdamgoproAdamgopro Member Posts: 310
    all my G.S games run extremely smooth like singlesparq said it all depends what device you run the game on any device 4s or higher will run most g.s games smooth depending on the developer and how its coded.
  • charliehgreencharliehgreen ArizonaMember Posts: 233
    Gotcha! I'll try on iPhone 5s and see how things run
  • quantumsheepquantumsheep Member Posts: 8,188
    edited October 2013
    It really depends on the developer and their experience.

    For example, I noticed a few years ago that when a sound is played, the game would lag for a split second when it was triggered due to the sound being loaded in.

    An experienced developer would know that you can play all sounds in a scene when it loads with the volume in the behaviour set to 0.

    This loads all the sounds in at once because they're played at the start (but because the volume is 0 it's not heard). Ergo, no lag when they're played again when triggered at the normal volume.

    Other optimisation techniques I personally use include using one unlocked generic prototype actor for many things and recycling enemies/bullets/whatever as opposed to spawning stuff in all the time.

    Another trick is writing 'elegant code' - Some people will need 10 variables checked just to move an object, where others can work out how to do it with two!

    Yet another is to downsize the assets you use. Most of my sounds are mono, not stereo, because (I believe) it uses less memory. Images can be optimised using stuff like imageoptim.

    New or inexperienced users will build up a little library of 'tricks' to help with optimisation too over time, but it will take time.

    While some of the stuff I've mentioned might not be relevant anymore due to improvements within GS, I still use them as 'best practice' techniques.

    The least powerful device I have is a 4S - yet people have told me my games run fine on a 3GS.

    It takes practice is all!

    Hope that helps,

    QS

    EDIT - yet another example I just remembered, sound wise, is this: I needed a sound played to indicate a countdown. Most new users might use 10 different sounds to go from 10 to 1. A more experienced user would use the same sound 10 times, while varying the pitch of just that one sound.

    Dr. Sam Beckett never returned home...
    Twitter: https://twitter.com/Quantum_Sheep
    Web: https://quantumsheep.itch.io

  • charliehgreencharliehgreen ArizonaMember Posts: 233
    edited October 2013
    @quantumsheep Great tips and I use a few of those myself. But that was kind of my whole point. Should we have to trick the system in order to accomplish these things??

    New users won't pick this up as easy and might run away from GS which will suck since
    GS is amazing to use.
  • SingleSparqSingleSparq Member Posts: 1,339
    @quantumsheep Great tips and I use a few of those myself. But that was kind of my whole point. Should we have to trick the system in order to accomplish these things??

    New users won't pick this up as easy and might run away from GS which will suck since
    GS is amazing to use.
    It's the same with any development kit. Even doing just code, there are more than one way of doing things and some ways are much better than others. This is what separates the pros from the others I some ways in any field.
  • quantumsheepquantumsheep Member Posts: 8,188
    edited October 2013
    @quantumsheep Great tips and I use a few of those myself. But that was kind of my whole point. Should we have to trick the system in order to accomplish these things??

    New users won't pick this up as easy and might run away from GS which will suck since
    GS is amazing to use.
    I agree, it'd be fun not to have to worry about all this and just have everything work great!

    I'm afraid though that unless you're making Pong for the PlayStation 4, every SDK you use will need you to work within its limits.

    Another way to look at it - there were some things that professional programmers using a PlayStation 3 couldn't manage to do well, while an Xbox handled these things with no problem.

    As people got used to the PlayStation 3's architecture, these problems were worked around.

    It's also why it's fun to compare first generation games on a platform to the last few games on said platform.

    The latest games on an Xbox are more technically accomplished than those in its launch window.

    People get used to, and more competent with certain systems, and can make awesome stuff as their experience grows.

    It's just the way it is I'm afraid!

    QS

    EDIT - and another more obvious thing I just thought of - Back when it was PlayStation Vs. Sega Saturn, the systems were very different from eachother.
    The original PlayStation was geared towards 3D. The Sega Saturn more towards 2D.
    You could do 2D and 3D on both systems, but each had its strengths/weaknesses in regard to those.

    Dr. Sam Beckett never returned home...
    Twitter: https://twitter.com/Quantum_Sheep
    Web: https://quantumsheep.itch.io

  • SocksSocks London, UK.Member Posts: 12,822
    I'm afraid though that unless you're making Pong . . .
    Damn, I knew I should have hurried up and finished it before someone else had the same idea . . . .
  • quantumsheepquantumsheep Member Posts: 8,188
    I'm afraid though that unless you're making Pong . . .
    Damn, I knew I should have hurried up and finished it before someone else had the same idea . . . .
    Sorry! :D

    Dr. Sam Beckett never returned home...
    Twitter: https://twitter.com/Quantum_Sheep
    Web: https://quantumsheep.itch.io

  • The_Gamesalad_GuruThe_Gamesalad_Guru Member Posts: 9,922
    I agree with quantum most of the lag has to do with bloated code. Since most users fail to have the patience to study and learn to code the end up with stacked code. Sure it works but it's very inefficient. Even with software like GS it can take a minimum of a year to learn how to be a decent coder and years to be a great one. It all depends how much time and study you devote to it. Most people on here do it as a hobby and only have limited time. To really be great at this you have to live and breath it. It took me a year to become a decent coder with GS and that was with a long background in tech and media. If one is starting from scratch with no media and computer background it can be years to get decent. It all depends on what you want out of this.
  • charliehgreencharliehgreen ArizonaMember Posts: 233
    Thanks to all! I have a new question now :)

    So let's say I want to test my game on the iphone 5 now, do I have to re-do the steps for adding the viewer to my iphone 4 or do I just plug in my iphone and go into Xcode?
  • quantumsheepquantumsheep Member Posts: 8,188
    edited October 2013
    As long as your iphone5 is set up for development, and is included in the provisioning profile for the GS viewer, you should be ok.

    QS

    EDIT - it's good practice to test on lower end devices if you can, and to make it work on as many as possible. Moving to using a better spec machine and thinking that solves any issues your game may have isn't a good idea!

    Dr. Sam Beckett never returned home...
    Twitter: https://twitter.com/Quantum_Sheep
    Web: https://quantumsheep.itch.io

Sign In or Register to comment.