Most Effective Way to Create a 3D GUI

Hi everyone I was wondering what is the best way to create a 3d GUI in Unity? It’s GUI is only in 2d and I would like to make a 3d GUI in Unity but I’m not sure how. Also is there a way to convert Unity’s 2d GUI to 3d?

UnityGUI is (still) 3D and no way to convert. Look for GUI packages in the Asset Store. Some of the 3D GUIs are NGUI and EzGUI.

It’s not 3d it doesn’t have 3 dimensions or am I missing something? Can you make it so the GUI is a 3d object or fixed to a 3d object like a box and not fixed to the screen?

Is there a way to make one from scratch? I really don’t want to use those.

UnityGUI is currently fixed to screen plain. There’s no way to render it in perspective using the given matrix transforms, nor to render it inside the 3D world.

You should render textures on your 3D objects, using materials and atlases.

Every GameObject that has a collider component will respond to OnMouse events, so you could come up with a simple 3D solution based around that.

This seems to me to be your only option other than using a 3rd party package.

I was thinking of a 3d GUI yesterday. I will try to build my gui out of objects and place textures on it when I really do it.

cast a ray from the camera to where the mouse is pointing and create a 2D plane that it hits

you get the coordinates of this, then you just like layer the buttons or stuff on the same level, i use this for my turn based game gets me the squares the players clicking

i know other people use the collision shoot types methods to actual existing objects and i might sort of seem nuts, but all my input code goes through the same place xD

Could you please post some code of what your talking about?I have never used raycasts and I don’t understand how that would work. Can it be used with already setup GUILayout buttons Or am I going to need to change those in order for it to work?

Does that apply with instantiated objects?