Thank you for the continued updates, you’re a VR community saint in my book.
Keep up the good work dude.
Is the root component considered stable yet? It was causing some multiplayer crashes last time i tried it :’(
Another nice set of additions.
How long ago was that? I have been using only the root component for a long time now. There is some potential for misuse with it if you are resizing the capsule in an multiplayer environment without the server doing the same there will be movement judder, however that shouldn’t cause crashes. There was also a brief build about three days after it came out where the movement component was causing crashes too I guess.
All of my demo projects are multiplayer and I test them in multiplayer, though there is an unknown issue with upgrading projects to 4.13 that causes some sort of weird client host packet loss that I noticed but I haven’t been able to find the reason for yet (Allar has the same issue on one of his projects from what he has been posting).
Edit Also if you run into crashes specifically caused by the plugin, please let me know when and where they happened. I’m not the one receiving those crash reports the engine sends out ![]()
Yep it was maybe 3 weeks ago, pre 4.13 anyway. Now that i have migrated to 4.13 ill give it another go over the weekend!
Thanks for all your hard work! 
is there a dedicated area on Steam for UE projects like ?
It e-mails me your reply before the edit :p, in same section for VR look up Proteus’s template. It is at least a barebones start to using my plugin.
MitchMC has an all blueprint set of examples that would probably be easier for you to work with initially but if you intend to use some of the advanced features that my plugin offers you it would be more hassle in the end to start merging the two (if you don’t need the plugins features then just use his template to get you going).
Singularity when your hands get close I’m guessing, or something like it?
I implemented the bow example that was posted here into Mitch’s VR example system and noticed it.
When your secondary hand passes exactly 180 degrees around from its initial location relative to the primary hand the object flips over with my implementation. What I was noticing with other implementations is that it always happens on the Z axis (like dropping a gun down to face the floor). For 90% of how dual grip is going to be used I think my version is going to end up working better as it is far rarer for you to totally reverse your grip than for you to point the held object downwards / upwards.
In pool nation VR for example if you hold the cue straight down it will Roll 180 degrees around. The initial video I uploaded had it the exact same way but my newer implementation has it relative to the grip position instead.
My version
(P)rimary - (S)econdary
P--S initial grip
S--P roated while holding, will cause object to roll 180 degrees
S
| initial grip
P
P
| will roll 180 degrees
S
Typical version
(P)rimary - (S)econdary
P--S initial grip
P
| roated while holding, will cause object to roll 180 degrees
S
S
| rolls always
P
P
| rolls always
S
I think when I get free time I might be able to fix it by re-basing the final rotation back to the initial upwards vector before I calculated the secondary grip.
Also the documentation is now updated.
Hi,
Fantastic plugin, thanks for the hard work !
I’m using it as a base for my own locomotion system, and it’s coming along very well… but one of the things I want to do is allow the player to arbitrarily reorient the space around them by ‘grabbing’ it and turning it with their hand.
Right now, I’m doing that via the actor rotation functionality, but the problem there is it pivots from the center of the chaperone bounds. Is there anyway to achieve rotation from the player/camera location? Frustratingly, when I’m standing in the middle where the pivot is, I can tell just how great mechanic is… and when I’m away from it, it’s making me nauseous! D:
I’ve explored a few options with my limited knowledge, including moving the actor to the camera location, rotating it and then moving it back to the previous position… which does nothing as the two teleports cancel each other out.
Note to people wondering, I helped him with on Reddit messages, I sent him the rotating movement components offset pivot code to and told him to convert the operations to rotators for blueprint and use the pivot as the HMD. From the sounds of it worked so anyone else looking for it should be able to do the same.
Hi ,
Don’t think i came back here, but i’ve now implemented it with the root component code and have had zero crashes since. Only a few small issues related to my own code currently, so is awesome.
Thank you very very much for plugin man! Its a HUGE help! ![]()
Cheers .
Just to clarify on the solution though - rather than the C++ code from the rotating movement component, it was the rotating movement component itself that was useful.
Basically solved it by adding the movement component to the VRactor, and enable/disable it as required and update the pivot locations and rotation rate at run time with the VR HMD and the turning mechanic that you’re using.
Worth noting that solution works beautifully for my intent (as a repositioning mechanism)… but can be problematic for gameplay as it disables collision while pivoting.
You could have replicated the c++ code in blueprint as well, but I guess using the actual component would work. If you did it in blueprint you could have kept sweeping too.
I just committed a 4.12 branch and locked it as stable, I am going to move forward from here on out with 4.13 as the master branch supported base version so that I can remove 4.11 and 4.12 legacy support for the next version.
Edit Also sorry about it being slow past two weeks (and will be updated a little more slowly than before for a bit), my wife gave birth and that took some of my free time away :p.
Congratulations! It may be slower for more than just a bit, lol.
Quick question; I’m using blueprints and have the VRCharacter in my level but how do I access the motion controllers? Do I need to spawn them? If so, where do I attach them?
VR character comes with the motion controllers as children to the pawn already, if you make a blueprint with it as the parent then you can start controlling it and seeing the components more easily.
If you were to make a custom pawn then you would have to add GripMotionControllers yourself.
The VRCharacter is kind of meant to be an all in one pre-made of the various components (plus some features like navigation require it as it overrides some functions in base character).
I must have missed something then. The blueprint is a child of the c++ VRCharacter but the motion controllers aren’t visible.
The steps I took were;
- Downloaded 4.13 Re-Write commit 0bd77d0
- New Blueprint Project “Virtual Reality” template.
- Created “Plugins” directory and copied files across.
- Added new C++ class “MyVRCharacter” from Parent Class VRCharacter. Initial compile within UE4 was unsuccessful due to being unable to overwrite binaries so I deleted the binaries and re-compiled in Visual Studio.
- Created a blueprint child from MyVRCharacter.
- Created a blank level and added MyVRCharacter. The only property of MyVRCharacter I changed was “Auto Possess Player: Player 0”.
- Play in VRPreview. HMD tracking normal but motion controllers aren’t visible.
Oh, you need to attach something to them. They don’t have meshes, they are just the component themselves, what they look like is up to the user.
You can also pull the players SteamVR Controllers in with the SteamVRLibraryFunctions component and a procedural mesh component attached to the controllers, but since that is more complicated and you just want to test for now, just attach some spheres to the GripMotionControllers.
Doh! Got it. Thanks for the quick response.