Free VR Template (All Blueprints)

Thanks, nice complement to start with VR :wink:

I just got the chance to try your template and most of the features worked but it causes motion sickness due view lagging behind head position. I found out i need to enable lock to hmd on the camera. However turning that on causes the view to be well above the pawn which i’ve yet to figure out how to fix. Any ideas? Thanks.

Thanks for sharing, this is really useful for getting started on VR development in Unreal!

Any chance you might be able to help with the lock to hmd issue above?

Sorry for the late response, and thank you for the feedback. I’ll look into that, you’re not the only person who’s reported that issue (though I don’t see it myself, possibly because I’m just too used to testing laggy stuff in VR).

I’m in the process of refactoring the whole thing, as I found I needed to make a lot of changes for multiplayer and zero-g stuff, and I decided to change the way item interaction works to cut down on the number of actors. It will be a month or two before v2 is out, but I’ll have the anomalous HMD lag fixed as well.

That’s great to hear thanks for looking it’s appreciated. I still think this is one of the best templates for me as it just works with all the features you’d expect for a fps template and without needing plugins.

Do you know why “lock to hmd” is disabled as i believe that’s supposed to be on by default? If it’s no trouble will you be able to have a look and post a quick fix in meantime? No need for uploading a whole project just point us in the right direction on what needs changing so camera isn’t offset way above head position would do. That is if it’s a simple fix of course but no worries if not.

Edit: I have been trying to change things like eye height offset but hands were still not right location. Also changing camera position variables and subtracting a certain amount for testing. All i did there was bounce the view up and down every second. It may be a simple fix ill try to find but not knowing much about blueprints hopefully someone can help as this really is a great template.

I set up the camera movement differently so that it would be easier to do snap rotations, but I’m getting a lot of feedback that it’s causing too many problems.

I’m sorry to hear about how fragile the whole thing is (i.e. small changes break things). I am in the process of creating a new version from scratch that should be more robust in addition to having more features, but it’s just one component in my current project so I’m not able to give the new template my full attention.

Please bear with me for the next few months as I get it figured out; hopefully you’ll still be able to copy the modules that are working correctly and integrate them into your projects (I’d actually be interested to hear if anyone learned anything from these blueprints or used some of it in a project - that’s valuable feedback as well).

Just downloaded the project and had a quick look at it - Pretty good! Everything seems to work and is functional enough, but Ive got some notes and a couple questions that I hope you wont mind :slight_smile: Please excuse my manner of speech, I dont want to come off as too critical, just some friendly comments from one VR developer to another. Plus ive only had about 20 minutes to look at it, so im probably not understanding a few things.

  • The hands are really big! I know the default hands in the VR template are also oversized, but these seem even bigger. Not a game-breaker, but changing this could be tricky…

  • You have hand models in all of your pickups with animations set to blueprint but no animation blueprint set. Are you using these hand models just for reference or are you doing something like hiding the player’s own hands and making these hands visible to get the grip locations etc correct? In gameplay it seemed that the player’s hands were used, but the grip pose didnt line up with the grip of the gun so I dont know. If theyre not used, I would recommend removing them because extra components in actors can increase their load on cpu.

  • Your BP_VR_Pawn actor has a LOT of variables in it and a lot of them are only set once and then forgotten about. Instead of having the player carry around all this data all the time, it’d be better to store it in the gamemode or player controller and have those values set when the player pawn is spawned. For your boolean values that the player does need to carry around, Id recommend putting them in a struct so that the pawn has 1 struct of booleans instead of 30+ individual booleans. As an example, ‘OCHand Loc’ is set once in the setup function and then not touched again (as far as i can see). You could just use a value in the node, but if its a piece of data you really want to keep as a variable, youd be better of capturing a reference to the player controller at begin play and then just call on it for these variables if and when you need them.

  • Speaking of BP_VR_Pawn, theres a huge amount of functionality coming off Event Tick. I can see its all regulated by boolean checks, but its spaghetti and difficult to read. Despite the checks, the VR_Pawn is ticking as fast as it can, making these checks every single frame. The ‘Snap Rotation’ snippet for example, could be placed at the input event for the joystick instead of having the game check a boolean on every frame. Similarly with the ‘Movement’ snippet - there’s all these boolean checks being made every frame, CanMove?, IsFalling?, CapsuleHit?, Seated? etc. These checks could be made on a button push instead of being checked for at every tick. For an axis, you could use a boolean check to see if the value is 0 (as in no tilt on the joystick) and if its not 0, make the checks and move/rotate the player.

Maybe Im off base with some of that, just some thoughts I had looking at it.

Apologies for long post, great work so far, it runs well and is very functional :slight_smile:

1 Like

Brilliant, well done! Thanks for taking the time to share, especially with those that are new to Unreal Engine and VR. This helps fast track productivity. Out of interest, have you accessed any live API data whilst in VR e.g. weather?

Wow thank you! looks exactly what i was looking for!!
I will give it a try!

