KML and CZML problems 3D cesium createWorldTerrain

I have been having problems with displaying KML files in Cesium ION using. createWorldTerrain… Placemark on the display . The Placemarks disappear as you zoom in and even when you are not zoomed in some of the placemarks disappear… parts etc… not all do however.

If you use regular 2D not using createWorldTerrain there is no problem.

Below is an example from Cesium sandcastle… You can try it for yourself.

Not rendering correctly with the World Terrain using .kml placement files.

var viewer = new Cesium.Viewer(“cesiumContainer”,
{terrainProvider : Cesium.createWorldTerrain(),

                           });

var options = {
camera: viewer.scene.camera,
canvas: viewer.scene.canvas,
};

Sandcastle.addToolbarMenu(
[
{
text: “KML - Global Science Facilities”,
onselect: function () {
viewer.camera.flyHome(0);
viewer.dataSources.add(
Cesium.KmlDataSource.load(
“…/SampleData/kml/facilities/facilities.kml”,
options
)
);
},
},
{
text: “KMZ with embedded data - GDP per capita”,
onselect: function () {
viewer.camera.flyHome(0);
viewer.dataSources.add(
Cesium.KmlDataSource.load(
“…/SampleData/kml/gdpPerCapita2008.kmz”,
options
)
);
},
},
{
text: “gx KML extensions - Bike Ride”,
onselect: function () {
viewer.dataSources
.add(
Cesium.KmlDataSource.load(
“…/SampleData/kml/bikeRide.kml”,
options
)
)
.then(function (dataSource) {
viewer.clock.shouldAnimate = false;
var rider = dataSource.entities.getById(“tour”);
viewer.flyTo(rider).then(function () {
viewer.trackedEntity = rider;
viewer.selectedEntity = viewer.trackedEntity;
viewer.clock.multiplier = 30;
viewer.clock.shouldAnimate = true;
});
});
},
},
],
“toolbar”
);

Sandcastle.reset = function () {
viewer.dataSources.removeAll();
viewer.clock.clockRange = Cesium.ClockRange.UNBOUNDED;
viewer.clock.clockStep = Cesium.ClockStep.SYSTEM_CLOCK;
};

Not only related to KML… but CZML Too

var viewer = new Cesium.Viewer(“cesiumContainer”,
{terrainProvider : Cesium.createWorldTerrain()});

Sandcastle.addDefaultToolbarButton(“Satellites”, function () {
viewer.dataSources.add(
Cesium.CzmlDataSource.load("…/SampleData/simple.czml")
);

viewer.camera.flyHome(0);
});

Sandcastle.addToolbarButton(“Vehicle”, function () {
viewer.dataSources.add(
Cesium.CzmlDataSource.load("…/SampleData/Vehicle.czml")
);

viewer.scene.camera.setView({
destination: Cesium.Cartesian3.fromDegrees(-116.52, 35.02, 95000),
orientation: {
heading: 6,
},
});
});

Sandcastle.reset = function () {
viewer.dataSources.removeAll();
};