suphexandroid

Finally, a Super Hexagon on Android update!

So, first of all, this post is 90% good news! Super Hexagon on Android is basically done. It’s been basically done for a while, in fact – we sent out beta test copies before Christmas. (We being myself and the coder who’s handling the android port, Laurence Muller of EpicWindmill.)

That testing session revealed a couple of bugs – most weren’t too serious and were quickly fixed, but one was more complicated. Since it became clear we weren’t going to sort it out in time for Christmas, we took a break and only resumed work on it again a few days ago.

The bug is an input lag issue. It appears to be limited to the Nexus 7 tablet, but we’re not sure, it may be more widespread. I’ll let Laurence explain:

To test for the input latency we used the app “Multi-touch Benchmark Test” on 3 test devices:
– Nexus One
– HTC Desire S
– Nexus 7

The idea would be that we would touch 2 devices at the same time and compare the relative latency. I’ve recorded a video of this test here (fullspeed).

To make it even more evident, I converted the video that I recorded at 60 fps and slowed it down by 50%:

If you look closely at the video, you see that the Nexus 7 seems to delay touch events in general. Touch down/up are noticeably showing delays compared to the HTC Desire S.

Figuring out that this was happening has been driving us crazy. It may not look like much in the above video (which is running at 50% speed), but even a slight control responsiveness issue like this basically kills Super Hexagon – every single touch overshoots, making the higher levels unplayable. Earlier levels are playable, but it constantly feels “off”. As far as I’m concerned, it’s unreleasable this way.

HOWEVER, as I happen to own a Nexus 7, I was originally under the impression that this bug affected all Android devices – and that appears to not be the case. The hold up was that I was getting Laurence to investigate and try to fix this “bug”, when evidently it’s actually a hardware fault with one specific android model.

So! Our next step is do so some more testing, and figure out if other devices are affected. (We’re pretty sure it’s not actually a problem for 99% of android devices out there.) After that, we’ll be looking to release the game very soon for any android device that can handle it (which excludes the Nexus 7, sorry)! Thank you for your patience 🙂