Just wanted to say thanks for posting this. I’m looking forward to working my way through your setups. It’s incredibly helpful for someone who’s just starting out.


Sorry for the late reply again. I’m keeping track of the feedback and should have it all fixed in the next version… sometime this year. In the mean time, I recommend using this version as more of a tutorial than a template.

Ah just saw you had posted and was really hoping… I know you’ve probably got better things to do than update this but it’s a shame to see you say perhaps sometime this year?

I honestly think this is one of the best ready made templates currently available beating even most marketplace ones. You’ve just happened to come up with a solid base template that’s blueprint only and a much more natural physical based one without needed navigation or an overly complex plugins to run. I’m sure i’m not the only one who would be happy to buy it if you just fixed the head lag issue and gave it a bit of polish.

You really made a great thing here for the community and im not sure you realise it… I just hope someone here could fix it for the rest of us? :frowning:

If I thought there was an easy fix I would just do it. The way the camera transform relates to the actor is central to this template. This is a bad thing, not just because the camera has some issues (which I didn’t manage to detect either because my hardware is different or because I’ve just become inured to VR sickness), but because it makes the entire template fragile and difficult to change. This is why I am working on a new one. If I do my job correctly, it will work better out of the box and be easier to modify.

I’ve only just begun working on it again. I feel bad that I’ve left a less-than-perfect project out there, but I was finishing up school, taking care of a new baby, and starting a new project. My new project has reached a point where I can focus on the pawn; I’m going to take those blueprints related to the pawn and give them away when they’re ready. Hopefully that will only take a month or two, but I don’t know. It’s my number one priority at the moment, but it’s possible that my circumstances will change and I’ll have to get a real job and stop working on it entirely.

I hope you will be able to work on other aspects of your projects in the mean time.

I’m about done with the new version, which runs in UE4.25 (yes, I will probably update it to UE5 next year). It has all the same locomotion and interaction types as the old version, but with some improvements to deal with moving environments, rotating pawns, and shouldn’t make you sick. It also has multiplayer. I’d like to get some testers if possible. This is the link to the discord, where I’d love to get your feedback so I can make improvements before the “real” release: Inchoate Elk Games

If you just want to download the project, it’s here:

I haven’t made any tutorials yet, as I’d like to get the release version more firmly set before committing to those. I will make some brief video introductions to get you oriented to the pre-release version and post them in the discord when they’re ready (in the next few days). If you just have to see it in action right now, here’s a two-month-old preview video (multiplayer and item interaction are working now):

Edit: Ok, I made a short video just to show what was missing from that one, bloopers included for your viewing pleasure.

Once this has gone through a little testing and improvement, I’ll start a new thread to announce the official release of version 2 of the free, blueprint-only, multiplayer vr template.

1 Like

Great work Incurian thanks for doing this as it’s running perfect now. I’ve only quickly tested and controls work well using hp reverb g2. Do you happen to have one? :slight_smile:

The only small issue i found so far was the collision capsule seemed small and made me low to ground but im guessing that just needs resizing? I wonder if there’s a way to make height adjusted to player?

Also does the gun shoot anything as i played around with it after adding clip and nothing happened?


I currently have an Index, and a Quest(v1); if there are issues with other sorts of devices, please let me know what fixes you’ve come up with and I’ll incorporate them into the template.

There is some automatic resizing of the pawn height going on; I mention it in the orientation video below, but try messing around with BodyAdjustments graph in the pawn BP to get it to do what you like.

The gun doesn’t shoot, it’s just an example to show the various item interactions that are possible. It will be fairly easy for you to add arbitrary actions to the gun BP triggered by control inputs in the pawn.

Here is the orientation video, it doesn’t go into a lot of detail, but it should show you where everything is located. I have chosen not to create detailed tutorials yet because I am anticipating changes to the BPs, and I want to wait until we can count on them to be more stable before spending days on tutorials that may be quickly obsoleted. You can expect those in the next week or two when the updated version is released (I have already found a couple bugs that while not game-breaking, bother me enough that I want to patch them, as detailed in the discord testing channel).

As a reminder, it will be necessary to learn a bit about Blueprints and the Unreal Engine in general in order to take full advantage of this template; nonetheless, it should still save you loads of time on your first VR project, and will probably aid you in learning about Blueprints since many of the different capabilities are on display here.

i have some knowledge with blueprints, but not understanding what item buttons with menu to set the start and quit, i’ve manage to swith killmenu to quit the game but no clue where i’m suppose to do or find the values or where they go to set it that way, kind of new to seting up vr menu’s etc but understand how to do it for 3rd or first person through hud widget, but still searching to find how i can altr those item buttons to be a quit and start level function. thanks.

Could you rephrase this? I’m having a hard time understanding what you’re asking. Is this in relation to the version 1 template? I’m not really planning on offering much support for that, as I am focusing on the new version I just posted about.

The new version is out.

Just wanted to close up this thread in case someone comes across it years later and wants to follow the project.