[Tutorial Request] Blueprint - VR Asynchronous multiplayer

Not sure if this is the best place to post such a request, but it would be incredibly useful if Epic could provide a tutorial for VR asynchronous multiplayer - i.e. One player in VR using motion controllers (Oculus+Touch / Vive), the second using the PC screen and gamepad.

I’ve tried a variety of setups with no luck. Sometimes the HMD is detected, other times not (when playing in editor). Trying to possess the second player (client) fails, but I’m not convinced I’m doing this correctly.

Knowing the right way to go about this (don’t really care what the Pawns are, but they should be unique so the VR player can be customised further).

Once people have tried games like Robot Rescue in PSVR PlayroomVR, I’m sure they’ll see how much value such a setup has.

Thanks.

Here’s an example of what I’m talking about using the Vive:

https://youtube.com/watch?v=_oXluDBDXzA

Yeah, this is a feature UE4 doesn’t natively support out of the box. It’s actually not impossible, but it’s also not easy to do and would require dipping toes into the engine code to get working :frowning:

Just realised I actually meant Asymmetric(al) multiplayer, not asynchronous.

I got very close in some tests I did. I don’t see why this isn’t possible using blueprints. Initially I’d be happy to ignore the VR side and just get 2 players locally, controlling unique pawns which I’m certain is doable.

Hello Monophobe,

This is something I was actually looking into doing as well as an upcoming Twitch Stream. Spoke with our team here and they’ve indicated that in the not-too-distant future, we’ll allow you to override the mirror window view (where we now reflect the view from the headset) with another camera actor to achieve the local co-op (HMD vs Non-HMD setup). It might be doable in C++ (haven’t dug into the code side of things for it) but was planning to do a client/server setup where the server is in VR hosting clients in a 1v4 type of scenario. I’ll look into into incorporating local multiplayer into that stream as well (you can use the create player node in BP for this).

-W

2 Likes

What on Earth is async multiplayer?!

Are there any games on PC that do that ?

Exactly what the OP describes. Multiplayer with one machine; one player on PC and another in VR. It’s a built-in feature in Unity and lots of games do it.

The core of it is quite easy; mirror modes need to be implemented on a per-headset basis at the moment, but the code you’re looking for is in FSteamVRHMD::RenderTexture_RenderThread in SteamVRRender.cpp for the Vive and the equivalent function for other platforms.

I corrected myself in another post on this thread, I meant Asymmetrical multiplayer but can’t change the thread title.

I also posted a video of a games that’s just had a demo released to explain it. I’ve only seen this done elsewhere on PSVR, but I’m sure more will surface.

That’s great news Wes, I really look forward to it :slight_smile: I got as far as creating the second player, I just couldn’t get it to possess correctly (that or playing in engine was doing something strange with the game controllers). It did get me reading up on Run on Server, Multicast, etc. replication but I was clearly doing something wrong. For prototyping I don’t really mind if the headset mirror is there, but ultimately you’d want that hidden from the person using the monitor/PC.

Hey, is there any update on that yet?
I need a menu on the pc monitor where one person can influence the experience of the player for a project i am working on at the moment.
Is there a way to maybe just not render an overlay on the vive, but overlay that on the screen?

I’m excited about this feature as well, some great things could be made with this! +1 on the update question :slight_smile:

Any update on this?

Wes,

Did you ever get to do that stream? Looking to create a networked server-in-VR, 4 flat-screened clients setup situation exactly like the one you described.

Any updates on this?

1 Like