Cesium 中的这个暗图像是否正常?

Is it normal this dark image in Cesium?

我觉得我的铯球太暗了。这里有两张图片:一张来自 Cesium,另一张来自 OpenLayers,都来自相同的位置和相同的地理服务器层。

已经设置 viewer.scene.globe.enableLighting = true; 如下图所示:

我的设置:

viewer = new Cesium.Viewer('cesiumContainer',{
    timeline: false,
    animation: false,
    baseLayerPicker: false,
    geocoder : false,
    infoBox : false,
    selectionIndicator : true,
    navigationHelpButton : false,       

});
viewer.scene.globe.enableLighting = true;
var scene = viewer.scene;
var imageryLayers = scene.imageryLayers;

baseLayer = imageryLayers.get(0);
imageryLayers.remove( baseLayer );  
var baseProvider = new Cesium.WebMapServiceImageryProvider({ 
    url : myUrl, 
    layers : 'osm:OSMMapa',
    parameters : { 
        transparent : true, 
        format : 'image/png', 
        tiled : true, 
    }
});
imageryLayers.addImageryProvider( baseProvider );

如何将我的视图设置为像 OpenLayers 一样更亮并显示真实的图像?

您可以在此处尝试一些操作:

首先,如果您不关心时间或不希望地球仪的 "night side" 变暗,enableLighting 可以是假的。 counter-intuitive 关闭照明会让事情变得更亮,但实际上这个标志是关于关闭照明计算,始终用全亮度替换它们。

但更有效的方法,至少在短期内,可能是关闭 HDR:

viewer.scene.highDynamicRange = false;

"High Dynamic Range"适用于奇特的3D模型及其反射,在当前版本的Cesium中,它还涉及一种称为tone-mapping的颜色处理技术。但如果你不使用这些,那么这一切都与你无关,而且实际上会损害图像的对比度。

此行为可能会在未来的版本中更改,以便更智能地了解何时以及如何应用 tone-mapping。但目前,解决方法是关闭 HDR。