Giter Club home page Giter Club logo

ue-vrhands-template's Introduction

UE-VRHands-Template

UE 5.0, Oculus CV1 supported unless modified for other platforms, can support other headsets because of OpenXR

I still need to update the trimmed down starter version without the objects is here to UE5.

This is a Unreal Engine 5 template for VR Headsets with motion controllers. It features dynamic hands, touch screens, grabbable objects, and locomotion.

To convert to OpenXR I had to modify it to use axis inputs and and control the movement direction based depending on a negative or positive axis value.

If you are using the UE5 launcher, put the template into UE5 by putting the TP_VRHands folder into: C:\Program Files\Epic Games\UE_5.0\Templates

See Creating Templates for help setting up.

When making a new map with VRHands functionality, use the VRPawn as a pawn, place a nav mesh to allow the pawn to move. For the grabbable object highlight, place a post process volume with the Highlight material in the Post Process Materials array under Rendering Features category and make sure you have the correct rendering settings in the project settings (forward shading, vertex fogging for opaque, custom depth-stencil pass set to enabled with stencil). If you want a cursor above the grabbable object then just wire up the cursor in the highlight function of the Grabbable component.

When making a new VR Menu Actor which is to be displayed when the game is paused, you will need to set the Tickable when paused attribue to true on the widget component as well as the VR actor itself. The laser will show on the main hand when the menu is displayed.

For grabbable objects, create an actor with a Grabbable component and static mesh then set the grab kind for the Grabbable component at event begin play. See the CubeBP for example.

This has the BP from this Arm Swinger Style Movement Tutorial for Unreal 4 video but is not wired up.

It also uses this Ue4 Tutorial - Moving an Object along a path using a Spline Track video.

For the dynamic hands, grabbable objects and highlighting is from UVRF project template.

Also, this uses open iconic for the template graphic.

Touch Screen interaction was figured out from this answer by AllJonasNeeds at UnrealEngine.com.

The incremental move (forward, back, strafe right, strafe left, turn right, turn left) by throwing a ball a meter away onto the nav mesh was my work.

There is a bug that I couldn't fix, it happens when the player does a spline move after a teleport--what happens is any CheckLineCollision function for the spline move will hit a Model Component for unknown reasons and then you would have to just use the trace end which makes it seems pointless but it works as I couldn't spline move across the box brush table. Teleport move also is buggy when the pause menu is up then the pawn still can move.

ue-vrhands-template's People

Contributors

danielrbowen avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

ue-vrhands-template's Issues

Unable to find vive bindings

Hi, I'm pretty new to ue and found your project.
I installed it and it ran. The problem i run in to is that i can't seem to find in which blueprint i can set the controller actions. So the hands basically do very little.
I tried manually binding buttons from steam, but this is depreciated. From what i understand we are supposed to use the openxr plugin and define input actions and then create a IMC to bind the actions to a controller.

So basically my question is where do I define the controller bindings so I can run the project and the controllers work as intended?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.