LogoLogo
  • 📘Arcane Mirage Documentation
  • 🚂Quick Start Guide
    • 1. Register and Sign In
    • 2. Prepare Your Unreal Engine Project - Choose your platform
      • 🐧Prepare your Unreal Engine project for Linux
      • 🪟Prepare your Unreal Engine project for Windows
    • 3. Upload your project
    • 4. Share your project
  • Subscriptions & Tokens
    • Subscriptions Plans
      • Free Trial
      • Pixel Artificer - Basic
      • Reality Weaver - Pro
      • Engine Overlord - Pro+
      • Multiverse Exemplar - Enterprise
    • Subscription Features
    • Tokens
  • 🖥️Unreal Engine Setup & Support
    • UE and Pixel Streaming recommendations
    • Adapting your project for Mobile
    • Known Issues in Linux
  • Uploading
    • Uploading
      • Uploading and managing new versions
    • Dedicated Machines
  • Sharing & Embedding
    • Sharing
      • Private Links
    • Embedding to your Website
      • Embedding on WIX
    • Messages to the front-end from Unreal Engine
    • Analytics
  • Project Settings & Configurations
    • General Projects Settings
      • General Settings
      • Description Settings
      • Project Config Settings
      • Session Config Settings
      • Performance Settings
      • Embedding Settings
  • Version Control
  • Advanced Integrations
    • API Access
    • Using Conv AI & Arcane Mirage
    • Using Inworld AI & Arcane Mirage
    • About Multiplayer
  • Accounts & Payments
    • Payments
    • Updating your payment information
  • ❓FAQs
    • General FAQ
    • Unreal Engine Frequently Asked Questions (FAQ)
      • Project upload succesfully to the platform but it disconnects when launching experience
      • My project is not compiling correctly. What could be wrong?
      • Which version of Unreal Engine do we support?
      • Does Lumen and Nanite work in Pixel-Streaming?
      • My mouse is captured by the experience but I can't see the cursor in game
      • How to use Media Textures in Arcane Mirage
      • How to make microphone input work for Pixel Streaming
      • Tips to Optimize your Unreal Engine Projects
      • Can i use the Pixel Streaming 2 plugin?
    • Access our templates through Github
    • How can I rebuild my project?
Powered by GitBook
On this page

Was this helpful?

Export as PDF
  1. Unreal Engine Setup & Support

Adapting your project for Mobile

PreviousUE and Pixel Streaming recommendationsNextKnown Issues in Linux

Last updated 9 months ago

Was this helpful?

Arcane Mirage also runs on mobile browser, and we help your project recognize on which type of browser is it opening. As in any project you will have to tell your project how to handle mobile browsing, for this we provide 2 solutions:

Manual:

With this setup, you will tell your project to always show the touch interface regardless of where is it being opened. This works nicely for creators that need a basic touch control and dont want to get into blueprint coding. 1. Go to Project Settings > Engine > Input and enable the "Always Show Touch Interface" setting. 2. After that on "Default Touch Interface" select the touch interface you want to use.

Automatic Detection:

With this method, you will use one of the Unreal Events we have created in the Arcane Mirage Player to ask which type of browser the experience is being played on, and you will activate the touch interface that you need. For this setup to work, you will have to: 1. Go to Project Settings > Engine > Input and enable the "Always Show Touch Interface" setting.

2. After that on "Default Touch Interface" clear your selection so there is no default touch interface.

3. Add the PixelStreamingInput component to the BP that will send and receive messages from the pixel streaming player. Usually, the GameMode Blueprint or the Player Controller Blueprint handles this but will vary according to your project logic.

4. Inside the Blueprint where you attached the PixelStreamingInput component:

Using "Send Pixel Streaming Response" with the descriptor "GetDevice" will make the pixel streaming player to send an On Input event that contains a JSON: { event: 'DeviceDescription', data: { mobile: bool } }

Which will show true or false on the mobile field depending if your experience is running on a desktop or mobile browser.

5. After binding the On Input Event and parsing the JSON, set the touch interface control to the one you want for mobile, or clear it if you are running on PC.

We provide an example project of this implementation which comes fully commented.

🖥️
https://github.com/ArcaneMirage/AutomaticTouchUI