Using `baseLayer` with `globe: false` results in breaking error
What happened?
While messing around with our voxel sandcastle, I wanted to toggle off the globe to check something out. I added globe: false to the viewer options, but was met with this error:
Removing baseLayer from the viewer options made this error go away. Of course, it doesn't make sense to attempt to drape a base layer on a non-existent globe, but I feel that this should be explicitly checked for in our rendering code regardless. At the very least, we could display a more relevant warning.
Reproduction steps
- Go to the Voxel Sandcastle.
- Add
globe: false,to the viewer options. - Run. ...
Sandcastle example
https://sandcastle.cesium.com/#c=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
Environment
Browser: Chrome CesiumJS Version: 1.122 Operating System: Windows
I agree. We should either have a better error message, or just ignore baseLayer and other irrelevant options entirely.
@ggetz @j9liu can we add a condition to check if the globe option is set to false we should log a warning in the console indicating that the base layer is being ignored because the globe is disabled ?
Yes, I think a DeveloperError would be appropriate. @nitesh2920 would you be interested in opening a PR?