How to make Cesium Tileset not receive decals

I’m using the default terrain tileset provided by Cesium. I want to prevent this tileset from receiving decals. In the Blueprint, when using the “Get Component by Class” node, I don’t see the “Cesium3DTileset” option. Instead, I see options like CesiumTile, CesiumRasterOverlay, etc.

Could someone provide guidance on how to properly set up the Blueprint to make the Cesium terrain tileset not receive decals? I’m looking for a step-by-step explanation or a Blueprint example that demonstrates this.

Thank you in advance for your help!

Hi @spaid_ue, welcome to the community!

First, Cesium3DTileset is an actor class, not a component one, so you can use the Get Actor by Class node instead.

As for disabling decals, I’m not entirely sure of the best way to do this in Blueprints. But I think this is a setting you can control on a material. Cesium for Unreal’s materials are quite layered, so this will unfortunately a multi-step process, but you can do something like so:

  1. Make a copy of the M_CesiumBaseMaterial material. This will be in the plugin’s Content/Materials folder. If you don’t see this, try making sure that Show Plugin Content is enabled in the Content Browser’s Settings.
  2. Double-click on that material to bring up the Material Editor. In the Details panel, search “decal” and set the Decal Response to None.
  3. Create a copy of MI_CesiumThreeOverlaysAndClippingAndWater. This is the default material that is used for Cesium World Terrain.
  4. Double-click on the material instance. In the Details panel, change the Parent material to the material that you modified in Steps 1-2.
  5. Finally, set this material on the tileset’s Material and Water Material slots.

Let us know if that works for you. :smile: