Unreal Engine Livestream - Creating a VR spectator camera - Feb 21 - Live from HQ

On this week’s livestream, learn how to create a project agnostic, VR spectator camera in your UE4 project. Our team will also demonstrate how it can be used to record trailers for VR games, or to create local asymmetrical multiplayer games. Make sure you have 4.21 installed if you want to follow along!

Thursday, Feb 21 @ 2:00PM ET - Countdown


Brodin - Community Manager - @victor1erp
Amanda Bott - Community Manager - @amandambott

UPDATE: The new VR Template in 4.27 and later versions contains an updated version of the VR Spectator!
Livestream Project files (you must be logged in to the forums to access)



Excellent, Looking forwards to this one,

Just in time for a project I’m working on!

I hope this will be covered in the live stream, but just in case it doesn’t, how to implement on screen UI buttons (Widgets) with mouse click events for the spectator?

Looking forward for the stream.

Exactly what I need, thousand thanks!

Awesome! Would be interesting to hear how one would add UI on top of the spectator screen (if at all possible)

This sounds awesome! Could you guys maybe touch on creating a VR visualization with animated elements? For example, a spaceship that shoots down another spaceship? I’m just wondering how to animate all of this within UE4. :slight_smile:

I’ll be adding that to the project, but it should be known that the blueprint implementation is a hack (placing a 3d widget infront of the camera). It works though!

EDIT: By “the project” I mean the sample project that will be released. I’ll update this thread with a link once it goes live.

Great training stream, . Do you know when we’ll be able to get our hands on the sample project?

I’ve updated the post with a link to the README and project files, let me know if you run into any issues.

Can you do more VR? This episode was great!

Does the included project solution for the UI interaction work if you want to use it to focus on a text input and use the hardware keyboard for it?

Sure does, but make sure you focus on it as such:

This is exactly what I needed thank you so much, but my xbox controller input isn’t working. I made sure that its in the input and that I connected it correctly in the spectator component, but I still can’t move the camera with the controller…any ideas?

Did you try it with any other application and/or game? All you have to do is to add Gamepad Thumbstick X/Y to the CameraMove(Forward/Right) input bindings, and it’ll work.

Thanks a lot , that did the trick ;).

I have another question, this one is probably trickier.

Is it possible to have an application running on two screens, one of them being the spectator camera covered in the livestream, and another one just displaying the usual HMD livefeed? I’m working on something funny with green screens, but only want to layer real life images in one of the screens but not the other. By simply switching the Spectator mode from Disabled to SingleEyeCroppedToFit I get the transition between both working just fine, but unfortunately, since it’s the same window, one of them is gonna have unwanted green screen layering.

Thanks in advance and keep up the good work !

Really nice , I’m trying to prototype an asymmetric VR co-op game on one PC .
I’m quite new with BP .

What do we have to change/add to be able to use the standard 3rd person character and animations that comes with the engine content ?
Everything is set up to target a pawn actor.


I don’t think this is possible without modifying source code unfortunately, and I wouldn’t know where to begin. I’d search and see if people have been able to do “split screen” but on two monitors. nDisplay might also be an option, but I’m just brainstorming here.

I’m assuming that you’d like to use the 3rd person character BP for the player controlling the Spectator Mode Camera. You can’t use “Add Movement Input” without possessing the pawn, and since our player controller is possessing the VR Pawn, the workaround would be to use an AI Controller for the 3rd person character, and add the SceneCaptureComponent (just like in the example project) to it.

Thanks a lot for your reply .

Would it be possible, using this method, to recreate the same walking/jumping effect that a normal character has and the interaction with other actors ,such as pick up or move an object in the scene?

Also , for the only purpose of the VR asymmetrical local multiplayer , could this tutorial be more sutable for my needs , instead ?

So I would only need to somehow add the Vr Player in it .

Thanks in advance.

Yes, but you will have to do the input similar to how we did the flying camera to execute walk/jump/etc.

It’s a good tutorial but in this case we can’t use two player controllers like a traditional local multiplayer game does. The tutorial series then goes into how to set up a networked multiplayer game which we don’t need since everything is local.

I know this is a bit late to the party but I am stuck on a part of the application and thought a little help could be useful.

Is it possible to use the actual mouse cursor on the window to work with the widget interaction instead of having a world cursor for the widget interaction component?
When I set the mouse cursor to be visible and click on the window the widget interaction gets all messed up. and the mouse goes off bounds on the window.

Thanks a lot in advance and I hope I am not doing something terrible posting here after this time.