Steam VR Template

Oh, I fixed that last night in the last push to the repository, you must be packaging for Shipping, packaging for development is a little less strict and would probably work even with that re-definition.

If you download the latest version it should work as I actually packaged a shipping build of it this morning to test final releases.

The plugin is going through a lot of fast additions at the moment, today I’ve been cleaning up issues like that to get it stable again after adding in the VRCharacter and VRCharacterMovementComponent.

Sorry for the trouble, i’m trying to bash things out as fast as possible right now and was skipping clean up until today.

@Diem I extensively tested the template today. I get solid 90fps, except when I look directly at the sun, and there I get 45fps. In post-process volume, setting Bloom to 0 solved the problem. I think your fps drop could be solved in the post-process volume.

Also, there was a missing folder in the last version that prevented it to cook. That fixed, some new features and an extensive Q&A following tonight.

Version 1.12 – UE4.12.5: August 1, 2016

  • Fixed a missing folder preventing packaging project
  • Added player snapshot inside the playground when teleporting
  • Added a “legacy” teleportation method (select 1 and check “legacy teleport”)
  • Fixed some bugs found in all pawns
  • Added a FPS counter in front of the player
  • Now using more features from ’s plugin
  • New Q&A

Tested for hours today. Stable 90 fps. Works cooking and packaging. Test it in Epic’s Shooter by downloading the Test_template project of packaged version. Even in this complex environment it mainly stays at 90. OFR and NVIDIA available soon to test it.

Excerpt from the Q&A:

**I don’t have 90 fps! Your template is !
The template and the functions inside the pawns are not computer-intensive. It has been rigorously tested and within the main Vive Map, it stays at 90 fps.
99.99% of the time, the problem can be resolved within the post-process volume settings (in the level), in the Scalability settings (in the level blueprint) and by checking materials, lights and shadows. You have to carefully assess and tweak the following features:
In scalability settings
· r.ScreenPercentage: I found the sweet spot between ressource/usage and image quality is a screen percentage of 150. I can crack it up a bit but over 175 a begin to have serious drops in FPS (in tempAA). Note that the sweet spot can vary between rigs. Note that for textures within let’s say 2-3 m I don’t see any differences between settings, they are all super crisp.
· The rest are r (single settings) and sg (group of settings) to adjust
o For a thorough explanation, see https://docs.unrealengine.com/latest…nce/index.html
o Specifically for VR, visit also Getting Started with VR in Unreal Engine - Tom Looman
Post-Process Volume (in the level)
Be extra careful, because one single setting can cause a big drop in fps:
· Bloom: 0
· Ambient Occlusion: 0
· Screen Space Reflections : 0
The following do not affect fps but are nor recommended in VR :
· Auto Exposure: Min Brightness = Max Brightness
· Lens Flares: 0
· Motion Blur:0
AA Method (in post-process volume)
· FXAA is less ressource hungry, provides crisper images but there still some aliasing
TempAA is ressource-intensive, provides images that are bit blurrier but removes all aliasing
Personnaly, I prefer the look of tempAA, even if farther textures are a bit blurry. FXAA is less ressource hungry, provides crisper images but there still some aliasing
TempAA is ressource-intensive, provides images that are bit blurrier but removes all aliasing
Personnaly, I prefer the look of tempAA, even if farther textures are a bit blurry. I found the sweet spot between ressource/usage and image quality is a screen percentage of 150. I can crack it up a bit but over 175 a begin to have serious drops in FPS (in tempAA). Note that the sweet spot can vary between rigs. Note that for textures within let’s say 2-3 m I don’t see any differences between settings, they are all super crisp.
Other settings
· Try to avoid any other materials than opaque and masked
· Avoid fancy collision boxes
· Eliminate / reduce to minimum dynamic lights and shadows
· Avoid meshes with high poly count
· Reduce the number of animated actors
**
I want to access the camera in the Vive! What can I do?

This feature will be added in a future iteration. For now, it works well with the Unreal4AR plugin found at http://www.unreal4ar.com/ (personal license for 99$).

A plugin? I don’t like plugins.
Without the VRExpansion plugin, it’s still possible to use the Vive in UE4. However, it will have reduced functionalities. Be sure to have the plugin installed and enabled. The features of the plugin are:
· VR Character Actor
· Grip Motion Controller
· Replicated VR Camera
· VR Root Component
· Parent Relative Attachment
· VR Function Expansion Library
You’ll find the latest plugin and all relevant infos at
https://bitbucket.org//vrexpansionplugin .
It is always possible to avoid the plugin by using the Vive_Simple_Pawn.

I want to test it in a complex environment!
Sure. You can test it in Epic’s Shooter Demo by downloading the Test_Template_1_12.zip as a project file, or you can test it right away by downloading the PACKAGED version. NVIDIA multi-res and Oculus Forward Render available soon.

@Proteus :slight_smile:

Thank you for your involvement in my probs and with all your work. I’m currently using your last project. and I’m creating my new map with this new version.
It seems have a bug with your new teleportation methods and the rotate playground, If I stay press on the trackpad up I can tp in the air

