diff --git a/examples/html/entityProperties.html b/examples/html/entityProperties.html index e525818e51..26bcc63f15 100644 --- a/examples/html/entityProperties.html +++ b/examples/html/entityProperties.html @@ -26,6 +26,20 @@ ); }; } + function createEmitGroupCheckedPropertyUpdateFunction(group, propertyName) { + return function() { + var properties = {}; + properties[group] = {}; + properties[group][propertyName] = this.checked; + EventBridge.emitWebEvent( + JSON.stringify({ + type: "update", + properties: properties + }) + ); + }; + } + function createEmitNumberPropertyUpdateFunction(propertyName) { return function() { EventBridge.emitWebEvent( @@ -286,6 +300,8 @@ var elZoneAtmosphereScatteringWavelengthsX = document.getElementById("property-zone-atmosphere-scattering-wavelengths-x"); var elZoneAtmosphereScatteringWavelengthsY = document.getElementById("property-zone-atmosphere-scattering-wavelengths-y"); var elZoneAtmosphereScatteringWavelengthsZ = document.getElementById("property-zone-atmosphere-scattering-wavelengths-z"); + var elZoneAtmosphereHasStars = document.getElementById("property-zone-atmosphere-has-stars"); + if (window.EventBridge !== undefined) { EventBridge.scriptEventReceived.connect(function(data) { @@ -486,7 +502,7 @@ elZoneAtmosphereScatteringWavelengthsX.value = properties.atmosphere.scatteringWavelengths.x; elZoneAtmosphereScatteringWavelengthsY.value = properties.atmosphere.scatteringWavelengths.y; elZoneAtmosphereScatteringWavelengthsZ.value = properties.atmosphere.scatteringWavelengths.z; - + elZoneAtmosphereHasStars.checked = properties.atmosphere.hasStars; } @@ -650,6 +666,8 @@ elZoneAtmosphereScatteringWavelengthsX.addEventListener('change', zoneAtmosphereScatterWavelengthsChangeFunction); elZoneAtmosphereScatteringWavelengthsY.addEventListener('change', zoneAtmosphereScatterWavelengthsChangeFunction); elZoneAtmosphereScatteringWavelengthsZ.addEventListener('change', zoneAtmosphereScatterWavelengthsChangeFunction); + elZoneAtmosphereHasStars.addEventListener('change', createEmitGroupCheckedPropertyUpdateFunction('atmosphere','hasStars')); + elMoveSelectionToGrid.addEventListener("click", function() { EventBridge.emitWebEvent(JSON.stringify({ @@ -1136,23 +1154,29 @@
Atmosphere Mie Scattering
- +
Atmosphere Rayleigh Scattering
- +
Atmosphere Scattering Wavelenghts
-
X
-
Y
-
Z
+
X
+
Y
+
Z
+
+ Atmosphere Has Stars + + + +
diff --git a/examples/html/style.css b/examples/html/style.css index 8be9b92a51..c87201da4b 100644 --- a/examples/html/style.css +++ b/examples/html/style.css @@ -121,6 +121,14 @@ input.coord { display: block; } +input.no-spin::-webkit-outer-spin-button, +input.no-spin::-webkit-inner-spin-button { + display: none; + -webkit-appearance: none; + -moz-appearance: none; + margin: 0; /* <-- Apparently some margin are still there even though it's hidden */ +} + table#entity-table { border-collapse: collapse; font-family: Sans-Serif; diff --git a/libraries/entities-renderer/src/EntityTreeRenderer.cpp b/libraries/entities-renderer/src/EntityTreeRenderer.cpp index b268ba6031..e4c476c6f7 100644 --- a/libraries/entities-renderer/src/EntityTreeRenderer.cpp +++ b/libraries/entities-renderer/src/EntityTreeRenderer.cpp @@ -450,8 +450,8 @@ void EntityTreeRenderer::render(RenderArgs::RenderMode renderMode, } else { _viewState->endOverrideEnvironmentData(); + auto stage = scene->getSkyStage(); if (_bestZone->getBackgroundMode() == BACKGROUND_MODE_SKYBOX) { - auto stage = scene->getSkyStage(); stage->getSkybox()->setColor(_bestZone->getSkyboxProperties().getColorVec3()); if (_bestZone->getSkyboxProperties().getURL().isEmpty()) { stage->getSkybox()->clearCubemap(); @@ -461,6 +461,8 @@ void EntityTreeRenderer::render(RenderArgs::RenderMode renderMode, stage->getSkybox()->setCubemap(cubeMap->getGPUTexture()); } stage->setBackgroundMode(model::SunSkyStage::SKY_BOX); + } else { + stage->setBackgroundMode(model::SunSkyStage::SKY_DOME); // let the application atmosphere through } } @@ -478,7 +480,7 @@ void EntityTreeRenderer::render(RenderArgs::RenderMode renderMode, _hasPreviousZone = false; } _viewState->endOverrideEnvironmentData(); - scene->getSkyStage()->setBackgroundMode(model::SunSkyStage::SKY_DOME); + scene->getSkyStage()->setBackgroundMode(model::SunSkyStage::SKY_DOME); // let the application atmosphere through } // we must call endScene while we still have the tree locked so that no one deletes a model