Cesium Crashes on mousewheel zoom

If I literally just load up the billboards sandcastle example ( http://cesiumjs.org/Cesium/Apps/Sandcastle/index.html?src=Billboards.html&label=Showcases ) and zoom in with the mouse wheel without moving my mouse or clicking on anything. Most of the time it crashes with this error:

Sandcastle-client.js:39 An error occurred while rendering. Rendering has stopped.
undefined
RangeError: Invalid array length
RangeError: Invalid array length
    at updateFrustums (http://cesiumjs.org/Cesium/Source/Scene/Scene.js:1183:36)
    at createPotentiallyVisibleSet (http://cesiumjs.org/Cesium/Source/Scene/Scene.js:1408:13)
    at executeCommandsInViewport (http://cesiumjs.org/Cesium/Source/Scene/Scene.js:2101:9)
    at updateAndExecuteCommands (http://cesiumjs.org/Cesium/Source/Scene/Scene.js:1968:17)
    at render (http://cesiumjs.org/Cesium/Source/Scene/Scene.js:2398:9)
    at Scene.render (http://cesiumjs.org/Cesium/Source/Scene/Scene.js:2436:13)
    at CesiumWidget.render (http://cesiumjs.org/Cesium/Source/Widgets/CesiumWidget/CesiumWidget.js:683:25)
    at render (http://cesiumjs.org/Cesium/Source/Widgets/CesiumWidget/CesiumWidget.js:72:32)

In the application I am developing using Cesium you start zoomed out so it is common for people to zoom as the first thing they do. There has been a lot of crashing.

Is this something that is currently being looked into?

Thank you.

Hello,

I wasn’t able to reproduce the crash. Have you tried clearing your cookies/cache? Sometimes that causes weird problems.

If that doesn’t fix the issue, can you tell me which browser and OS you were using?

Thanks!

Hannah

Hi,
I have experienced the same issue, it seems to happen if you zoom until the camera is "inside" the globe.

I am using Windows 8.1, the browsers I have used were Chrome and Firefox

Hello,

We should have the camera configured such that you can’t zoom inside the globe. Can you explain a little bit about how to reproduce the crash? I tried zooming in too far and just reached a point where I couldn’t zoom in anymore.

Thanks,

Hannah

Hello Hannah,

I couldn't reproduce the issue in the given Billboard Sandcastle demo. I managed to zoom beneath the earth so that only the skybox was visible(Firefox only, no issues with Chrome).

The above mentioned error occured in my own implementation where I just zoomed in without checking the camera height (or position).

Michael

Hi Hannah,

I am using Chrome **Version 54.0.2840.59 beta (64-bit) **in OS X 10.11.6 El Capitan

I just tested with incognito and cleared cookies/history as well as with Chrome Version 56.0.2891.0 canary (64-bit). It had the exact same crash. This zoom crash doesn’t appear to happen on Windows from my testing, though I have also seen Michael’s issue on Windows where it will zoom below the earth and crash.

This crash only appears to happen when my mouse is over the billboard when the page loads, and I zoom without the mouse moving from where it was before the page loads, and only on OS X.

It’s kind of an obscure crash, but that situation pops up fairly frequently if there are a lot of billboards on the screen, and your clients use OS X.

Thanks for looking into this!

Scott

Thanks for the additional information Scott! I’ve created an issue on our GitHub so the Mac users on our team can look into this: https://github.com/AnalyticalGraphicsInc/cesium/issues/4440

-Hannah

Okay, Thanks Michael. Were you using any of the Cesium built in functions to move the camera around?
It is a known issue that if the camera goes below the Earth that it will throw an error, but all of the Cesium zoomTo and flyTo functions should be restricted from getting into this state.

-Hannah

Hi Hannah,

yes, I'm using the built in Camera.moveForward(moveRate) without any further checking.

Michael

Thanks Hannah, I've added in a bunch more info to that issue.