Can I get a prefab to render in front of GUI buttons created in script?

I just want to do a fade to white between a menu button click and the level load.

So I’m using a flat 2x2px white texture as a prefab and resizing it using a script on instantiation.

I can get the white fade to render in front of statically placed objects (by playing with Z transform values), but my menu buttons are still showing over the fade.

Any way to get the white fade in to also cover the scripted menu buttons? Hope my explanation is clear.

Cheers.

You could hide the buttons.

The question is about OnGUI code, not game objects. It also wouldn't look good if you just turned the buttons off before fading to white.

Any OnGui code has to go in a GameObject... If you don’t want to turn them off, you can modify their alpha. Perhaps adding a Guistyle and changing the alpha value on normal/hover... :)

Or just use DrawTexture, as I mentioned in my answer. Also you can just use GUI.color to change alpha, you don't need to add styles or anything.

Thanks, I'll try putting it in OnGUI and see how that goes.

1 Answer

1

3D objects can never appear in front of OnGUI. Either don’t use OnGUI, or else do the fade using OnGUI also (such as GUI.DrawTexture).