WHAT
joins us to discuss the new VR Template and all of the cool features built in. With this update to 4.13, you will be able to craft immersive virtual worlds with easy interactions. Come and learn all about these tools as explores and explains the nuances of designing in VR.
WHEN
Thursday, September 29th @ 2:00PM ET Countdown]
WHERE
WHO
Game Programmer - @t_looman]()
Feel free to ask any questions on the topic in the thread below, and remember, while we try to give attention to all inquiries, it’s not always possible to answer’s questions as they come up. This is especially true for off-topic requests, as it’s rather likely that we don’t have the appropriate person around to answer. Thanks for understanding!
I’d really like to see a gameplay orientated player pawn instead of a “ghost with floating head and hands”. A VRCharacterActor that has full level collision like a standard Character where the collision follows the HMD. What would be the best way to achieve this?, and is it something you’ll be looking to include in a VR Template in the near future?
#1 How do you connect/replace an object to the controller sockets? (Vive) Example pick up a gun and have it stick until you drop it. #2 How do you disable the rotation effect when teleporting? (Vive) #3 Talk about the rendering options that have been disabled. (Vive/Rift)
Question: How can you manually add extra throwing power when throwing physics objects? For example, I made a grenade, but it requires me to swing a ridiculous big arc to throw it far enough.
I agree with this. I’d like a full body template. (which you can complete with a full body IK system to make sure the arms/body are bending nicely with the hand/head movement or whatever other VR controls you use) I’ve always preferred “True” first person even in non-VR games. Floating Arms with no body always felt like sliding along on ice, not to mention how unnatural it looked turning in older games. I realize it goes against the minimalist “template” mentality, but on the other hand the more you leave out, the more people will have to spend time implementing what some consider basic requirements. Granted there’s a line between template and making someone’s game for them.
IMHO Room scale VR support should definitely be kept in mind since Oculus supports up to 4 sensors now, not to mention other recent factors will be driving more people to Vive probably.
Also hoping to hear about how Forward Rendering is progressing.
For both #1 and #2, the answers are in the sweet, sweet Blueprints which have been created for this template.
**#1: This is already happening when you pick up the blue cubes in the “MotionControllerMap” found under “Content/VirtualRealityBP/Maps”.
**
If you notice when the motion controller “hand” gets close to an object, it changes pose, rumbles, and most importantly allows you to pickup and drop the blue cube it is close to. This is all outlined in the “GrabActor” function of the “BP_MotionController” blueprint found in “Content/VirtualRealityBP/Blueprints”. You might have also noticed that you cannot pickup just any actor in this level.
So if you want to be able to pickup/drop a gun, you will need to:
Make an actor similar to the “BP_PickupCube” found under “Content/VirtualRealityBP/Blueprints”. You can simply duplicate the blueprint, give it a fancy gun name (I like “MasterBlaster”), then open it replace the mesh to your gun mesh and (optional) update the collision mesh from sphere.
After you create the new gun blueprint, just place that new blueprint in the level (make sure it is above the ground!)
Launch and have fun!
#2: There are two blueprints which are affecting the teleport rotation: “BP_MotionController”, which looks to be the meat and potatoes of the actual rotation functionality and “MotionControllerPawn”, which looks to be giving the other blueprint instructions on how to rotate.
So knowing that, you can either change the instructions that are being given (MotionControllerPawn) or change how those instructions are being received (BP_MotionController) or some combination of both.
The easiest way is to change the instructions being given so that it is always giving the rotation you want (0,0,0).
To change the rotation being given:
Open MotionControllerPawn found in “Content/VirtualRealityBP/Blueprints”.
In the Event Graph, you will see a setter for “Teleport Rotation”. What this is doing is setting the 'Teleport Rotation" value of the “BP_MotionController” blueprint to the value received from the motion controller thumbstick (Vive touch pad).
To stop this from happening, you can make sure that it always sets it to nothing. To do this, use the “Make Rotator” and then connect it to the “Teleport Rotation” input of the setters for both the right and left hand sections.
To change how the rotation is being received:
Open the “BP_MotionController” blueprint found in “Content/VirtualRealityBP/Blueprints”.
If you look at the variables tab, you will see a variable named “TeleportRotation”. Right-click on this and select “Find References”.
The search will return 2 places this variable is being used in this specific blueprint: “UpdateArcEndpoint” and “GetTeleportDestination”.
So under the “Teleportation” category of the Functions, you will see “UpdateArcEndpoint” and “GetTeleportDestination”.
Open each and you will find how that “Teleport Rotation” value is being used.
Hope this helps and check out the Twitch today for the answer to #3!
Exactly what bits and pieces need to be migrated from the template project to a completely blank project to allow MotionController (gripping hands) and Teleportation. I have ‘just about’ managed to get a new level set up within a VR Template, but I’d like a clean start.
How I can Teleport on top of a box or stairs (I am coming at this from an architectural visualisation background so need to navigate around large buildings)
Do you know if they are currently working on a 4.13 branch? Is UE4 trying to implement any of it into their branch?
Could you give us a couple gotcha’s to be aware of when working with VRWorks? Like only a certain type of lighting will run …or certain effects won’t play nice?
I have been looking for something like this as well. I know we can’t do collision on stuff they walk into, but leave it to the devs to decide what hits what, eh?
Also, has anyone tried to package the vr_template? I have created a new project, selected it and just tried to package and I get fatal error in 2 secs.