I have started working recently on visualization of 3D city models on Cesium and it is painful that we still don't have a working method to do so. Now I know that people at AGI are working really hard towards developing 3D tiles, but it would be great to know that how in the NewYork example ([http://cesiumjs.org/NewYork/](http://cesiumjs.org/NewYork/)) they were able to create b3dm models and render them on the globe. Although this link ([https://github.com/AnalyticalGraphicsInc/3d-tiles/tree/master/b3dm](https://github.com/AnalyticalGraphicsInc/3d-tiles/tree/master/b3dm))tries to explain but people like me would still be puzzled about what's going on. If someone could simplify it a bit down then it would be quite beneficial to find other ways also for tiling schemes and model rendering.
As of now, that link is the best information available. As 3D Tiles progress, more details will come out. We’re still planning to finalize this in the spring. Watch this thread for the latest news.
I zoom to a specific model (15/35208/6832.b3dm) by setting a rectangle to its extent. In the browser I can see the 6832.b3dm file, it is downloaded correctly. But I still can’t see the model itself.
What was I missing? Here is my code:
var viewer = new Cesium.Viewer('cesiumContainer');
var tileset = viewer.scene.primitives.add(new Cesium.Cesium3DTileset({
url: 'http://hosting.virtualcitysystems.de/demos/intergeo/berlin/berlin_untextured/output',
show: true
}));
var redRectangle = viewer.entities.add({
name : 'Red translucent rectangle with outline',
rectangle : {
coordinates : Cesium.Rectangle.fromDegrees(13.40483721, 52.46717907, 13.404882244, 52.46724347),
material : Cesium.Color.RED.withAlpha(0.0),
outline : true,
outlineColor : Cesium.Color.RED
}
});
viewer.flyTo(redRectangle, {
offset : new Cesium.HeadingPitchRange(Math.PI / 2, -Math.PI / 4, 20)
});
Can you kindly show the link for the 3D tiles working branch, because this link (https://github.com/AnalyticalGraphicsInc/3d-tiles) has only figures, ppts and json files but no javascript files. I get the error “Cesium.Cesium3DTileset is not a function”.
There is no 3d-tiles repository. It is a branch in the official cesium repository.
Go to https://github.com/AnalyticalGraphicsInc/cesium, change the branch to “3d-tiles” that is what you need.
If you wish to clone the repo, this is how you can do it from the command line:
Are you sure you cloned the correct branch? I played around with 3D Tiles quite a while ago, but at the time there was a branch called 3d-tiles. You should clone and build that one instead of the master branch.
The New York tileset was updated somewhat recently and I just tested that it works fine on the 3d-tiles branch. The tileset can be loaded with the url https://cesiumjs.org/NewYork/3DTiles.