@Diem Not sure I understand. You will only teleport on a surface which has collision (if not there won’t be a positive hit result), and only with a surface with a 90% vertical tangent. Can you upload a video? In the basic Vive Map level, it should work as expected. In your level, do you have invisible collision boxes? You can also change it to teleport only on navmesh.

Im not at home i’ll take à screen tonight

EDIT: After testing It’s seems to work perfectly. When I tested Yesterday I got only one ‘pillar’ from your new functionnality and now I got 4.
Dont know why, nothings changed.

@Diem Yeah you are right on these 2 things:

  1. Since approx a Vive update 2 weeks ago, approx 1/5 of the time the function get chaperone bounds doesn’t work in Unreal. So if you get only 1 pillar, nothing is wrong with your system. Reboot the Vive and everything should be allright. I should submit that to Epic.
    2( Yes there’s still a problem with the teleport on the air and I’ve brought a fix in the R/L Teleport function and in the R/L Trackpad Press:

&stc=1

&stc=1

With that everything should work. I’ll bring the fix to 1.12.1 tonight.

Okay I’ll wait your fixe dont really need it rigth now.

I’ve a question how do I build light? it seems since I add the c++ file, when I build I only got an instant message that said : navigation building completed.

BTW: I would like to have the possibility to toggle a spotlight when I pressa button but I can only do that with a stationnary light BUT like you know stationnary run terrible in vr, do you know some tricks ?

I know it’s a very silly question, but how do you disable this new FPS counter? Modifying the level blueprint setting “enable all screen messages” doesn’t seem to have an effect, and i can’t find the blueprint where you are printing this in front of the pawn…

Thanks a lot!

@PatimPatam There is no silly questions. The FPS counter is in fact a billboard floating in front of the pawn face, because it’s handy for debugging and illustrates 's plugin ParentRelativeAttachment. To remove it, go in the pawn and delete the component “Monitor” under ReplicatedVRCamera
@Diem If you get problem building light after having adding c++ class: In VS2015, after your game is loaded, go onto Programs/Unreal Lightmass, left-click and “build”. After that building your lightning should work

Let me do some tests with light.

Awesome, i will try this later today. Thanks again for all the great work!

Dunno if I’ve something wrong, however I’ve downloaded the files, added as a template and whenever I create new project based on the template Vive_Pawn_COMPLETE blueprint seems corrupted, missing grip/motion controller components, which makes dozens of compiling errors.

Thanks a lot guys for this template, and to for VRExpansionPlugin
@ Could you please check again if there’s a problem with creating a shipping build, today I’ve tried:

  • new project (4.12.5 engine), Blueprint - Blank, Mobile/Tablet - Scalable 2d or 3d - no starter content
  • downloaded latest plugin build (9c71372) and added it to Plugins/VRExpansionPlugin
  • restarted editor, enabled plugin
  • build > shipping > windows 64

PackagingResults:Error: Error Unknown Error

note: this template was not added, just the plugin.

Thanks in advance for any help! :slight_smile:

You have to follow the standard (currently) process of adding a blank c++ class to your project for it to compile out.
I’m not distributing a precompiled version for it yet because it currently changes far too often and I don’t want people slapping it into their engine folder and possibly have issues later on with a different (unrelated) project.

When it hits feature stability I will probably add a pre-packaged download that would be placed in Engine/Plugins instead of Project/Plugins and would work with blueprint projects without any changes.

Is it possible to upload a template with just the simple blueprints? It’s getting a little bit cumbersome and hard to keep up with plugin locations and engine versions

I believe that he has the plugin pawn separate, you should just be able to delete it from the template and it would remove the plugin requirement as nothing would be using plugin components then.

What do you guys @Proteus @ think about implementing source control for the template at this point? Do either of you know the best way to go about that? Seems it could be useful here and it would be helpful to us all to learn source control too, as it is not the easiest to implement in UE4, from what I understand. Thoughts?

Source control doesn’t play nicely with blueprints and lots of people are going to be editing the standard blueprints to suite their needs, for the Plugin it would work fine of course.

I mean I guess there is technically a diffing tool for blueprints now and a text diff for asset files. But it wouldn’t be a “easier” solution for the beginning user.

That being said, the template is already on isn’t it? You can run source control off of its main repository.

@Proteus

I cant find your solution (I’m pretty sure it’s easy to solve but I cant find how)
If it can help, here is a screen of my output log after building (without proteus solution) : Screenshot - b5ab7ab15103ab60e819c7c50c424a14 - Gyazo.

@Proteus and everyone else that’s contributed, thank you for making this template. It’s gone a long way towards helping me learn. Much appreciated.

Two quick questions that I haven’t been able to find the answers to so far in my searching around online. FYI, I’m using template version 1_11.

  1. If I enable Simulate Physics on a static mesh that has the Grab INT and Blueprints, the Grab function stops working. Is there a way for an object/static mesh/actor to remain grab-able even when that checkbox is checked?

  2. If I wanted an object to remain floating in the air after releasing the object (like fantastic contraption), any tips on how I could accomplish that?

Thanks again.