Sample tilesets for learning how to use 3D Tiles and a simple Node.js server for serving tilesets.
These tilesets are generated with 3d-tiles-generator.
Instructions
Clone this repo and install Node.js. From the root directory of this repo, run:
npm install
Then to host the tilesets locally, run:
npm start
The tilesets are hosted at http://localhost:8003/tilesets/
.
To load a tileset with Cesium use:
var viewer = new Cesium.Viewer('cesiumContainer');
var tileset = viewer.scene.primitives.add(new Cesium.Cesium3DTileset({
url : 'http://localhost:8003/tilesets/TilesetWithDiscreteLOD/'
}));
tileset.readyPromise.then(function(tileset) {
viewer.camera.viewBoundingSphere(tileset.boundingSphere, new Cesium.HeadingPitchRange(0, -0.5, 0));
viewer.camera.lookAtTransform(Cesium.Matrix4.IDENTITY);
});
When testing tilesets using this server that you do not want to accidentally push to git, create a localTilesets
directory, place the tilesets there, and access like 'http://localhost:8003/localTilesets/GitIgnoredTileset/'
.
Unless otherwise noted use the 3d-tiles
branch.
See the README.md
in each tileset's directory for further instructions and usage restrictions.
Model | Screenshot | Description |
---|---|---|
Discrete LOD | Tileset with discrete LODs. | |
Expiration | Tileset that expires and re-requests new content every five seconds. | |
Request Volume | Tileset with request volumes. | |
Tree Billboards | Tileset that combines instanced 3D models and billboards. |
Contributions
Pull requests are appreciated! Please use the same Contributor License Agreement (CLA) and Coding Guide used for Cesium.