UserInputService.TouchPinch does not work at all on iOS.

We don’t even use it in our CoreScripts. Instead we hack it together from separate touches -

you are trying this on iOS then? Or android? I noticed these were broken and have some stuff in the pipeline that should fix this.


Mobile controls in general are a real pain point right now. I don’t have an Android to test with, so these API calls need to just work everywhere.

Pinch seems to work on iOS and android. Place is uncopylocked if you want to check out the code (just uses the vanilla pinch gesture).

We don’t use the pinch gesture code in our controls because we don’t always want to use the pinch gesture. If you are panning with one finger, then use another finger to tap the screen to fire a weapon, we don’t want to inadvertently cause your camera to zoom. Instead, you have to put two fingers on the screen relatively in time with eachother in order to trigger zoom.

I guess we could still use the pinch gesture in this scenario by connecting/disconnecting an event, but it seemed just as much work to do it ourselves.

1 Like

Took a look at your code. Definitely worked for me.

Tried it on my phone and iPad. Both work.

Tried it on the ROBLOX Dev App. Works.

Copy and pasted into my game, replaced your code with mine from the other post that controls the camZoom. That works.

Reverted my game back to the state where I was using mouse events instead of input events suspecting there might be cross talk. Nope. Works.

Now I can’t remember the circumstances under which I thought it was broken. :wut:

Thanks for taking the time to look into it.