MSAA disable when turn on other postprocess dynamically?

Using samples = 4 after creating DefaultRenderingPipeline that’s perfect effect on my project. When i try to turn on other postprocess(bloom, sharpen, chromaticAberration…) dynamically, the antialiasing didn’t work anymore. No matter how to setting samples, it had no effect.

Do you notice the same effect here - https://playground.babylonjs.com/#Y3C0HQ#650 ?

@DWork this definitely sounds like a bug, could you repro in the playground ?

I’m so sorry that my project can not be post to PG, because it’s too large, but the way to create postprocess just like PG https://playground.babylonjs.com/#Y3C0HQ#650. I had compare to the examples for all properties in DefaultRenderingPipeline, the result was almost the same. It’s has been over one week, i found nothing. I suspected there’s something wrong with ‘_MSAAFramebuffer’.

I ll have a look shortly

@sebavan I had found the problem my project. I added MotionBlurPostProcess in my project that the samples of mobtionblur will override DefaultRenderingPipeline. Is there any way to solve this conflict?

Let s add @julien-moreau to the thread as he is the daddy of the motion blur.

Hi @DWork !

Can you try to set the same samples count in the motion blur post-process? Like myMotionBlurInstance.samples = myDefaultRenderingPipelineInstance.samples.

Maybe the Default Rendering Pipeline and Motion Blur are not using the same render target textures. The MB post-processes uses at least geometry buffer renderer or pre-prepass renderer

1 Like