ViewportFrame Release


Whilst working on a game, i’ve noticed a very minor yet annoying white outline around any model placed inside of a ViewportFrame.

Not sure if this has been addressed already, but if there is any kind of workaround, i’d love to know!

Yet again, this is a very minor flaw but I find it slightly degrades the quality of my game.


That outline is due to antialiasing. It’s always the same color as the BackgroudColor3 property of the ViewportFrame. There’s no workaround.

Try your best to match the BackgroundColor3 property of the ViewportFrame with the color of its background or to the color of its contents to hide the outline.


Try getting around this with an extremely low field of view camera at a distance. This seems to compress out or totally remove a large majority of the antialiasing. You’ll also want to make sure that the viewportframe isn’t too big, IIRC the maximum resolution was something like 1024x1024…?


That’s just an optical illusion - Mind you, a non orthographic camera will show depth rather obviously when used like this.


Another issue i’ve run into is tweening models inside of a ViewportFrame…

I tried using Motor6D objects to tween a model yet only one part moves. In the workspace, this method works fine… Is there another method for tweening objects inside of a ViewportFrame?

split this topic #298

A post was merged into an existing topic: Featuring early adopters of Roblox technology


This is a well needed feature and can open up new opportunities for developers to use in their games.


I wonder if you could use ViewportFrame to make a Camera/Screenshot system and use datastores or something to store the environment and camera data :thinking:


Yes, you can. However, you’d need to save positions and object data in order to recreate them when loading. I’m excited to see someone do it.


I was thinking of trying it, you’d enter “camera mode” by pressing a key or GUI button that would duplicate everything in Workspace into a ViewportFrame (but only one time, not every frame so it wouldn’t be that intensive) and you’d basically be in first person, you take your screenshot (in the paused environment) and it will save it to a datastore.

Then whenever you need to view it, it would bring up a loading screen and generate a ViewportFrame with the datastore previously.

I think it could work.

EDIT: If you wanted to clean it up you could use that camera function (I forgot which one I think it’s WorldToViewportPoint something) and remove parts not in your view. (and maybe use magnitude and remove parts too far away)


The problem at the moment is that, although this idea is good, when you capture a frame, the render is limited graphically.


To store this effectively you’d need to compress the world data into a string that you could encode and decode.

Like converting a table with Json, but with a lot more information.


Dang that sucks :confused: surely there must be an efficient way?


Yeah, write a compression algorithm for converting part data to string.

You could also try the Json method, I haven’t tested it yet.


Assuming this is a bug but please correct me if I’m wrong.

It seems that viewport frames don’t display surface gui’s?

Seen here is a screenshot of a train I’ve built, being viewed in a viewport frame. The headboard and number at both blank but in game they indeed have text on themimage


It’s not supported intentionally for now: