• Hello [name]! Thanks for joining the GMC. Before making any posts in the Tech Support forum, can we suggest you read the forum rules? These are simple guidelines that we ask you to follow so that you can get the best help possible for your issue.

iOS iOS Problem with touch delay on the bottom of the screen

Tornado

Member
Hi!

I discovered another potential bug with virtual keys on iOS.
I have two virtual keys on the screen.
Part of them is in the room, but part is outside of the room in the black areas. (See the screenshot)
You will also see some red lines by VK areas. With them I approximatelly marked the height of the VK which does not respond to touch (keydown) when you put the finger on the screen.
In order for VK to register keydown, you have to start dragging your finger. Then keydown is recognized.
This happens only at this small portion of the virtual key area. If you touch VK area somewhere else it will imediatelly respond to the touch.

Can someone please try and confirm that it also happens on your iPhone/iPad ?

Here is the link to the test project:
https://www.dropbox.com/s/g1naf5bgfknj0bb/Problem_VK_KeyDown_iOS.zip?dl=0

I'm using latest BETA IDE v2.2.2.401 and runtime v2.2.2.314.
THX!

Problem_VK_KeyDown_iOS.jpg
 
Last edited:
N

NetoX

Guest
N

NetoX

Guest
Ok.. its a delay and not a deadzone, tested with Iphone 7 regular, IOS 12
 

Tornado

Member
Yes it's a delay! I looked at other games and applications, they don't have this problem! They can use the whole screen without problems.
But apparently GMS is not handling this proper way.
We want to release our game soon, but with this issue it is not possible to play on iOS devices which have that delay!
 

Plura

Member
I have the same issue on my iPhone 6s. My game buttons don't react as they should near the bottom of the screen. If I touch and hold one finger at the edge of the screen the button will react after 1 second or so.
If I apply two finger touches then it works.
My conclusion: One finger touch has a huge delay but two finger touches are fine.
I test many iOS aps and they don't have any isues near the edges. You can try the TestMultiTouch app made in Unity and there is no issue with the edges.
Yoyo needs to take this issue seriously and fix this ASAP.
 

Plura

Member
Actually, this does not have anything to do with virtual keys, any mouse press does not properly respond near the edges.
 

Dan

GameMaker Staff
GameMaker Dev.
Sorry, guys, but we're just not seeing this issue using Beta IDE v2.2.2.401 with Beta Runtime v2.2.2.314. The sample project in the first message does not have the vkeys positioned at the top/bottom edges of the screen, so it's not a suitable test project - you can absolutely put your finger in a place where the vkey is not being touched at all, yet the debug text in the middle updates correctly to show there is no lag, etc..

We extended the project to use fullscreen in game options as a quick test of just moving the vkeys to the actual edges of the devices, and we added vkeys to the left/right edges also, just to be sure. Please try this extended version of the test project on your devices in Beta IDE v2.2.2.401 Beta Runtime v2.2.2.314 and confirm the issue does not exist.

