Merge branch 'develop' of https://github.com/secondlife/viewer
# Conflicts: # .github/workflows/qatest.yaml # indra/newview/skins/default/xui/en/panel_settings_sky_clouds.xmlmaster
commit
cdf8eda7d0
|
|
@ -31,7 +31,7 @@ jobs:
|
|||
if: >
|
||||
github.event.workflow_run.conclusion == 'success' &&
|
||||
(
|
||||
startsWith(github.ref, 'refs/tags/Second_Life')
|
||||
startsWith(github.event.workflow_run.head_branch, 'Second_Life')
|
||||
)
|
||||
|
||||
steps:
|
||||
|
|
|
|||
|
|
@ -117,27 +117,34 @@ uniform float exposure;
|
|||
uniform float tonemap_mix;
|
||||
uniform int tonemap_type;
|
||||
|
||||
|
||||
vec3 toneMap(vec3 color)
|
||||
{
|
||||
#ifndef NO_POST
|
||||
vec3 linear_input_color = color;
|
||||
|
||||
float exp_scale = texture(exposureMap, vec2(0.5,0.5)).r;
|
||||
float final_exposure = exposure * exp_scale;
|
||||
vec3 exposed_color = color * final_exposure;
|
||||
|
||||
color *= exposure * exp_scale;
|
||||
|
||||
vec3 clamped_color = clamp(color.rgb, vec3(0.0), vec3(1.0));
|
||||
|
||||
vec3 tonemapped_color = exposed_color;
|
||||
switch(tonemap_type)
|
||||
{
|
||||
case 0:
|
||||
color = PBRNeutralToneMapping(color);
|
||||
tonemapped_color = PBRNeutralToneMapping(exposed_color);
|
||||
break;
|
||||
case 1:
|
||||
color = toneMapACES_Hill(color);
|
||||
tonemapped_color = toneMapACES_Hill(exposed_color);
|
||||
break;
|
||||
}
|
||||
|
||||
// mix tonemapped and linear here to provide adjustment
|
||||
color = mix(clamped_color, color, tonemap_mix);
|
||||
vec3 exposed_linear_input = linear_input_color * final_exposure;
|
||||
color = mix(exposed_linear_input, tonemapped_color, tonemap_mix);
|
||||
|
||||
color = clamp(color, 0.0, 1.0);
|
||||
#else
|
||||
color *= exposure * texture(exposureMap, vec2(0.5,0.5)).r;
|
||||
color = clamp(color, 0.0, 1.0);
|
||||
#endif
|
||||
|
||||
return color;
|
||||
|
|
@ -147,20 +154,24 @@ vec3 toneMap(vec3 color)
|
|||
vec3 toneMapNoExposure(vec3 color)
|
||||
{
|
||||
#ifndef NO_POST
|
||||
vec3 clamped_color = clamp(color.rgb, vec3(0.0), vec3(1.0));
|
||||
vec3 linear_input_color = color;
|
||||
|
||||
vec3 tonemapped_color = color;
|
||||
switch(tonemap_type)
|
||||
{
|
||||
case 0:
|
||||
color = PBRNeutralToneMapping(color);
|
||||
tonemapped_color = PBRNeutralToneMapping(color);
|
||||
break;
|
||||
case 1:
|
||||
color = toneMapACES_Hill(color);
|
||||
tonemapped_color = toneMapACES_Hill(color);
|
||||
break;
|
||||
}
|
||||
|
||||
// mix tonemapped and linear here to provide adjustment
|
||||
color = mix(clamped_color, color, tonemap_mix);
|
||||
color = mix(linear_input_color, tonemapped_color, tonemap_mix);
|
||||
|
||||
color = clamp(color, 0.0, 1.0);
|
||||
#else
|
||||
color = clamp(color, 0.0, 1.0);
|
||||
#endif
|
||||
|
||||
return color;
|
||||
|
|
|
|||
|
|
@ -455,9 +455,29 @@ void LLFloaterEnvironmentAdjust::onMoonAzimElevChanged()
|
|||
void LLFloaterEnvironmentAdjust::onCloudMapChanged()
|
||||
{
|
||||
if (!mLiveSky)
|
||||
{
|
||||
return;
|
||||
mLiveSky->setCloudNoiseTextureId(getChild<LLTextureCtrl>(FIELD_SKY_CLOUD_MAP)->getValue().asUUID());
|
||||
mLiveSky->update();
|
||||
}
|
||||
|
||||
LLTextureCtrl* picker_ctrl = getChild<LLTextureCtrl>(FIELD_SKY_CLOUD_MAP);
|
||||
|
||||
LLUUID new_texture_id = picker_ctrl->getValue().asUUID();
|
||||
|
||||
LLEnvironment::instance().setSelectedEnvironment(LLEnvironment::ENV_LOCAL);
|
||||
|
||||
LLSettingsSky::ptr_t sky_to_set = mLiveSky->buildClone();
|
||||
if (!sky_to_set)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
sky_to_set->setCloudNoiseTextureId(new_texture_id);
|
||||
|
||||
LLEnvironment::instance().setEnvironment(LLEnvironment::ENV_LOCAL, sky_to_set);
|
||||
|
||||
LLEnvironment::instance().updateEnvironment(LLEnvironment::TRANSITION_INSTANT, true);
|
||||
|
||||
picker_ctrl->setValue(new_texture_id);
|
||||
}
|
||||
|
||||
void LLFloaterEnvironmentAdjust::onWaterMapChanged()
|
||||
|
|
|
|||
|
|
@ -3752,7 +3752,7 @@ void LLPanelFace::onCommitRepeatsPerMeter()
|
|||
bool identical_scale_t = false;
|
||||
|
||||
LLSelectedTE::getObjectScaleS(obj_scale_s, identical_scale_s);
|
||||
LLSelectedTE::getObjectScaleS(obj_scale_t, identical_scale_t);
|
||||
LLSelectedTE::getObjectScaleT(obj_scale_t, identical_scale_t);
|
||||
|
||||
if (gSavedSettings.getBOOL("SyncMaterialSettings"))
|
||||
{
|
||||
|
|
@ -5284,6 +5284,7 @@ void LLPanelFace::LLSelectedTEMaterial::getMaxSpecularRepeats(F32& repeats, bool
|
|||
LLMaterial* mat = object->getTEref(face).getMaterialParams().get();
|
||||
U32 s_axis = VX;
|
||||
U32 t_axis = VY;
|
||||
LLPrimitive::getTESTAxes(face, &s_axis, &t_axis);
|
||||
F32 repeats_s = 1.0f;
|
||||
F32 repeats_t = 1.0f;
|
||||
if (mat)
|
||||
|
|
@ -5308,6 +5309,7 @@ void LLPanelFace::LLSelectedTEMaterial::getMaxNormalRepeats(F32& repeats, bool&
|
|||
LLMaterial* mat = object->getTEref(face).getMaterialParams().get();
|
||||
U32 s_axis = VX;
|
||||
U32 t_axis = VY;
|
||||
LLPrimitive::getTESTAxes(face, &s_axis, &t_axis);
|
||||
F32 repeats_s = 1.0f;
|
||||
F32 repeats_t = 1.0f;
|
||||
if (mat)
|
||||
|
|
|
|||
|
|
@ -131,7 +131,7 @@
|
|||
|
||||
#include "SMAAAreaTex.h"
|
||||
#include "SMAASearchTex.h"
|
||||
|
||||
#include "llerror.h"
|
||||
#ifndef LL_WINDOWS
|
||||
#define A_GCC 1
|
||||
#pragma GCC diagnostic ignored "-Wunused-function"
|
||||
|
|
@ -1425,8 +1425,11 @@ void LLPipeline::createGLBuffers()
|
|||
}
|
||||
|
||||
allocateScreenBuffer(resX, resY);
|
||||
mRT->width = 0;
|
||||
mRT->height = 0;
|
||||
// Do not zero out mRT dimensions here. allocateScreenBuffer() above
|
||||
// already sets the correct dimensions. Zeroing them caused resizeShadowTexture()
|
||||
// to fail if called immediately after createGLBuffers (e.g., post graphics change).
|
||||
// mRT->width = 0;
|
||||
// mRT->height = 0;
|
||||
|
||||
|
||||
if (!mNoiseMap)
|
||||
|
|
|
|||
|
|
@ -119,7 +119,7 @@
|
|||
max_val_x="30"
|
||||
min_val_y="-30"
|
||||
max_val_y="30"
|
||||
logarithmic="1"/>
|
||||
logarithmic="true"/>
|
||||
<text
|
||||
name="cloud_image_label"
|
||||
follows="left|top"
|
||||
|
|
|
|||
|
|
@ -3,7 +3,6 @@
|
|||
name="virtualtrackball"
|
||||
width="150"
|
||||
height="150"
|
||||
user_resize="false"
|
||||
increment_angle_mouse="1.5f"
|
||||
increment_angle_btn="1.0f"
|
||||
image_sphere="VirtualTrackball_Sphere"
|
||||
|
|
|
|||
|
|
@ -3,11 +3,9 @@
|
|||
name="xyvector"
|
||||
width="120"
|
||||
height="140"
|
||||
decimal_digits="1"
|
||||
label_width="16"
|
||||
padding="4"
|
||||
edit_bar_height="18"
|
||||
user_resize="false">
|
||||
edit_bar_height="18">
|
||||
|
||||
<xy_vector.border
|
||||
visible="true"/>
|
||||
|
|
|
|||
Loading…
Reference in New Issue