How to make gui disable in DefaultRenderingPipeline?

Using bloom postprocess will impact on gui, how can i avoid it?
0220111234757

Hey @DWork , how are you doing?

In order to avoid having the bloom effect applied to the UI you can render the UI using a diferent camera than the one used in the DefaultRenderPipeline.

Just create a new camera and set its layerMask property to some value that you will used for the UI rendering (like 0x10000000 for example). Than set this same value to the layerMask of the GUI.AdvancedDynamicTexture. This way, the new camera will be responsible for rendering the UI and It should not be affected by the post processing effects.

Just make sure that you assign both camera to the scene.activeCameras property.

This example show how to create a camera dedicated to UI rendering in order to avoid it been affected by post processing: https://playground.babylonjs.com/#5XB8YT#1

OK, the other question is when i use more than one camera(maybe 4 or 5) in scene, does it have an impact on performance?

That will heavily depend on how much things each camera will have to render. If you add 5 camera that render nothing, the impact on performance should be fairly low. If each camera renders all elements in the scene you will effectively multiple your render time by 5.

@srzerbetto thanks for you answer :wink:

Hi @DWork just checking in, was your question answered? :smile:

1 Like