[Studio Beta] Introducing Multi-touch Simulation


Hi Creators,

We are excited to announce that multi-touch gesture simulation is now available in Studio Beta!

With this update, gestures like pinching, rotating, and two-finger panning can now be simulated in Studio with a mouse.

Enabling the beta

To enable the Multi-touch Simulation beta in Studio, follow these steps:

  1. Open Studio and navigate to the “File” menu
  2. Click on “Beta Features
  3. Enable the “Multi-touch Simulation” Studio beta by checking the corresponding checkbox and pressing “Save
  4. Restart Studio if prompted

How to get started

After enabling the beta, multi-touch simulation will automatically be enabled while playtesting any mobile device. To select a mobile device:

  1. Go to Test > Device Emulator in the system menu (on Mac, these will be in the MacOS menu bar)
  2. Select a phone or tablet from the device selection dropdown menu above the viewport

By default, mouse interactions will simulate single-touch gestures. To start a multi-touch gesture, hold down one of the following shortcuts while dragging the mouse:

  • For pinching and rotating: Alt/Opt
  • For two finger panning: Alt/Opt + Shift

While a shortcut is active, two circles will appear in the viewport to indicate where the simulated touches are positioned.

We’re working to make playtesting more streamlined and seamless, including an upcoming refresh of the device list. Please drop any feedback or questions below!

Many thanks to the team that helped bring this to life! @ignotuscaligo, @Rusi_002, @montximontxi, @portyspiiice, @BobaTops and many more!

Happy developing!

252 Likes

This topic was automatically opened after 10 minutes.

Playtesting cannot be truly seamless without touchscreen PC users being able to use the touchscreen for multi input. It’s annoying that we have to use the keyboard instead of the screen.

44 Likes

WOAS1!1!!!1 Pretty cool update.

13 Likes

image

Goodbye, incredibly old iPhones.

This update will be very useful for me in the somewhat near future. I’m glad to see it, as having to publish and play from phone while testing can be very tedious and time consuming.

11 Likes

Roblox dropped support for these a long time ago, so they should be removed.

11 Likes

That’s nice, I was needing to test UserInputService.TouchPinch. Good timing!

9 Likes

https://devforum.roblox.com/t/multi-touch-simulator-in-roblox-studio/4321163

7 Likes

By full release, we’ll update the device list using the latest real player data to ensure it reflects actual usage. Stay tuned.

17 Likes

Will the device DPI be fixed too? Currently the size of the UIs shown in the mobile emulators is inaccurate to what they actually look like on the real equivalent of the device
e.g. the fake iphone 14 shows the UI being bigger & having thicker strokes than a real iphone 14 screen

7 Likes

I hope the new device emulator also enforces memory limits so we can properly fix out-of-memory crashes directly from Studio :folded_hands:

7 Likes

It’s weird because there’s an opposite problem where PreferredInput defaults to touch for touchscreen laptops because Roblox assumes touchscreen + big screen = tablet. I’ve literally had to disable the drivers to get it to pick keyboard and mouse correctly.

6 Likes

These updates are great, but it would be even more awesome is we could connect a mobile device to studio for testing on an actual touchscreen.

For those who remember:

37 Likes

Having percentage of users in a particular device on the platform displayed directly in the studio UI would be incredibly useful to prioritize device support and curation.

4 Likes

How could I forget, I’ll never delete the app!

5 Likes

If you want to test touch-screen but don’t have an touch screen for your laptop/desktop,
for testing you could try using an (third-party app to connect your phone to your pc as an monitor) there are many apps which support phone to computer(as in monitor+touch screen),
such as Spacedesk, You could try to set this up for testing Mobile UI testing on computer (without having to publish your place and reload on phone for every test) :grin:

4 Likes

No idea if possible but it would be great if some of this was compatible with laptop touchpads

5 Likes

There’s an issue in our experience where UserInputService.TouchPinch gameProcessedEvent parameter does not return true when interacting with the mobile thumbstick.

This causes problems for our custom camera system, which relies on gameProcessedEvent to ignore input that has already been handled by Roblox’s UI.

Currently, we have a workaround that checks if the position is within the thumbstick UI bounds, but its not reliable.

Video provided by community member:


Notice how the camera zooms in and out while they’re moving the thumbstick around.

Code snippet:

UserInputService.TouchPinch:Connect(function(
	touchPositions: {Vector2},
	scale: number,
	velocity: number,
	state: Enum.UserInputState,
	gameProcessedEvent: boolean
)
	if self.PerspectiveLock or gameProcessedEvent then
		return
	end
7 Likes

unfortunately alt + shift changes the keyboard language

2 Likes

Yep. Pretty much unusable

3 Likes