[SOLVED] Gaussian Splats Render Order Error

I am currently encountering an issue where splats that are farther from the camera are rendered in front of splats that are closer.

I suspect this behavior is due to the exterior of the ‘Room’ I am modeling being an encompassing splat. This might disrupt the rendering order, causing smaller splats inside the ‘Room’ to appear as if they are farther away than the room’s boundaries.

Example (upside down bench):
Expected vs Actual

Is there any way in the Editor, or through scripting, to force the smaller Splats to be displayed before, the bigger splat, when you are closer to it?

@slimbuck

1 Like

Hi @Robert_Minea ,

Yes you can force the render order by adding the splats to multiple layers and then ordering them correctly.

Btw we plan to implement global ordering of all splats in the not-too-distant future.

Thanks!

Hey there @slimbuck , thanks a lot for the answer!!

Indeed in the end I did some reading and that is what I did, I forced the Layering.

But if I may give a pointer (you might already be aware of my two cents), from what I saw it seems like the priority is decided depending on the position relative to the center of the entire Gaussian Splat Entity.

For example, if you are in front-right-side of a Table Splat, and on the right end side of the table splat there’s an object, when you pass the 75% point (the middle of the right side of the table), suddenly you are of course closer position wise to the table center, than the object on the far end of the table, thus the current render priority will suddenly render the table as if it’s “above” the object that is actually on the right end of the table.

Will the global ordering of all splats fix this? (I think it will, but won’t it be too computationally expensive?), wouldn’t it be an idea to also allow the user to trace a low-poly region delimiter that will allow all the splats from a specific region to be rendered before something that is further away?

It’s just a small wild guess, I have the feeling that an ordering of all splats (since they are on the order of millions in higher-definition splatting) might make the rendering process slow

BTW you have one of the best tools around for Splat Editting, keep up the amazing work!! When I have the time I’ll take a closer look at your Open-Source Engine, great stuff!

1 Like

Hi @Robert_Minea ,

Yep global ordering will fix all ordering issues.

And the cost is probably not quite as big as you might think. We’ll still be rendering the same number of particles as before, it’s just we’re sorting them all together.

Thanks!