下雨效果

This commit is contained in:
2026-03-26 12:47:42 +08:00
parent 2ee34c7598
commit eecd6cd0bd
3 changed files with 353 additions and 0 deletions

View File

@@ -42,6 +42,15 @@ function setupControls(oceanScene) {
});
};
const bindCheckbox = (id, setter) => {
const checkbox = document.getElementById(id);
if (!checkbox) return;
checkbox.addEventListener('change', (e) => {
setter(e.target.checked);
});
};
bindSlider('sun-elevation', (value) => `${value.toFixed(1)}°`, (value) => oceanScene.setSunElevation(value));
bindSlider('sun-azimuth', (value) => `${value.toFixed(1)}°`, (value) => oceanScene.setSunAzimuth(value));
bindSlider('exposure', (value) => value.toFixed(2), (value) => oceanScene.setExposure(value));
@@ -55,6 +64,11 @@ function setupControls(oceanScene) {
bindSlider('fog-density', (value) => value.toFixed(2), (value) => oceanScene.setFogDensity(value));
bindSlider('fog-height', (value) => value.toFixed(2), (value) => oceanScene.setFogHeight(value));
bindSlider('fog-range', (value) => value.toFixed(2), (value) => oceanScene.setFogRange(value));
bindSlider('rain-screen-intensity', (value) => value.toFixed(2), (value) => oceanScene.setRainScreenIntensity(value));
bindSlider('rain-veil-intensity', (value) => value.toFixed(2), (value) => oceanScene.setRainVeilIntensity(value));
bindSlider('rain-drop-size', (value) => value.toFixed(2), (value) => oceanScene.setRainDropSize(value));
bindSlider('rain-speed', (value) => value.toFixed(2), (value) => oceanScene.setRainSpeed(value));
bindCheckbox('rain-enabled', (value) => oceanScene.setRainEnabled(value));
}
main().catch(console.error);