How can i possibly create this kind of system

i want to achieve something like this system for a game i’m making in roblox that’s about it

i tried making it but failed miserably

the game’s name is MADiSON that’s where the clip is from

3 Likes

Seems to be a 3D object, I think it’s also using some functionalities from the regular camerascript for the rotating. And matching the CFrame of the letter with the camera’s CFrame.

Not 100% sure though.

1 Like

i tried using a viewport frame with a camera but that seemed to not work

1 Like

Yeah seems like a very complex system, i’m not too sure how to do it myself.

One thing you could actually do (although it may not be allowed) is use a third-party software to view the client script that is doing this and see how the code actually runs (since clients are able to view local scripts and i’m pretty sure this is one). I think you know what I’m talking about.

1 Like

i learned that it was made with unity i’m not really familiar with C# so even if i did that i wouldn’t understand anything if it was unreal i would maybe understand

Ohh this is not a roblox game? I’m not actually sure this could be created with luau. Since lua might not have this sort of fuctionaility, since you know other languages have more libraries and waht not.

i think i saw some games use this type of system i’m not sure the name of the game though it might have been used in the mimic but i’m not pretty sure about it

You can probably do it by “attaching” the part to the front of the camera, and then calculate mouse delta (which should be a 2D vector) and rotate the model with something like this:

Vector3.new(delta.X, delta.Y/delta.X, delta.Y)

Play around with these components and you might achieve what you want.

Take this with a grain of salt though, I’ve never made such a system before.

2 Likes

i’ll give that script a go to try it out thank you guys for the help

i got some progress but it is kind of mediocre it could’ve been better that is
but here is what i got


it might be bad since I’m not a professional luau scripter so yea

That looks pretty close to what you want to achieve if I’m not mistaken, just divide the delta by some number and you should get promising results.

Also maybe make the Y component of the vector X/Y instead of Y/X that might also help.

But yeah, don’t take this approach for granted, there’s probably a better way to do this. This is just how I would do it.

it is working now… but i couldn’t make it so it had a text on it with surface Gui but it works in general i do not know how to do that though

Just take it out of the viewportframe all together. Position it to the cameraCFrame + Zoffset every frame.

1 Like

i did all of it thanks to you it worked but i have a question can i make a surface gui selectable behind 2 things one being another surface gui and in that has a imagelabel and on top of that is a particle Beam i don’t know if this goes on scripting but yes

You can put a surfacegui behind the object, although I’d recommend using a viewportframe for the stuff instead. It makes it all way easier. You just gotta do the camera stuff right. To then not have the “borders” cutoff, you just extend it across the entire screen.

I don’t understand why it wouldn’t work in a Viewport

1 Like

no no not that pick up system thingy i’m talking about another part like i made crt tv and it has a beam effect and another surface gui and another one which has the texts and stuff the other has a tv effect
image
the one highlighted is the second layer the other one being the first layer

Ah now I understand, Roblox indeed doesn’t show those effects on top of the object when viewed in a viewportframe.

A solution on that side would be making the effects in a different method, but that too is a hacky method.

I kinda wish Roblox had ViewPortFrame options to render those…

Putting it in workspace is a less hacky method then, but you might have issues with parts overlapping.
You can make the buttons in a ScreenGui, add the object in workspace and have the background also rendered in workspace on a SurfaceGui.

You need some way to calculate what distance from the camera it should be and what the size of the background needs to be. That should be the most difficult task, but there are more people who did such a thing so going through devforum can help with that.

The only issue you might get is the part or the background behind the part overlapping with other parts in workspace.

2 Likes

You could probably use radians to rotate the letter

1 Like

Yeah my idea was a bad one, use roblox camera system.

1 Like

i just retextured the texture and put the text there and it worked and it looked better honestly since i edited it added some effects but thank you i’ll mark it as a solution tho

1 Like