How to render SurfaceGui on top of BillboardGui?

Hello! I am sorry in advance for my bad English. I have a problem regarding Gui. I am making a “void explosion tracer” in a spherical shape so it remains visible on parts’ surfaces for some time. Here is a demo of what I mean:


Traces on parts works perfectly fine. The way I achieved it is creating a SurfaceGui for each part’s face, and moving a Frame with UICorner to a center of explosion (to be short). Problem arises as soon as I want to add an “explosion effect” itself (which is just a sphere):

You can’t see the explosion tracer through this sphere, so I set the Transparency of black sphere to 0.05, which kinda works the way I wanted, but is very glitchy:

The trace on a part is either rendered behind of this sphere, or on top of it. I am not sure of what’s causing it nor how to control it. Setting AlwaysOnTop for SurfaceGui isn’t a solution since these traces are visible through other parts, but creates a very cool looking visuals which are excactly what I want to achieve:

But like I said, these are visible through all other parts which is a no-no:

And then it hit me - why use the sphere when you can use BillboardGui with a circular frame that has the same size as this “explosion”. Surely you can control order at which 3d gui render. However, I couldn’t find a way where I can force SurfaceGui to render after BillboardGui without the use of AlwaysOnTop, nor a completely different workaround:

To summarise it, i want to render purple tracer on top of black sphere/circle

Any help is appreciated!

P.s.: I just want to know if it’s possible, that’s not actually want I really want, but rather just to learn new “studio hacks”

2 Likes

Hello again, I guess. The answer was on the surface the entire time, I have already answered this question 10 days prior to creation of this post.

The answer is simple: instead of using a basic sphere or shenaningans with the billboard gui, I’ve used a technique from above – created a sphere with flipped normals (faces) in Blender and imported it to Roblox. The end result looks freaking dope, I instantly fell in love with it. I just need to make some fixes here and there, and actually apply this effect for all parts in “explosion radius”.

Result:


Basically, what I made is only an intersection of part and sphere is visible inside this sphere without complex UnionPart operations (or whatever they are called)

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.