func UpdateTouchesOnIOS(phase int, ptr int64, x, y int) {
	mobileMutex.Lock()
	defer mobileMutex.Unlock()

	updateTouchesOnIOSImpl(phase, ptr, x, y)
}
func UpdateTouchesOnIOS(phase int, ptr int64, x, y int) {
	mobileMutex.Lock()
	defer mobileMutex.Unlock()

	updateTouchesOnIOSImpl(phase, ptr, x, y)
}
func UpdateTouchesOnIOS ( phase int , ptr int64 , x , y int ) { mobileMutex . Lock ( ) defer mobileMutex . Unlock ( ) updateTouchesOnIOSImpl ( phase , ptr , x , y ) }
// UpdateTouchesOnIOS updates the touch state on iOS.
//
// This should be called with touch handlers of UIViewController like this:
//
//     - (GLKView*)glkView {
//         return (GLKView*)[self.view viewWithTag:100];
//     }
//     - (void)updateTouches:(NSSet*)touches {
//         for (UITouch* touch in touches) {
//             if (touch.view != [self glkView]) {
//                 continue;
//             }
//             CGPoint location = [touch locationInView: [self glkView]];
//             // Exported function for UpdateTouchesOnIOS
//             YourGameUpdateTouchesOnIOS(touch.phase, (int64_t)touch, location.x, location.y);
//         }
//     }
//     - (void)touchesBegan:(NSSet*)touches withEvent:(UIEvent*)event {
//         [self updateTouches:touches];
//     }
//     - (void)touchesMoved:(NSSet*)touches withEvent:(UIEvent*)event {
//         [self updateTouches:touches];
//     }
//     - (void)touchesEnded:(NSSet*)touches withEvent:(UIEvent*)event {
//         [self updateTouches:touches];
//     }
//     - (void)touchesCancelled:(NSSet*)touches withEvent:(UIEvent*)event {
//         [self updateTouches:touches];
//     }
//
// The coodinate x/y is in point.
//
// UpdateTouchesOnIOS can be called even before Start is called.
//
// UpdateTouchesOnIOS is concurrent-safe.
//
// For more details, see https://github.com/hajimehoshi/ebiten/wiki/iOS.
UpdateTouchesOnIOS updates the touch state on iOS . This should be called with touch handlers of UIViewController like this : - ( GLKView * ) glkView { return ( GLKView * ) [ self . view viewWithTag : 100 ] ; } - ( void ) updateTouches : ( NSSet * ) touches { for ( UITouch * touch in touches ) { if ( touch . view ! = [ self glkView ] ) { continue ; } CGPoint location = [ touch locationInView : [ self glkView ]] ; // Exported function for UpdateTouchesOnIOS YourGameUpdateTouchesOnIOS ( touch . phase ( int64_t ) touch location . x location . y ) ; } } - ( void ) touchesBegan : ( NSSet * ) touches withEvent : ( UIEvent * ) event { [ self updateTouches : touches ] ; } - ( void ) touchesMoved : ( NSSet * ) touches withEvent : ( UIEvent * ) event { [ self updateTouches : touches ] ; } - ( void ) touchesEnded : ( NSSet * ) touches withEvent : ( UIEvent * ) event { [ self updateTouches : touches ] ; } - ( void ) touchesCancelled : ( NSSet * ) touches withEvent : ( UIEvent * ) event { [ self updateTouches : touches ] ; } The coodinate x / y is in point . UpdateTouchesOnIOS can be called even before Start is called . UpdateTouchesOnIOS is concurrent - safe . For more details see https : // github . com / hajimehoshi / ebiten / wiki / iOS .