AlignPosition jitteryness with VR Hands while moving character

I’m currently making a VR project and I’ve pretty much hit a brick wall at the beginning.

For my hand movement, I used AlignPosition to position my arms to my hands, but

AlignPosition likes to jitter a lot when the Attachment1/Position is moving fairly quickly and causes visual stuttering to the hands

which is not ideal for a VR game especially when you are supposed to be shooting and moving at the same time.

The only reason I’m using AlignPosition is to add collision to my hands against surfaces, so if there is a better alternative for hand collision or a fix to AlignPosition jitter, please lmk

Video of the jitter problem:

1 Like

Since it looks like they only jitter when moving the character and not when you individually move each hand, try finding the change of position of the body and add it to the position of the hands each frame. Though this solution may be weird when walking into objects.

tried this earlier but the jitter likes to fluctuate :frowning:

Is your function RenderStepped? The issue might lie in the lack of frequency which handles the updating and moving to the position.

yea it is

That is what I was thinking about the frequency of the physics update, but I don’t have an alternative method for moving hands including collision

I’ve been working on VR recently and faced this same issue. The hands aren’t actually jittering (which can be observed by other players), it’s the hand movement relative to the camera that causes the jittering.

I’ve tried hiding the hands using physics and overlaying a set that are moved instantly to the goal cframes but the jittering still happens so I’m still looking for a solution. If I find one I’ll come back and let you know. :smile:

As others have said, this is caused by the camera rather than the hands. Make sure the camera CFrame is being updated inside a .RenderStepped loop. Otherwise, update the attachment positions in the same loop as the camera CFrame with the camera CFrame being updated after the hands.