Note that if you're using an iPhone X you will need to enable the Game Option to delay the home bar stealing your input, otherwise your touch isn't going to work. Feel free to try turning this on in your own projects and see if this cures the issue for you, but if it does, that's the behaviour for iOS 11 and above and we can't change this. You would just want to leave the option turned on. (Note that since the launch of the iPhone X Apple's guidelines have been that your game does not use the space in line with the notch or in-line/below the home bar indicator anyway - us game devs just tend to ignore the guideline as we want proper full screen, damnit!)

It's possible 2.2.1 might have an issue (we thought we had fixed this earlier than 2.2.1, but perhaps not), so don't confirm using that. However, the 2.2.2 beta does not reproduce any such issue on a variety of iPhones we just tested with.
 

Plura

Member
Hi Dan,
I just tested your extended version. I get the same issue as before.
I will record a video clip and post it here so everyone can see what the real problem is.
 

Tornado

Member
Thank you very much, this is the exact proof of that what I was talking about!!!
Exactly that happens on my iPhone SE with the test project and with my real game which have controls near screen bottom and screen top.

I hope tomorrow I'll have macbook again and I will start Dan's test app on my iPhone SE and film it like you did.
 
N

NetoX

Guest
I dont have all devices to test, so I tested my game using IPAD 2 and IPhone X, works fine, for my suprise I got a lot of bad ratings in the itunes store, all talking about the controls. So I tested using the Iphone 7 regular(not plus) and gotcha!!! I reproduced the problem. I am very sad, I work hard to try make a very polished game. Tonitgh I will test the beta IDE, if not works, I will need create I multitouch function to handle this manually.
 
N

NetoX

Guest
Here is the video link.
The touch at the bottom works only if I apply two fingers on the screen.
With one touch i does not work correctly, it has a delay around 1 second.
You are correct, using two fingers its not possible use the "option overlay" with the gesture, then the Virtuak Keys works fine.
 
D

deni

Guest
Here is the video link.
The touch at the bottom works only if I apply two fingers on the screen.
With one touch i does not work correctly, it has a delay around 1 second.
yeah, exactly that happens and its a big problem for game im working on, it totally messes up players controls! Please fix this as soon as possible!
On emulator demos work fine I'd say, problem is on real devices!
 
Last edited by a moderator:

Dan

GameMaker Staff
GameMaker Dev.
Here is the video link.
The touch at the bottom works only if I apply two fingers on the screen.
With one touch i does not work correctly, it has a delay around 1 second.
Thank you for making that - just to confirm, the game shown in that video was built using Beta IDE v2.2.2.401 and Beta Runtime v2.2.2.314, yes?
 

Plura

Member
Hi Dan,
thank you very much for your fast response.
Yes it was build with v2.2.2.401 and Beta Runtime v2.2.2.314. I use Windows IDE to build remote on my iMac. It was compiled with VM compiler.
 

Tornado

Member
@Dan

I made a new better test app, it resizes to the screen dimensions. (see attached screenshot)

Here is the video of iPhone SE iOS 11.2.5. It shows the problem that the screen area near the edge of the screen is not immediately reacting to touches:
https://www.dropbox.com/s/e82qx9ort58i9rv/iPhoneSE_iOS_11_2_5_problem.mp4?dl=0
Actually it is pretty big area!

Here is video of iPhone5 iOS 10.3.3, is no problem there:
https://www.dropbox.com/s/kqs2tnqxrira2oi/iPhone5_iOS_10_3_3_no_problem.mp4?dl=0

Here is the test project:
https://www.dropbox.com/s/vp3gf2wr01pcr9p/TouchExample.zip?dl=0

I'm using GMS2 Beta IDE v2.2.2.401, Beta Runtime v2.2.2.314 and xCode 10.1.
 

Attachments

Last edited:

Plura

Member
I think that many developers are not aware of this bug. It could effect many iOS games made in GMS who have controls near screen edges.
We can not release our game until this bug is fixed. We don't want bad gaming experience reputation.

I'm sending an appeal to Yoyo games to take this seriously. We are a 4 member team who works very hard on our game. Seeing this bug ticket marked as low priority makes us very worried.
We provided a clearly evidence that there is a bug which effects so many iPhones from SE to probably iPhone 8.
It does not deserve low priority status.
 

Plura

Member
I got this from Yoyo:

Hello,

Using your sample provided on all of the devices except the SE one listed and this works as expected, clicking the button and it shows the text with no delay or double touch required.

This ties in with the bug report which I've added in that this issue simply cannot be reproduced on our end.

Apple have fixed issues with SE devices in the past having touch problems as seen in the link to the Apple help forum on the bug report so it's potentially that your device is on an older version on iOS and needs to be updated.

Due to this I'll close this ticket and any further communication regarding this will be done on the bug report.
 
N

NetoX

Guest
I got this from Yoyo:

Hello,

Using your sample provided on all of the devices except the SE one listed and this works as expected, clicking the button and it shows the text with no delay or double touch required.

This ties in with the bug report which I've added in that this issue simply cannot be reproduced on our end.

Apple have fixed issues with SE devices in the past having touch problems as seen in the link to the Apple help forum on the bug report so it's potentially that your device is on an older version on iOS and needs to be updated.

Due to this I'll close this ticket and any further communication regarding this will be done on the bug report.
This is sad, I have reproduced this using iPhone 7 with iOS 12+. As I said before, I tested a lot my game, 30+ beta testers and this problem was not identified, only when I launched the game, after this I used an iphone 7 to test


 

Plura

Member
I got this from Yoyo:

Hello,

Using your sample provided on all of the devices except the SE one listed and this works as expected, clicking the button and it shows the text with no delay or double touch required.

This ties in with the bug report which I've added in that this issue simply cannot be reproduced on our end.

Apple have fixed issues with SE devices in the past having touch problems as seen in the link to the Apple help forum on the bug report so it's potentially that your device is on an older version on iOS and needs to be updated.

Due to this I'll close this ticket and any further communication regarding this will be done on the bug report.
Can someone confirm that this demo example works fine on one of these Apple devices: Iphone SE, iPhone 6/S, iPhone 6/S plus, iPhone 7/ 7 plus, iPhone 8 / 8 Plus?
Before you test the demo example please watch this short video. It's important to watcht the video as it shows how to properly test the demo.

  • Short description how to test: Just touch the screen at the bottom of the screen and see if the touch response is without any delay.

I'm very thankful to everyone who can help us with this issue.
 

Plura

Member
I'm very serious about this and I just purchased brand new Ipad 6 in my local apple store near my office.
Can't wait to see how this behaviors on this new device.
 

Plura

Member
NOW, I'M REALLY ANGRY!!!
On a brand new iPad 6 with the newest iOS 12.1.4 it does not work!
Here is the video.

As @Tornado explained above I can only confirm the same.
The touch at the bottom works only if I apply two fingers on the screen.
With one touch It doesn't work correctly, it has a delay around 1 second.
The edge on the right doesn't react at all.

Same behavior (bug) happens on: iPhone SE, iPhone 6, iPhone 6S, iPhone 7 and now I can confirm the same bug on a brand new iPad 6.
Do I have to buy more iPhone's or iPad's on the market to prove that there is a bug with touch control inside games build with GMS 2.2.2? I don't think so.

@YOYO, show us some evidence (video example) that we are wrong or accept our bug as it is.
We have business to run and people to pay for developing games and we have chosen your engine.
Don't let us down. Take this seriously, we are not children that are playing around with your game engine.
 
N

NetoX

Guest
NOW, I'M REALLY ANGRY!!!
On a brand new iPad 6 with the newest iOS 12.1.4 it does not work!
Here is the video.

As @Tornado explained above I can only confirm the same.
The touch at the bottom works only if I apply two fingers on the screen.
With one touch It doesn't work correctly, it has a delay around 1 second.
The edge on the right doesn't react at all.

Same behavior (bug) happens on: iPhone SE, iPhone 6, iPhone 6S, iPhone 7 and now I can confirm the same bug on a brand new iPad 6.
Do I have to buy more iPhone's or iPad's on the market to prove that there is a bug with touch control inside games build with GMS 2.2.2? I don't think so.

@YOYO, show us some evidence (video example) that we are wrong or accept our bug as it is.
We have business to run and people to pay for developing games and we have chosen your engine.
Don't let us down. Take this seriously, we are not children that are playing around with your game engine.
Exactly, I am already getting a bad reputation on itunes, the players sometimes press near the edge, sometimes far, they dont understand the real problem.

itunes_review.PNG
 

Dan

GameMaker Staff
GameMaker Dev.
We have now reproduced using an iPhone 7. We have reproduced this issue in the extremely specific case of putting your finger on the left/right bezel and creeping your finger onto the screen and then holding still. Two-finger touches immediately fixing this, we still have not actually reproduced, but likely if we fix the core issue that won't matter anyway. As you can see from your own results, this does not happen on a number of devices in many cases - and it does seem to be that recent versions of iOS fix this - so this is why it has been hard to pin down.

The fact remains, though, as I said much higher up in this thread, that you're putting your UI in these locations when Apple's own guidelines is to not do this and that OS interactions apply in those locations and will take priority. Our advice, regardless of whether we make a fix or not, is to simply move your buttons in a bit and stop relying on edge-to-edge interactions, as this is the only way you will definitely stop your bad feedback from players. Again, as I mentioned above, there is also the option added in 2.2.1 to defer input to the OS when touching the bottom of the screen, which may help your situations. (The iPhoneX is a prime example of why your buttons should not be at the very top/bottom edge of screens, but you can also see on that guidelines page, Apple say to not use the extreme left and right edges on any device.)

Please, there is no need for all these recent repeated "this is a serious issue, why don't you care" comments - this IS being investigated, we do care, and I can assure you this issue has taken up a significant amount of QA department time this week - so all you're doing is burying the useful information we require in amongst your replies.
 

Plura

Member
We have now reproduced using an iPhone 7. We have reproduced this issue in the extremely specific case of putting your finger on the left/right bezel and creeping your finger onto the screen and then holding still. Two-finger touches immediately fixing this, we still have not actually reproduced, but likely if we fix the core issue that won't matter anyway. As you can see from your own results, this does not happen on a number of devices in many cases - and it does seem to be that recent versions of iOS fix this - so this is why it has been hard to pin down.

The fact remains, though, as I said much higher up in this thread, that you're putting your UI in these locations when Apple's own guidelines is to not do this and that OS interactions apply in those locations and will take priority. Our advice, regardless of whether we make a fix or not, is to simply move your buttons in a bit and stop relying on edge-to-edge interactions, as this is the only way you will definitely stop your bad feedback from players. Again, as I mentioned above, there is also the option added in 2.2.1 to defer input to the OS when touching the bottom of the screen, which may help your situations. (The iPhoneX is a prime example of why your buttons should not be at the very top/bottom edge of screens, but you can also see on that guidelines page, Apple say to not use the extreme left and right edges on any device.)

Please, there is no need for all these recent repeated "this is a serious issue, why don't you care" comments - this IS being investigated, we do care, and I can assure you this issue has taken up a significant amount of QA department time this week - so all you're doing is burying the useful information we require in amongst your replies.
Hi Dan,
we put all our buttons inside safe areas but it's hard to tell people to be precise when touching. Some iPhones are really small and there are not many spaces where we can put our buttons. We had to extend the touch zone to ensure that on every finger touch button will react.
With this kind of limitation, it's extremely hard or impossible to make god game control experience.

I'm sorry if I was rude or something like that but it was really hard to see that you can't reproduce our problem.
And we did everything to make you easy as possible to detect and recognize the problem.
Have a nice day.
 

Pfap

Member
As far as mobile design issues go, I built a UI with sliding buttons that would pull up a canvas over the main menu to display a different room without actually leaving the menu. Similar to Apple's control center feature https://support.apple.com/en-us/HT202769 . However, I built and tested on Windows and when I pushed it to the phone for testing I quickly learned it conflicted with Apple's own sliding menu.

I know when Apple decides something there is not much developers can do other than comply or find a work around, but it would be nice if there was an option to turn off the control center too.
 
B

booksmaster

Guest
My company (4 teams of 4-5 people) all working in gms 1.4 or gms2 expirience same problem. Would be grat if solved. For now we move all input from the bottom of the screen to a higher position.
 

Tornado

Member
Setting that option that Dan mentioned solved the problem on all edges except on the right edge of the screen, which still doesn't respond to touch!
Not until I read Dan's second posting I realized which options he means!
Dan, THANK YOU for that, but you should be really more precise when describing it. In your first posting you mentioned some option (not the precise name of the option) and only in conjuction with iPhone X and also the sentence was weird.
Your second posting was more clear about that.

People, go to Game Settings -> Platform Settings -> iOS -> General.
There activate the checkbox (which has for me rather cryptic name) "Defer Home Indicator Input"
(See the screensot)

As I said this was salvation for us. The right edge not responding still hurts a little bit, but we can live with that for now.
Nevertheless, that should be fixed too. We are lucky that our controls on the right side are bigger and we don't have to rely on the edge area on the right side.

Dan, Yoyo, thank you very much for the partial solution and I hope the right edge will be fixed soon too!
 

Attachments

Top