ViewportFrames of your character appear delayed

Making a clone of your own character on a viewportframe, then changing the Cframe on renderstep to make it match your real character Cframe looks delayed. The faster your character is moving, the more noticeable the gap becomes. Using different renderpriority values doesn’t fix the issue.

This bug showed up in my game without me having updated it and player incident reports about this issue showed up starting on Sept 29th.

Vid example:

Repro file: viewportframe_bug.rbxl (25.9 KB)


Maybe this is slightly off-topic, but when this is fixed you maybe can also place the viewportframe_bug.rbxl file in #resources? Since you now already made this public, I think some people would find this very helpful!
OT: I can recreate the bug without changing anything, it also happens in studio.

I don’t think it’s a bug. ViewportFrames have always taken a frame or two to update the render.

You set the character position in frame 1, and it’ll show in the ViewportFrame in frame 2.

Generally the only time it matters is the case you showed there in terms of trying to overlay them. But this is certainly not new - I had this many months ago helping someone else with a system similar.

It gets more noticeable the fewer frames are being rendered, (as the frames are longer and therefore so is the delay) so maybe that’s why some people see it more prominently than others. As you also noted, it’s more noticeable if you go faster, as you’ve travelled further from the last frame to the current one.

If ViewportFrames did do everything instantly it would be detrimental for many devices. If you’ve ever played a game on another platform with live mirrors on a low end device, it’s clear to see why. You don’t want the ViewportFrame to have the same priority as the actual world. It’s also why the Lighting is very basic in ViewportFrames. They aren’t designed to replace the world.

1 Like

Hi @mygame43, this is a bug caused by a separate performance improvement change. Thanks for the easy repro test case. We’ll put in a fix for this soon.



I thought I was the only person experiencing this, this started happening out of nowhere when I didn’t touch my code that was working perfectly previously


Oh my goodness, THIS EXACT SAME ISSUE started happening to me a few weeks ago. I know when this started happening (which is recently) because I noticed one of the effects in my game broke and reported it instantly. PLEASE PLEASE FIX! I can show a before and after video of the behavior if necessary but it’s pretty much the same thing OP has pointed out.

(sidenote: if I could make posts to Platform Feedback, this issue would have been visible to the engineers 20 days ago. I am super thankful OP was able to report this but if nobody else had this issue I had zero effective way to have this noticed and fixed. Devforums are a total mess.)

Hey @Qiblox is there a status update on the fix for this issue? The issue still persists for me.

Hi @Fluffmiceter, the fix is checked in and should be released and made live hopefully this week. I’ll post again here when it’s on.


@mygame43, @Fluffmiceter, the fix should be live now. Please let me know if it’s still broken.


It is working perfectly now, thank you!


This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.