Template Overview
Using the Arcware Pixel Streaming Template Project
Overview & Scope
Navigation System Overview The navigation system is designed to seamlessly operate on both mobile and desktop platforms across three modes: Orbit, Fly, and Walk.
Orbit Mode Navigation:
Desktop: Rotate: Right Mouse Click and drag to rotate the view. Pan: Middle Mouse Click and drag to pan the view. Change Focus/Pivot Point: Double Right Mouse Click to change the focus/pivot point. Zoom: Mouse scroll for zoom.
Mobile: Rotate: One finger tap and drag for rotation. Change Focus/Pivot Point: Double tap to change the focus/pivot point. Zoom: Pinch In/Out to zoom. Pan: 3 Finger Tap and drag for pan (note: consider potential issues).
Fly Mode Navigation:
Desktop: Movement: W, A, S, D keys to move forward, left, backward, and right, respectively. Rotate: Left mouse button to rotate the view. Pan: Middle mouse button and drag to pan the view. Vertical Movement Down: Q key to move down vertically. Vertical Movement Up: E key to move up vertically.
Mobile: Movement: Bottom left side touch for movement gesture. Rotate: Touch and drag on the screen to rotate the view.
Walk Mode Navigation:
Desktop: Movement: W, A, S, D keys to move around. Rotate: Left mouse button to rotate or use mouse movement based on settings. Jump: Spacebar key to jump.
Mobile: Movement: Bottom left side touch for movement gesture. Rotate: Touch and drag on the screen to rotate the view. Additional Mobile Controls: Note: Walk mode primarily relies on movement and rotation; additional actions like jumping can be automated or context-triggered based on the user's actions to enhance user experience.
These instructions provide a clear guide for users to navigate smoothly in each mode on both desktop and mobile platforms. Developers can use this as a foundation to create an intuitive and consistent user experience across different devices. Adjustments and optimizations can be made based on user feedback and specific application requirements.
Project Base: - Created from a blank 'Automotive/Product Design/Manufactoring' template - No Starter Content
Download link: https://www.fab.com/listings/9b0edb51-5b11-42f0-b281-94e896a4801d
Plugins Enabled
- Default Unreal Engine plugins (based on a blank 'Automotive/Product...' template project) - Pixel Streaming plugin

Project Settings Enabled
- Use fixed frame rate = True - Fixed frame rate = 30 fps

- Ray Lighting Mode (UE5) = Hit Lighting for Reflections - High Quality Translucency Reflections (UE5) = True

- Default Viewport Mouse Capture Mode = Capture Permanently Including Initial Mouse Down - Set 'Default Viewport Mouse Lock Mode = Do Not Lock (this value Is overwritten if using the 'BP_Arcware_HUD_Visible_Mouse')

- Default GameMode = BP_Arcware_GameMode

- Enable Gesture Recognizer = True (needed for Pinch to zoom to work. Although this is currently not relevant as 'Pinch' gesture doesnt work on IOS devices)

- Default RHI = DirectX 12 (12 is recommended)

Player Input
- 'Actions' Folder = (All input key bindings needed for camera movement) - 'Arcware_InputMappingContext' = (Input mapping used for EnhancedInput system)

Console Commands Enabled
- PixelStreaming.WebRTC.DisableResolutionChange 0 (only relevant for UE4.27) - r.setres 1920x1080w

Arcware Specific Assets in the Project
- BP_Arcware_GameMode ( this GameMode contains the reference to BP_Arcware_Pawn and BP_Arcware_Player_Controller ) - BP_Arcware_Pawn ( this Pawn is used for controlling the player camera. All of the settings you will need related to camera movement speed/zooming/panning etc, are editable in the Pawn actor's detail panel, meaning you can tweak the camera movement style without needing to open the blueprint ) - BP_Arcware_Player_Controller ( this Player Controller contains blueprint nodes for handling the Pixel Streaming events/responses. This is where you can send/receive json messages from the Web browser to trigger events in Unreal Engine ) - BP_Arcware_HUD_Hidden_Mouse ( this HUD should be used when your pixel stream has UI provided via the web-browser. In this scenario, you don't need to click any UI in the game so you don't need to show the in-game mouse cursor ) - BP_Arcware_HUD_Visible_Mouse ( this HUD should be used when your pixel stream has in-game UI. In this scenario, the user needs to interact with the in-game UI so the in-game mouse cursor must be visible. When this HUD is used it provides an example of in-game UI, which shows the most useful functionality for the in-game mouse, such as, only showing the mouse cursor when the menu is open )

Last updated