Default Rendering Pipeline Affecting GUI

Hi All,

I’m trying got use the default render pipeline on my scene, the effects are working exactly as desired on my meshes. However, they’re also being applied to my UI elements, which I do not want.

I’ve reproduced the issue in this playground: https://playground.babylonjs.com/#ZI9AK7#1534

In the Playground that demos the options int he render pipeline, the UI is not affected: https://playground.babylonjs.com/#Y3C0HQ#146

I can only think this has something to do with the difference between CreateFullscreenUI() and CreateForMesh? Is there anyway of disabling the rendering pipeline effects for the CreateForMesh UI?

Thanks in advance,

Joe

Unfortunately no as the mesh UI is a texture inside the scene (which is affected by the rendering pipeline) :frowning:

Is there no way of rendering two cameras at the same time, or something like that? With the effect on being applied to the first camera?

I understand that’s how Unity’s Camera Stacking works?

I’ve managed to add world-space UI elements into the scene, that are then not affected by the DefaultRenderPipeline, however, the linkWithMesh doesn’t seem to work when applying the layerMask:

PG: https://playground.babylonjs.com/#JU1DZP#31

Got It!!!

PG: https://playground.babylonjs.com/#JU1DZP#32

Turns out the layerMask was working perfectly, however the FreeCamera was not moving, so the perspective to the UI element was always the same, which gave the illusion of the linkWithMesh not working.

The trick to get this to work was to then make the SecondCamera identical to the first camera. Then add an onViewMatricChangedObservable() on the first camera. When it’s view updates, copy the parameters over to the second camera too.

1 Like