66 thoughts on “The hold up”
  1. crap i just got a nexus 7 for christmas.

    guess I’ll just have to live with the steam version. Nothing wrong with that.

  2. I’ve been checking the Play store every day since you announced the Android version, and lately took to both following you on Twitter AND checking the blog for news. Needless to say (but I’m gonna say it anyway) I’m very much looking forward to this…

    …but the only Android machine I have is the Nexus 7. Damn.

  3. of course the only android device I have is the n7, too… I’ve been seriously waiting for this to come out as I’d really like to play this on a screen larger than my iPhone… the steam version just isn’t the same.

  4. Same here… the Nexus 7 is my only Android device :(. It’s really strange that there is an input lag issue because I haven’t noticed it in any other apps or anything

  5. It’s certainly not a massive input lag – I’d never noticed it during the development of my last game, which needed reasonably precise controls.

    Running that multitouch benchmark app, the delay doesn’t seem noticable at normal speed just tapping the screen – but if you drag your finger around, the reported position does clearly lag behind – I’d guesstimate that it’s about 2-4 60Hz frames behind? (Haven’t compared it to any other devices yet, though)

    So yeah, probably not noticable for most games, but Super Hexagon certainly requires rather more precise controls than your average mobile game!

  6. There is also serious input lag with the steam version with vsync enabled, as there is for most games running vsync with the fps locked down to 60. My solution has been to limit the framerate to 59fps instead of 60 using a program such as dxtory (msi afterburner works as well. This lets me keep vsync enabled (no tearing!) while having no discernible input lag.

    Terry, on android is it possible to limit the framerate to 1 frame lower than the vsync’ed framerate?

  7. PC games with vsync can be terrible for input lag. It’s caused by graphics drivers buffering up more than a frame of commands (drawing them up to several frames behind the CPU).

    If you’re writing a game using D3D, there’s a function which should theoretically help:

    IDirect3DDevice9Ex::SetMaximumFrameLatency

  8. I also ran the ‘Multi-touch Benchmark Test’ app on both my Nexus 7 & Nexus 4. My response times for both are pretty much identical and much better than the video Terry posted of his Nexus 7. I wonder if he just has a bad Nexus 7.

  9. Cide: The video is slowed down to demonstrate the problem – although it’s not visually very apparent at full speed, it is very noticeable when you play.

  10. Wow, everyone has Nexus 7 nowadays…
    Anyway, hope to hear if the issues are present on Galaxy S II or not. Wanna get my brother into this game 😀

  11. Any idea if the problem is hardware- or software-related? My thinking is that a lot of N7 owners use custom roms (Cyanogenmod, AOKP, etc) that are often more optimized.

    Happy to help test different devices if it helps. I have quite a few (Nexus 4 is my main device).

  12. I have been waiting for this game on Android, ever since Terry announced it. I run AOKP 4.2.1 on my Galaxy Nexus, and have tweaked everything about my device to be optimized for gaming. Throw in my MOGA bluetooth controller mount, and I am ready for this!

  13. I almost bought an iphone today just to play this game but with this newsupdate i feel that i can wait… 🙂 im glad that i dont have a nexus. Hopefully it will work on a galaxy note 10.1 and SE arc S.

  14. Can you just release the game for on the play store and put a disclaimer to users of the nexus 7? I have been waiting for this game on android for weeks. Checking the store every day for this game is not fun, especially knowing it would work perfectly fine on my phone!!!

  15. Can we please get an estimation on “very soon”? I am using a nexus 4 phone and have been checking the google play apps store every day for a month (since my friend with an iphone told me about this game). I have only gotten to play it using his phone and the few times i played it i got hooked.

    Can “very soon” please be like tomorrow? Or like by the end of this week?

  16. Are you running jellybean the Nexus7 and on the other phones? “Project butter” was added in Jellybean and effects how input events are given to the application… Possibly that could be having an effect?

  17. you raised my hopes then dashed them quite brilliantly….well played sir 😛

    although its not your fault, although is it something you guys are going to look at and try and work around, is it even possible to create a work around for this?

    just after playing the steam ver. i kinda felt this game woulda been brilliant bathroom material on my tablet 😛

    and unfortunately my phone is a windows phone :/

  18. I have a Nexus 4. If the problem is with stock 4.2, then theoretically that device should be affected also. I’d like to know if that’s the case before I buy it when it releases. Thanks!

  19. Every day I’ve looked at Google Play to see if this was out on Android yet. I, for one, cannot wait to play this game.

  20. Finally! I’ve been waiting for your news about Hexagon for android. I’m really enjoying the PC version right now, and I can’t wait to play it on my Galaxy note. I hope that kind of bugs does not appear on my phone. Keep up the good work!

  21. Does the lag still show up using the developer options touch tests?
    Go to Developer options -> Pointer Location and Show Touches and check those.
    If you still get lag, then the Nexus 7 is fundamentally flawed. Otherwise it’s something in your code.

  22. Cide: Thanks for the tips! Something always felt slightly off in the game to me, and now I know what it was! I disabled vsync and immediately noticed the much faster response time (at the cost of much tearing) and got new records on both levels 3 and 5. I then installed Dxtory, limited the refresh rate to 59 Hz, and re-enabled vsync. End result: pretty graphics and good response times (even though I don’t fully understand why this works)! Thanks a lot! I’ll recommend this to my friend, too.

  23. Dude please don’t put the N7 on the blacklist.
    I’ve been waiting so long and was especially excited since you’ve shown it running on a N7 already. The lagg isn’t going to ruin any highscores, so just put up a disclaimer as someone else already mentioned.

  24. Hey Terry! I have been anticipating this for a long time. I too have a nexus 7 only though….

    I don’t know much about these things, and I don’t want to sound like a git, but is it possible that it’s YOUR specific Nexus 7? Or have you tried it on others. I’ve had to send a couple back for various slowdown.

    Just curious, thanks for making this!

  25. Thank god I don’t have N7… I hope my Galaxy Note 1 can run this game without any bugs or glitchs. I hope I can play this awsome game on my cellphone before the end of this Jan. That’s all I want:)

  26. If you need testers, i have a galaxy s2 and a galaxy tab 2. I finished super hexagon on my friend’s iphone. I can’t wait the android release!

  27. Hi, Is the Nexus 7 input lag issue anything to do with Google Currents. I’ve read that disabling background syncing with Google Currents improves performance in Jelly Bean 4.2 so this is not (hopefully) a hardware issue. In the meantime, I’m eagerly awaiting the release of Super Hexagon for the Galaxy S3 and have been religiously checking Google Play since well before Christmas. I used to play it on my iPod Touch 4th Gen (since October) which seemed to be faster than my iPad 4 64GB. Martyn

  28. Huh, that’s odd. I often play BIT.TRIP BEAT – another difficult, high speed game that requires precision in order to pass. I haven’t noticed any input lag on that one, or certainly not enough to cause me to fail. It’s not a fault with the specific unit, is it?

    Eh, I’m not the one coding games, what do I know? xD I really, really hope you can discover a fix for this device. I would love to be able to play this on the go (and in doing so ruin any chance I have of passing my degree oh god what am i doing with my life)

  29. Are bluetooth/USB-OTG keyboard/mice going to be supported for controlling the game? Or HID-compatible USB controllers (Xbox ones for example)? It would be GREAT if they are! 🙂

  30. Can’t help but notice the on-screen menu button on the N7 there. You do know there’s a difference between in Android between the targeted SDK (what you compile against) and the minimum SDK (how far back an app is backwards compatible), right? General good practice in Android development is to always set the target to the newest SDK and let min SDK handle all the rest of the work.

  31. I just checked my Nexus 7 out, I’m not noticing any touch lag, I’d say it’s probably a problem with your specific tablet, either that or the problem only affects some Nexus 7’s.

  32. Guys, this is not just a problem with my specific tablet. Both Laurence and I have Nexus 7 tablets, and they both exhibit this problem.

    I really, really wish this was just a software issue that we could fix, but Laurence assures me that it isn’t, and he’s the expert so I’m taking his word on it.

  33. Please release super hexagon on the play store soon! I have been checking your blog at least four times a day for updates on when it’s going to be out. I can’t wait to play on my phone!

    Is it possible to release it and just put a disclaimer up for nexus 7 users?

  34. I don’t have a Desire S to test on, but if that’s true, then I won’t be releasing the game on the Desire S either. I refuse to release a substandard version of the game, end of story.

  35. I suppose it’s because of all the syncing and stuff that the phone is doing in the background. You’ll run into this issue on a large number of devices though… The nexus just has the necessary power to keep SH running smoothly

  36. I’ve been playing the steam version waiting for android release. Since its came out I’ve had to buy it for about 6 friends who refused to buy it themselves (cheap b*******). Really looking forward to the android release. Then I can rage at the game 24/7!

    I’ve got a Galaxy S3 rooted and would love to test (and cry) at the beta.

  37. I’ve got a Galaxy S3 and Galaxy Note 10.1, in case you need some testing or something.

    Also, I’ve checked the Play Store every two hours or so from the last three days, please please release it asap! 🙂

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.