Differences between Unreal and Xenko on Emissive materials

Hi,
I was trying to replicate this Unreal material in Xenko. I have “reverse engineered” the Blueprint into xksl. Perhaps I’m expecting too much from Xenko, but I noticed that the final appearance is quite different.

On the left is Unreal, on the right is Xenko. The unreal scene has been obtained by disabling all post-processing effects but bloom. The material has been created through a blueprint by following the author’s instructions.

The image on the right is from a running Xenko app, where the shader has been reverse engineered as previously mentioned. In order to get something approaching the image on the left, I have kept enabled Depth of Field, Bloom, and Bright Filter. All are at their default values. Unreal does not allow (AFAIK) to set the Emissive intensity. In Xenko I had to put an intensity value of 10 to get some glow. There are no lights in both scenes.

As far as I can tell, the shader is working as it should. The edges are being calculated in exactly the same way. It is the bloom effect that is not doing its work. Now, I understand that Unreal’s bloom and Xenko’s might have been implemented differently. However, the most striking difference is the absence of glow in the closest edge, whereas Unreal’s glow on the farthest edges is less pronounced. This effect (or lack thereof) makes me wonder if Xenko’s Bloom is working correctly, because the closest edge looks flat shaded.

So, my question is: is Xenko’s bloom not working correctly, or have I set Xenko’s bloom incorrectly? Which post-processing settings should I use to approach Unreal’s rendering?

In theory, one should be able to get Unreal’s effect by using a classic Gaussian blur post-processing effect, so I was wondering whether it’s just a matter of different settings, or if I have to re-implement the Bloom algorithm, and how would I do it in Xenko?

2 Likes

Could you please disable DoF temporarily? I am afraid what you are seeing are DoF artifact (there is something only around the edges, but nothing inside).

You could then make sure Bloom+Tonemapping works, and maybe adjust parameters.

Thanks, disabling DOF got rid of those artefacts on the edges. I played around with different settings, but it seems the glow is still coming only from behind the object. The front edges do not glow at all. From the picture below you can see different bloom amount settings.

Could it be that the bloom effect is being rendered before the rendering of the cube? This would explain why it appears to come from behind, as it would be overwritten by the cube. However, the current graphics composition setting look like the default ones:

  • Layer 0 Output RenderFrame
    Clear RenderFrame
    RenderCamera
  • Master Output: Master
    Render Effect

Following up on this, this is a great thread. We’re you able to get it rendering similar to Unreal?