| @@ -130,6 +130,16 @@ class ViewerOption { | |||
| globeOption?.translucency?.frontFaceAlphaByDistance | |||
| }) | |||
| if (globeOption?.filterColor) { | |||
| let filterColor = globeOption?.filterColor | |||
| let globeFS = globe._surfaceShaderSet.baseFragmentShaderSource | |||
| let oriShder = globeFS.sources[globeFS.sources.length - 1] | |||
| globeFS.sources[globeFS.sources.length - 1] = oriShder.replace( | |||
| 'gl_FragColor = finalColor;', | |||
| `gl_FragColor = finalColor * vec4(${filterColor.red},${filterColor.green},${filterColor.blue},${filterColor.alpha});` | |||
| ) | |||
| } | |||
| return this | |||
| } | |||