Tinimations's Forum Posts

  • jobel Hmm not sure we have the same issue then. This bug refers especially to the music folder. Was the silent audio file placed in the sound or music folder?

    Edit: Tried it. Didn't fix the issue for me, even when I had one silent in both music and sound.

  • jobel Huh... I gotta test that tomorrow! ö_o

  • Problem Description

    So I've lately been encountering issues with audio. Especially on mobile. I'm making a music game, so it's quite devestating to find that the audio clarity and playback speed gets gradually lowered the longer the playsession. This happens on all devices, and all platforms. At first I thought maybe it's inconsistent internet, but I find this happening even on exported NWjs/Cordova projects. I also did tests to ensure that it's not just the fact I'm switching songs around too rapidly causing the issue. This always eventually happens, even if you just play one track, and wait for minutes at a time before changing. I find it seems directly related to amount of times tracks are changed, and processing power.

    This becomes apparent way faster on mobile over PC. On my S7 this becomes a problem already after maybe 20 seconds of tapping. After about 1 minute the music's inaudable. On a beast of a desktop I have to hold in the mouse for maybe up to 2-5 minutes to recreate the issue. Considering I'm targeting mobile though... This is a bug so severe I have to cancel the game if it can't be fixed. <img src="{SMILIES_PATH}/icon_e_sad.gif" alt=":(" title="Sad">

    Attach a Capx

    https://drive.google.com/file/d/0B1n4Fd ... sp=sharing

    Description of Capx

    Includes 4 tracks that gets unloaded, stopped and played at random when in touch every 0.05 seconds. Changing it to 0.1, 0.2, 1, 2 will trigger the same results just take longer.

    Steps to Reproduce Bug

    • Preview on device and browser of choice
    • Hold in touch/left mouse button on given device
    • Notice the audio becoming more jaggy and inaudable as it goes on. Keep doing this long enough and it should turn into nightmare fuel.

    Observed Result

    Audio quality and playback speed gets gradually reduced. Almost as if the unloading or stopping of music doesn't work

    Expected Result

    It should be clean audio till the end of time. The player shouldn't have to reboot the game every 15 minute to enjoy my game.

    Affected Browsers

    • Chrome: (YES)
    • FireFox: (YES)
    • Internet Explorer: (Inconclusive. Audio playback takes so long to start that it would take ages to test on my beefy computer. Sorry...)

    Operating System and Service Pack

    Win 7 SP1

    Construct 2 Version ID

    247

  • Stream goes live at twitch.tv/tinimations in 4 minutes!

  • Hi everyone. Today marks the 1 year anniversary of Klang's launch on Steam! That went by fast! To celebrate I will be doing a completionist stream with live commentary tonight starting 20:00 CET at twitch.tv/tinimations. If anyone's got any questions about the game, how it was made, or just wants to see a master SSS-rank every level with ease. Come say hi!

    On another note. If you haven't picked up Klang yet. It'll go on 75 % sale tonight!!!

    Cheers

    Tinimations

  • Yeah the dependency thing is really bad. This is something Scirra should've worked on their own solution for. Of course it's much to ask they make their own service, but at the very least make it easy to hook up with!

  • Core of KlangM landing slowly but surely. Runs at 60 FPS on my phone!

    NotionGames Digging the look of that!

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • This was an insightful read, and it seems I was right to fear the monetization part of development. Sigh... Does people have the same kind of negative experiences getting microtransactions to work? I'm considering ditching ads due to its invasive nature, but if I can't expect any monetization options to work, I might have to rethink my approach to KlangMs business model.

    Premium won't really fit my game though...

  • > With advanced profiling tools provided by a third party, the APK of my game on avarage only used about 60 % CPU and 50 % GPU. It's able to hold a stable 55-60 FPS if nothing interrupts on my S7.

    >

    would like to know what you use here..I'm having crippling mobile performance, that comes out of nowhere and goes away completely after a few minutes.

    It was an in-house tool at a big software company my brother works at. I can only access it through him unfortunately.

  • If it all came down to parity it would be both a huge relief and dissapointment at the same time. I currently greatly struggle with random, sudden framerate drops on mobile, which can easily be throw into the 40s, never properly managing to recover. I've done a ton of tests to verify I don't create objects that never gets destroyed, or do anything out of the ordinary to cause performance drops. With advanced profiling tools provided by a third party, the APK of my game on avarage only used about 60 % CPU and 50 % GPU. It's able to hold a stable 55-60 FPS if nothing interrupts on my S7.

    While the heaviness of my game might contribute to this, many of these framerate drops feels unexplainable. It doesn't feel like I'm doing anything wrong. If it was parity, it could be explained like that the occational low priority makes the game just heavy enough to chug. (@ashley Testing enough times I saw the same type of framerate drops with high-DPI display off, my game might not be too bloated/GPU bound after all).

    I've also seen pretty insane framerate drops when previewing in chrome on a 970 gtx 32gb ram monster PC, so parity definately sounds like a plausable explanation.

    Just such a shame there's no way to work around it. This reminds me of the garbage collection issues I had for the longest time while developing Klang. Always something...

    I've ported most of my game to Gamemaker so I feel I can speak with some confidence about this. From my observations, Construct builds seem to run about as fast, if not faster than, Gamemaker builds on desktop. C2 definitely outperforms GMS on one of my old laptops, where I get 55-60 fps for the former, and 45-50 fps for the latter. But jank remains an issue. My C2 builds may outperform my GMS builds on slow computers but GMS never does the tug-and-jerk screen update thing. Never ever. It runs smooth or it doesn't. Consistently.

    In my opinion, this is a pretty big deal and I urge Scirra to really look into it, not just hand-wave it away whenever the subject comes up. I won't go back to Construct for several reasons so it doesn't affect me either way, but it's a shame for an otherwise great product to be held back by these sorts of things.

    This too summarizes pretty well how I feel. I'm very close myself to abandoning Construct because of this. After 3+ years of learning and excercising optimization tricks, I still can't feel confident that my game will run hard locked at a given framerate. This is soul crushing when making action packed music games that can't miss a beat.

  • So I like to think I'm very familiar with the C2 event search bar, however I've never been able to figure out how to make it look up the destroy action of a specific object. For instance when I'm looking for objects created I often write "t object" and it works fine, but I can't for the life of me figure out how to make it find "object destroy". Is there some trick to this?

    Thanks

  • Ashley By sharpening I mean the added clarity and crispness by enabling High-DPI/High quality fullscreen mode. It has to force a lot more calculations in order to make the most out of each object right? Am I misunderstanding how it works? I know better than to use expensive effects for this by now.

    To explain a bit further. Let's say I have 30 objects being rendered, does the High-DPI/High Quality fullscreen individually look at all these 30 objects, calculate the best way to present the given asset, then draw each one individually? Or is it much simpler, where there's no extra calculations applied, but simply makes more of the pixels available in the canvas?

    I made some more tests today. The scene was at 900 objects, but I got it down to about 250 without much visual changes or fill rate. One of the changes I did was to remove about 150 instances of an object, and replaced it with a one-shot particle with infinite timeout. Only one object, but looks roughly the same. It runs a lot smoother on mobile now. Reducing the object count seems to have worked. I'm just trying to figure out why it works. Only thing that currently makes sense to me is that the amount of objects drawn is more important than how many pixels drawn?

  • Ashley Yes I already use low-quality on mobile. I also work on mobile as the primary target platform. I'm simply trying the waters with how far I can push the engine to get the most cost efficient visual fidelity out of it. I don't use force own layer textures. To clarify, I wasn't implying that the draw calls themselves causes the slowdown, but rather that the rendering struggles when it has to sharpen so many individual objects?

  • Ashley Yes that sounds about right. That still doesn't change the fact that I find the framerate being overall way more stable and hardlocked at 60 FPS when the high-dpi is off. When on it's extremely inconsistent. Sometimes it's rock solid 60, other times it hits a snag that drags it permanently down to the 45 range, other times there's small noticable jags etc. This is very frustrating when I don't know exactly what's causing it. If I could track it down to an individual part of my game I could optimize/work around it.

    For instance my current theory is that my new approach to avoiding download size is the culprit. I've based the art style on relying on batching lots of single colors tiles over the screen. It looks clean, scales well, takes no download size, but a ton of draw calls. While the batching seems to handle this really well, I worry that the high-res algorithm wasn't optimized for this, and ends up slowing it down when enabled? Thing is I can't properly verify this theory, and deleting all the assets doesn't isolate the problem enough. There could be other factors affected when I delete all the assets.

    I find myself losing a lot of valuable dev time on just worrying over performance. You mentioned something about chrome having a more advanced profiling tool. Any info on how to use it?

    Thanks

  • Hi. I've found that the most major performance hike for KlangM can be tracked down to the high-DPI display option. However I feel very conflicted turning it off, since it makes the main character look really, really blurry. 99 % of the other assets looks fine though. I do find it very regretable that I can't toggle this feature on and off during runtime, and that I can't chose which layers or objects to exclusively apply it to?

    Is it possible in any way to implement this in the future? If I could apply the high-DPI only to a certain family or layer I would get the best of both worlds, making me much more comfortable moving forward on mobile. This would also allow for saving resources on background assets that really doesn't need the sharpness in order to serve its purpose.