Screen3D - A 3D UI framework that just works

not really sure why you’d need one, 99% of the time you only enable and update 2-3 offsets anyway cause enabled component offsets get applied to disabled descendant components

2 Likes

you dont know me son :fire: im the 1%

2 Likes

Amazing work, but does anyone know how to make the frame move whenever the camera moves too?

ik this is a very vague question, but i was wondering if custom camera scripts would affect this module? i have a script that almost completely overhauls the default camera script, however when i try to use it, any 3d gui becomes very buggy - specifically it vibrates and lags behind when i move. perhaps i can send you the camera script i have. thanks

here is the video of it happening

perhaps the problem lies in the camera type being set to scriptable as when i set it to custom, it works perfectly fine (however custom camera type doesnt allow for custom camera scripts)

Yes indeed.

It’s more than likely due to the render step and viewport usage to make this framework!

You’ll have to manually figure out a way to achieve what you want as unfortunately for right now this is probably the best implementation you’ll get

depends on how it got implemented

results vary from camera to camera but 99% of RenderStepped issues can be fixed by:

  • Using the developer version that uses BindToRenderstep
  • Messing with the BindToRenderstep order in the custom camera script or in the Component3D script. (usually the defaults should work though)

nuh uh the pre-release version uses BindToRenderstep now!!

thanks, however there is the possibility that it is the cameratype that is affecting the screen3d rather than the renderstepped. here is what it looks like when i set the cameratype to enum.cameratype.custom (the default camera type).

Edit: the video is not as bad as how it actually looks (the flashing and all)… i dont need an epilepsy warning

Oohhhh I did not see that! Thats pretty nice’

That’s cool! I can now make a floating menu in my game

Whenever I set a Frame with TextButtons (I assume this also goes for ImageButtons) to 3D, the AutoButtonColor no longer functions nor does it cause the cursor to change. However, Activation events (and other events) will still fire.
Is there anything in the works to carry these effects over?

is there a way to rename the surfacegui that the module makes?

I also use custom camera script and had similar issue, I think it happens when you’re using RenderStepped to move the camera instead of BindToRenderStep (and the engine just randomly picks either to move the screen3d or the camera first)

-- Instead of this
RunService.RenderStepped:Connect(camera)
-- Use this
RunService:BindToRenderStep("camera",250,camera)

The difference I got

2 Likes

grrr the new version uses BindToRenderStep!!!

also wait arent you the guy who made that one rhythm game

if component.surfaceGui then
   component.surfaceGui.Name = 'thingy'
end