Yes, we do plan to support switching terrain providers. Right now, though, we’re focused on wrapping up some loose ends so that we can integrate our work so far into the master branch, probably with only the EllipsoidTerrainProvider initially. Mostly that means we need to add support for 2D and Columbus View. You can find our (probably incomplete) to-do list here if you’re curious:
https://github.com/AnalyticalGraphicsInc/cesium/wiki/Streaming-Terrain-Details
Hey Kevin, is there any way to fix the globe visibility clipping when zoomed far out? I was trying to get this looking better for our demo for you guys today. I played around with the camera frustum near and far values, but it does not seem to really help.
Hi Jonah,
Setting the far plane to something larger should do the trick. Unfortunately you’ll get rendering artifacts if the ratio of far to near is too large. If you don’t need to zoom in close to the Earth, setting the near plane to something large like 10000 or so will help a lot.
Kevin
I should have mentioned that Dan Bagnell and Patrick Cozzi are working on a new feature, called the Data-driven renderer (DDR) which will use multiple frustums to avoid these near/far problems completely. It will be a little while still before that’s ready to go, though.
I’ll also mention that there are other areas of the code that mess with the near/far planes right now (like the SceneTransitioner) so if you really want to force certain values, you might be better off setting them every frame (which will have no affect if it stays the same value).
Cool! Thanks guys that worked out nicely. I just did this in the set animation:
var that = this;
this.scene.setAnimation(function() {
var ellipsoid = Cesium.Ellipsoid.WGS84;
var cartographic = ellipsoid.cartesianToCartographic(that.scene.getCamera().position);
var altitude = cartographic.height;
that.scene.getCamera().frustum.near = 10.0;
that.scene.getCamera().frustum.far = 200000000.0;
if (altitude>10000000){
that.scene.getCamera().frustum.near = 10000000.0;
}
…