SceneView (3D) uses a physically-based rendering pipeline optimized for depth, lighting, and realistic geometry. This is fundamentally different from MapView (2D), which is post-processing friendly and optimized for cartographic styling.
Layer effects (layer.effect): CSS-like filters — bloom, blur, brightness, contrast, drop-shadow, grayscale, hue-rotate, invert, saturate, sepia — are silently ignored by SceneView on all layer types.
FeatureEffect: Applying include/exclude effects to features is not supported in SceneView.
Note: layer.effect is also unsupported in 2D for layers using a heatmap renderer or feature reduction clustering.
Blend modes (layer.blendMode): Supported for tile-based layers — TileLayer, VectorTileLayer, ImageryTileLayer, WebTileLayer, WMTSLayer, WCSLayer, OpenStreetMapLayer, and GroupLayer (when sublayers support it). Not supported for other layer types such as FeatureLayer or GraphicsLayer.
Even on supported layer types, visual outcomes may vary depending on terrain, lighting, and camera angle.
Opacity (layer.opacity): Supported in both 2D and 3D, but 3D uses Order Independent Transparency (OIT). The same opacity value will not produce identical visual results compared to 2D layer stacking, because OIT accounts for depth, occlusion, and lighting.
This app is in alpha, has been vibe-coded, and likely contains bugs and errors.
Please report bugs at