I want to use two or more terrain in ue.For example,I have terrain1(range E110~E120,N10~N20) and terrain2 (range E110~E120, N15~E25).I don’t want to merge these terrain or rebuild terrain. I trying to add multiple cesium world terrain nodes,but it doesn’t work properly. Is there anyway to solve it?If possible,can I decide which tile to use when overlapping.
Thanks.
In what way is it not working properly?
Flashing is severe in areas where the terrain overlaps, especially when the camera is moving.
Missing tile,like this
Right, if your terrains overlap, you’ll need to do something to cut away the overlapping bits. You could use a cartographic polygon for that:
Are you sure you can’t merge the terrains? That’s likely to work a lot better.
It seems like a lot of work.Thanks for your answer.
Another question:
Add two Cesium World Terrain,add CesiumTileMapServiceRasterOverlay node under both terrain node.Then set the same URL for these two rasteroverlays.Now the world seems normal.,even if the terrain is different.Is this situation normal?
I’m not sure what you’re asking. If both terrains are Cesium World Terrain, then both are the same terrain, right?
Like this,Terrain2 is copied from Terrain,All settings are the same, except for the terrain’s path.The terrain range one is (E110~E120,N10~N20) and the other is (E110~E120, N15~E25)
If any rasteroverlay node is removed,it will cause missing tile that I described earlier.
If at least one rasteroverlay node’s url is not null and valid,the world seems normal.
I don’t try both rasteroverlay node set different url,because I only have one tile.
Cesium World Terrain is a particular dataset, Cesium ion asset ID 1. Are you saying that neither of the objects you’ve named “Cesium World Terrain” are actually “Cesium World Terain”, but they’re instead two other tilesets?
Named “Cesium World Terrain” is the default name.I always thought this node was used to load terrain and TMS .Each node have two tilesets,one is terrain,one is TMS.
“Cesium World Terrain” is not the default name for a Cesium3DTileset. Perhaps you’re adding Cesium World Terrain using the quick-add panel, and then modifying it (so that it’s no longer Cesium World Terrain)?
You probably need to walk me through what you’ve actually set up. A Cesium3DTileset can’t access TMS directly, but a raster overlay can be used to drape images from a TMS over another terrain surface. I think that’s what you’ve set up, but I can’t quite tell from your explanation.
Yes,I use quick add panel to create the world.Then the following this:
1:add sun sky node;
2:choose “Cesium World Terrain” ,change “source” to “From Url” and then set url to my terrain,like “file:///I:/Terrain1/layer.json”
3:Under “Cesium World Terrain” ,remove "Bing Maps Aerial " node.
And then add CesiumTileMapServiceRasterOverlay.
4: Set CesiumTileMapServiceRasterOverlay’s Url to my local TMS path,like “file:///I:/TMS/tilemapresource.xml”
5:Copy “Cesium World Terrain”
6: Set “Cesium World Terrain2” Url form “file:///I:/Terrain1/layer.json” to “file:///I:/Terrain2/layer.json”
So far, the world has been able to load my terrain and TMS satellite footage normally.Two terrains coexist in the world.
7: Set “Cesium World Terrain2” 's CesiumTileMapServiceRasterOverlay’s Url to null or set “Cesium World Terrain” 's CesiumTileMapServiceRasterOverlay’s Url to null .The display is still normal.
8: Delete any CesiumTileMapServiceRasterOverlay node from “Cesium World Terrain2” or “Cesium World Terrain”,it will cause tile missing.
If you use the “Blank 3D Tiles Tileset” button instead, you won’t have to remove the Cesium ion raster overlay, and the tileset won’t have a misleading name:
In any case, now that I see what you’re doing… If you have two terrains that overlap, and you delete the overlay from one of them, then depending on which terrain happens to be on top at any particular location you’ll either see the textured terrain, or the untextured one. So your last screenshot is normal and expected given what you’ve set up.
I don’t know why setting the URL to null (rather than removing the overlay entirely) doesn’t do the same thing. Most likely the tileset isn’t refreshing with the updated overlay, in which case clicking Refresh Tileset on the Cesium3DTileset should fix it and make it look like step 8. Or perhaps the invalid overlay with a null URL is stopping the tileset from rendering completely, and so you can only see the other tileset.