I’m using Cesium for Unreal Engine on a Macbook Air (M1) and so far everything works great.
The only issue I’m facing currently is a weird flicker when using Cartographic Polygons.
I’m on Unreal Engine 5.2.1.
Please take a look at the video for a better understanding of the issue.
I’ve tried with the default 4-point polygon and the same thing happens there as well.
Any ideas on how to resolve this?
That looks like a strange error. Can you share what Cesium for Unreal version you’re using? We’ll see if we can reproduce it on our end.
Sure, here are the details:
UE version: 5.2.1
Cesium for UE version: 5.2.0
Hardware: MacBook Air M1 2020
OS: macOS Ventura 13.4
Please check the Cesium for Unreal version in the Edit->Plugins section of the Editor. The Epic Launcher just displays the UE version rather than the plugin version, for some reason.
Based on your video, I have two guesses:
- It’s depth fighting caused by two overlapping tilesets. How is your level set up?
- It’s a problem with Unreal’s “Dither Temporal AA” node. Perhaps an incompatibility with the M1, or perhaps you’re not using Temporal AA and so it’s causing artifacts instead (we’ve seen that in other contexts). If this is the problem, there are instructions for working around it here:
Forward rendering, MSAA, black squares and 'dithering' artifacts on terrain - #6 by Kevin_Ring
I see. The Cesium for UE version is 1.29.0
There’s no overlapping. In the scene, I only have a World Terrain 3DTile and a Melbourne 3DTile.
Hiding the Melbourne Tile doesn’t fix it either (as you can see in the video I’ve shared).
DitherFade material layer from MI_CesiumThreeOverlaysAndClipping didn’t fix it either.
One thing I’d like to point out is that the issue occurs only if I use Cartographic Polygons for Clipping. Otherwise there are no artifacts.
Also, the flicker happens only if the Cartographic Polygon is within the camera’s frustum (see video).
Are you only seeing it on the MacBook? I don’t have an M1 machine to test with myself, so hopefully it happens more generally. Can you please provide detailed step-by-step instructions for reproducing the problem? Preferably starting with the Cesium for Unreal Samples project. I can see that there’s some sort of problem in the video, but I need to be able to reproduce it myself in order to debug it.
Sure it’s pretty straight forward:
- Ensure UE 5.2.1 is installed.
- Ensure Cesium for UE 1.29.0 is installed for the engine.
- Create a blank Cpp project.
- Create a new empty level, save and open it.
- Connect to Cesium ion.
- Add a Cesium SunSky to the empty map.
- Add a Cesium World Terrain + Bing Maps Aerial Imagery tileset to the level.
- Add a Cartographic Polygon. Place it anywhere near the terrain.
- Attach a CesiumPolygonRasterOverlay component to the World Terrain tileset.
- Add the Cartographic Polygon to the (previously empty) list of Polygons for the CesiumPolygonRasterOverlay component.
At this point the World Terrain has a weird flicker near the cartographic polygon. (only if the polygon occupies space on the screen).
If the camera points somewhere else(from the polygon) or zooms really far away(from the polygon), the flicker goes away.
Thanks for the detailed instructions. One of our team members with a Mac was able to reproduce this bug, and I’ve written up a Github issue for it here. I’ll update this thread when we have a fix!