GDXR

View Original

GDXR Ultimate VR Template

We are pleased to announce that the GDXR Ultimate VR Template is now available for purchase on the Epic Games marketplace. Our in-house template has been developed with the aim of making Virtual Reality accessible to everyone.

We strongly believe that VR has the potential to revolutionize the way we experience entertainment and interact with technology. So we have worked tirelessly to create a product that is both high-quality and affordable. We understand that not everyone has the time or experience to develop a VR experience, which is why we have made it a priority to create a template that helps you get started. And is compatible with a wide range of devices.

The GDXR Ultimate VR Template is a powerful tool for developers working with Unreal Engine 5.1+. This template is specifically designed to work with all OpenXR-compatible devices and incorporates Epic Games Enhanced input system. The template is built with mobile devices in mind, such as the Meta Quest 2, Pico neo 4, and Vive Focus 3 and Desktop VR.


About the Template

Using Unreal Engine's visual scripting language, Blueprints, we have constructed an extensive and highly flexible framework that is designed to create a modular workflow. This allows you to easily customize it to fit your specific needs, without being restricted by unnecessary features. We understand that different developers have different requirements, and we have designed our framework to be fully adaptable to your needs. You can easily enable or disable any features that you don't need, ensuring that you can create the perfect project for your target audience.

Our goal from the start of production was to create a template that could not only meet, but exceed, the performance requirements of Mobile VR, without impacting the end experience. We understand the importance of speed and efficiency in large and highly detailed projects, which is why we have created a modular system that automatically enables or disables content when it's not being used or interacted with in the project. By doing this, we are able to save those crucial milliseconds that can make all the difference in the quality of your final product. This approach allows us to optimize the workflow and create a smooth and seamless user experience that will keep your audience engaged and immersed in your project.


What does the template contain?

Six Movement Methods that can be changed at runtime.

⦁ Teleport.

⦁ Shift movement.

⦁ Smooth Locomotion.

⦁ Smooth Locomotion & Teleport.

⦁ Flying.

⦁ Snap to actor teleport.

  • Disable or enable Player Movement (used for cut scenes, menu, and more).

  • Can the player Jump?

Hands And Controllers

⦁ Choose between Open XR controller meshes or Skeletal mesh hands with custom hand animations.

⦁ Ability to hide controller meshes and hand when interacting with individual actors.

Movement Direction

⦁ Use the player’s camera for the forward direction.

⦁ Use OpenXR Controller for the forward direction.

Rotation

⦁ Snap Rotation - (Ability to choose angle amount).

⦁ Smooth Rotation - (Choose rotation speed).

Inputs

⦁ Fully supported Enhanced Input system.

⦁ Dynamically changes user inputs based on the selected movement method.

⦁ User inputs fully support.

  • Vive Wand.

  • Oculus touch.

  • Valve Index.

  • Windows Mixed Reality.

Player HUD example and two movement methods.

⦁ Option to enable a dynamic HUD (Heads up display) to show real-time info to the player.

⦁ Lock the HUD to the player’s camera - (Follows players where they look).

⦁ Dynamic HUD - (tries to follow the player’s camera and always faces the player).

Gaze Interaction Component

⦁ Custom Gaze Interaction Component - (Can be disabled if not required).

⦁ Contains Gaze Interaction Example.

⦁ Ability to hide Gaze Interaction at runtime (For example hide during cut scenes and such).

⦁ Ability to change gaze Z location - (Reduce eye strain.)

⦁ Ability to use gaze interaction with UMG.

⦁ Ability to hide gaze interaction when not required. - (Enabled using included Function.).

Mobile Screen Fade

⦁ Screen Fade interface to activate screen fades from any actor. - (Built for Quest 2).

⦁ Screen Fade does a check to see if the player is using the event Load New Level interface. If it is it will load level on fade completion.

Includes Lyra Weapons

⦁ Uses a custom line trace function allowing for different weapon types.

⦁ Muzzle Flash - Using the Niagara system as an example.

⦁ Example of how to use a Data table to populate weapon stats when first spawned for easy updating.

⦁ Contains weapon reloading example

⦁ ammo count variables

⦁ Weapon UI interaction example (Can shoot UI to interact with it).

Sword

⦁ Added Sword grabbable object example.

UI/UMG

⦁ Option to automatically display UI Interaction beem if your pointing at a widget. If not it will be hidden.

⦁ If interacting with UMG, Inputs will automatically update to allow button interactions.

⦁ Player Settings menu with 3D widget example.

⦁ Choose between pointing/interacting with UI from a distance or touching UI with the Index finger to interact.

Climbing System

⦁ Enable / Disable climbing.

⦁ Option to climb any surface.

⦁ Snap hands to the climbing location(Similar to The ClimbVR)

⦁ Supports custom hand animations when climbing

⦁ Skeletal Mesh hands move smoothly to the snap hand location for a more organic feeling.

Custom Hand Animation/Snapping System

⦁ Enable Custom hand Animations when holding actors.

⦁ Easily snap hands to actors with simple blueprint integration.

Player Interaction Examples.

⦁ Pull lever

⦁ Crank Wheel

⦁ Flick Switches

⦁ Sliding Draw

⦁ Push Button

⦁ Tap Button

⦁ Sliding Button

Holster System (Storage)

⦁ Attach actors to the player at runtime

⦁ Spawn with actors attached to Holster

Grabbing

⦁ Option to Toggle grabbing. Should the player press the grip button a second time to drop a held item?

⦁ Grabable spectator camera

⦁ Two-handed grabbing.

Load Screen

⦁ Open XR Load screen integration and setup

Save/Loading System

⦁ Integrated Save system to store player settings.

⦁ Load Save files from existing save files.


Documentation

You can find the template’s documentation here