How could i make a VR system?

Hello Developers, I was just wondering how you would make a Roblox VR system I have tried with little progress to make the head camera and make the hands work I have tried things like making a parts CFrame the hand CFrame but it only works for the rotation and I have no clue how to make the head fit the characters first person’s head. If you could help me on this or give any Documents/Tutorials that would be awesome thanks!



Eek don’t really know this one. I would try putting the camera’s CFrame to the player’s head. If that doesn’t work then i guess try a tutorial.

1 Like

Thanks that actually helped a lot!! Do you have any recommendations on what I should do for the hands???


Uhh i don’t really know that one. I would want to say set some Oculus hand model meshes’s CFrame to controllers.CFrame or something, but controllers isn’t a variable. Roblox isn’t very good for VR games. Roblox might have VR hands working built-in though. Have you tried just playing a baseplate with your headset on? If so, does it already do the things you want?

That took me 6 minutes to write lol.

All it really does is give you a pointer no hands. So what I have tried is setting the Hand model CFrame set to the actual HandCFrame but it does not seem to work all it does is rotates the part in one spot away from the player or in its original spot it was put into.

Have you tried Position instead of CFrame? 'Cause CFrame acts funny with rotation

hm… Well i’m not sure if you can use VRservice:GetUserCframe(Enum.UserCframe.RightHand) to as position because it would pretty much be saying

gane.Workspace.Part.Position = (idk some CFrame)

1 Like

I am going to try and use something other than the CFrame of the controller and try to see if i could use the touchpad events to make that happen.

1 Like

Yeah it isnt working imma try further testing with CFrame

1 Like

To convert any CFrame to a Vector3:
Vector3(myCframe.X, myCframe.Y, myCframe.Z)
So with your hand thing it’d be this:
local Cframe=VRservice:GetUserCframe(Enum.UserCframe.RightHand)

local PositionOfRightHand = Vector3(Cframe.X, Cframe.Y, Cframe.Z)

Oh thanks!! also do you want to help on the project im making a game that will be compatible with both PC and VR and others too.

1 Like

Yes I will help with the game. And did using Position work?