ViewportFrame Release

Where is the BillboardGui parented? Make sure it’s not inside workspace. It must be parented to PlayerGui directly with the Adornee set to the part you want the BillboardGui to appear in.

3 Likes

Ah it works now, thanks.

Nice, this feature will become so usefull in so many ways. I am defintely gonna use it in new projects!

Wow! I have an idea of how I could use this in a room showcase!!

I’ve made some sort of “tool” (it is technically a script) that can use Viewports in 3D space with dynamism. It supports the creation and destruction of instances in real time as well as modifying these.

You can find the post for it here.

I will add some images for this later in this post.

2 Likes

mobile vr here we come!


you can try this here: Mobile VR Testing - Roblox
the gyroscope is a bit wonky though
(also the recording doesn’t show it well but it is running at 60fps)

16 Likes

To be honest, the best thing I’d love to see happen with these is this…
https://gyazo.com/8aaa86c1930c215b2a171a070b96b769

make my dream come true

7 Likes

I don’t think that’s really possible due to SurfaceGUIs not conforming to their surface like decals & textures sadly.

I’m not really experienced with this stuff, but I’m thinking that’s some sort of 3D object masking a GUI image…

Anyone have an efficient way of saving the “Frame” of a viewport frame? For example, a camera system that allows you to take a photo of what you’re looking at. Is there a way to save that frame that’s being rendered in the viewport frame? Sorry for a bad explanation, it’s hard to explain.

1 Like

Not necessarily a GUI that is being masked, but you are definitely correct about the masking. One possible implementation would be fetching a color from a texture based on screen space coordinates in a fragment (pixel) shader as the 3D object is being drawn. Using a GUI for that would just add an extra step. This kind of implementation would require direct access to the underlying graphics pipeline though.


@MrAsync You can clone all of the objects inside of the viewport of a camera as well as the camera’s CFrame at the time of the snapshot. To display the image you just need to make a new ViewportFrame that contains all of the scenery (or just store the clones there from the start) and make a copy of the camera with the captured CFrame.

Nope. You need to store the objects you want to render under the ViewportFrame, and there’s no way around that. ViewportFrames probably wouldn’t fit your use case.

I’m so glad to finally be able to use this on the Roblox Player!
I’m implementing it in some sort of avatar editor, and I have to say it’s a great feature!

9 Likes

I’ve finally made my TARDIS bigger on the inside!

https://twitter.com/dragonfrosting/status/1090479513551527936

It’s entirely based on a SurfaceGui which is able to move with the exterior. The only issue with it is that if the camera is too far to the sides, the ViewportFrame is unable to cover the portal and it appears blank.

9 Likes

I programmed a camera that creates images during a roller coaster ride :slight_smile:

Once the train reaches a position, a photo is taken.

Before

image

After

69 Likes

I love this feature and find it very useful, but does it work with SurfaceGui? I have tried a lot of things to have it work in my game, but it won’t show me anything

You have to parent the SurfaceGui to PlayerGui/StarterGui and then set the Adornee to the part.

2 Likes

It works with surfaceGuis but you need to parent the SurfaceGui to starterGui and set the SurfaceGui’s adornee to the part you want it to render on.

2 Likes

Anyone willing to show how to display a model in a viewpoint frame that you could right click on to rotate the model around and use the mouse wheel to zoom in etc?

Thought this was on the viewport farme by default, but it clearly has to be programmed manually.

If there is not already an open source library available, I would recommend scripting it yourself and asking in #development-support:scripting-support with specific questions when you get stuck (don’t ask for full code snippets without attempting things yourself first).

3 Likes