Critical Gamesalad Additions

2»

Comments

  • CodeMonkeyCodeMonkey Head Chef, Member, PRO Posts: 1,803
    edited April 2013

    You can't keep pumping out new features.
    There are some low hanging features that will help reduce the amount of behaviors needed, which is something that causes slowdown in load time.
    e.g. joints would help because you wouldn't need all the constrain attribute behaviors and the game attributes.

    That being said, try not to have hundreds and hundreds of game attributes if you can help it.

    Custom fonts too. It would reduce the number of actors needed and equal number of constrains they need to change their image.
  • BBEnkBBEnk Member Posts: 1,764

    You can't keep pumping out new features.
    There are some low hanging features that will help reduce the amount of behaviors needed, which is something that causes slowdown in load time.
    e.g. joints would help because you wouldn't need all the constrain attribute behaviors and the game attributes.

    That being said, try not to have hundreds and hundreds of game attributes if you can help it.

    Custom fonts too. It would reduce the number of actors needed and equal number of constrains they need to change their image.
    My current game I've been working on for around a year a Mario type game has constraints and attributes all over the place creating collision area and joints so in the end.

    We are at your mercy when it comes to the things we need the most.

  • CodeWizardCodeWizard Inactive, Chef Emeritus Posts: 1,143
    I love these threads! Rest assured I'm noting them for follow up.

    Some interesting information on load times. After some profiling, it looks like sound and texture loading are being performed in a pretty suboptimal way. I think we should be able to realize some pretty major improvements for games that are loading lots of sounds and art (uh, like all games?) No promises, but it sure looks like we might be able to shave 60% off the load times for sounds & textures if we play our cards right.

    More info soon, and keep dumping this kind of thing out here so I can note it all! :D
  • iamcarteziamcartez Houston, TexasMember Posts: 648
    Multiplayer sounds great. I didn't know what joints were until reading and I would love to use joints for my next game!
  • The_Gamesalad_GuruThe_Gamesalad_Guru Member Posts: 9,922
    edited April 2013
    Great! @codewizard. This is what I notice from the viewer data feed is that sounds are all loaded at once and then never flushed. My project has a total of 8mb of sound most of which I had to down sample to 22k and on one scene with the most sounds the usage was 31mb. Maybe you could shed some light as to why 8mbs of sound need 31mb of resources?
  • SocksSocks London, UK.Member Posts: 12,822
    I love these threads! Rest assured I'm noting them for follow up.

    Some interesting information on load times. After some profiling, it looks like sound and texture loading are being performed in a pretty suboptimal way. I think we should be able to realize some pretty major improvements for games that are loading lots of sounds and art (uh, like all games?) No promises, but it sure looks like we might be able to shave 60% off the load times for sounds & textures if we play our cards right.

    More info soon, and keep dumping this kind of thing out here so I can note it all! :D

    @CodeWizard

    Sounds excellent ! :)>-
  • SocksSocks London, UK.Member Posts: 12,822
    @CodeMonkey
    Custom fonts too. It would reduce the number of actors needed and equal number of constrains they need to change their image.
    Custom fonts would be super cool, depending on how you implement them I'd guess we be able to import fonts we've generated ourselves (in Fontlab / Typetool etc) ? If so this would open up a few other pretty useful possibilities !
    That being said, try not to have hundreds and hundreds of game attributes if you can help it.
    What ? Even in my game 'AttrbiuteWars™' ?
    [Subtitle: battle for RAM with hundreds of attributes in a fight to the death, available for iOS and Android].
  • Braydon_SFXBraydon_SFX Member, Sous Chef, Bowlboy Sidekick Posts: 9,273
    I love these threads! Rest assured I'm noting them for follow up.

    Some interesting information on load times. After some profiling, it looks like sound and texture loading are being performed in a pretty suboptimal way. I think we should be able to realize some pretty major improvements for games that are loading lots of sounds and art (uh, like all games?) No promises, but it sure looks like we might be able to shave 60% off the load times for sounds & textures if we play our cards right.

    More info soon, and keep dumping this kind of thing out here so I can note it all! :D
    Loving it!
    ^:)^
  • CodeWizardCodeWizard Inactive, Chef Emeritus Posts: 1,143
    edited April 2013
    @FryingBaconStudios
    I can shed some light on the discrepancy between 8mb of sounds on disk and 31mb in RAM (who knew, right?)

    So, your sound effects are likely ogg (correct me if I'm wrong). Ogg is a neat open license audio compression algorithm. It compresses your sounds about 4:1. Which is awesome. Problem is that playing compressed ogg is more complicated and slower than playing raw samples on the device.

    The engine handles this by decompressing ogg sounds when loaded. So, ~8mb becomes ~32mb because of the 4:1 compression ratio. From my initial investigations all sounds seem to be decompressed to a high fidelity buffer (i.e. 44k). I'll need to look into that more.

    Interestingly enough, this is precisely why sound loading is slower than desired. The decompression is expensive!

    The fix for this is to massage your ogg files into suitable raw formats that actually correspond to your chosen frequency and bitdepth. Much faster loading and smaller footprint in memory.
  • SnapFireStudiosSnapFireStudios Member Posts: 1,603
    @Socks / @CodeMonkey - I would say make the distance between nested rules and their parent's on the left hand side smaller. Then you get the best of both ways.
    - Thomas
  • RPRP Member Posts: 1,990
    awesome
  • entersimonentersimon Member, PRO Posts: 273
    iCloud support would be really awesome now that we have Universal Binaries. It's great for games that require a lot of grinding. It sucks having to start over on your game because you decided to upgrade your iPhone/iPad.

    Before that though I would reallllllly like it if the blurry icon issue would be resolved. The icon coming out of Universal Binary builds as seen on a retina iPad is quite blurry when compared to the icon coming out of iPad only builds on the same iPad. Here is a picture for reference:

    image

    On the left is a screenshot of the icon that came out of the universal build and on the right is the iPad only build icon.

    I submitted this to support a while back and mentioned it on the forums before that. These screens were created moments ago, so the problem is still here.
  • The_Gamesalad_GuruThe_Gamesalad_Guru Member Posts: 9,922
    edited April 2013
    @codewizard that's awesome so do the reverse of what you think makes it smaller. So another question why ogg and not mp3 or mpeg4? As a sound engineer I hate mp3 and ogg and would like to use higher samples. The thing is GS changes them to ogg on import as I always import aiff files so there are more bits on the dithering down. Can I just go into the sound folder and change the files out to aiff with the same file name?
  • CodeWizardCodeWizard Inactive, Chef Emeritus Posts: 1,143
    @FryingBaconStudios
    Pretty sure just renaming files won't work. We're getting a coder on fixing this problem as soon as possible. It'll be a big win on load times and memory size. My preference is to allow you to use WAV files with various formats supported. We should save "mp3" and "ogg" for music files IMO.

    I'm pretty sure we don't use mp3 because of licensing issues with that codec.

    Will have more details for next week's status post.
  • The_Gamesalad_GuruThe_Gamesalad_Guru Member Posts: 9,922
    edited April 2013
    Wow dude you rock! I didn't expect an answer that fast! Hey as long as we have a good sample rate and it saves on active mb I'm all for whatever you think is best. How about ACC since it's standardised by the ISO and IEC do you guys need a license for that codec and since it's part of the Mpeg-4 standard this might prove useful for down the road adding the ability to play video in GS.
  • CodeWizardCodeWizard Inactive, Chef Emeritus Posts: 1,143
    @entersimon
    Made a note of that issue. Will make sure it gets looked at.
  • The_Gamesalad_GuruThe_Gamesalad_Guru Member Posts: 9,922
    The only reason I mention ACC is because Apple's audio programs GarageBand and Logic Pro do not natively export WAV as that codec is not in Apple's supplied codecs. So for Mac users we would have to convert all our audio files. It would be nice if Creator didn't do anything to the files like it does now and let us compress our files and set the bit rate as we like.
  • RPRP Member Posts: 1,990
    edited April 2013
    @CodeWizard
    I'm just stoked that we (FBS and I) got this sound load issue licked (via your 411). We have a ton of sounds in our current game and plan on having more added in updates via IAP. It would have been a ongoing problem, or potential performance and stability threat. Thanks for digging into that and giving us a solution!
Sign In or Register to comment.