meow-7.2.2
Ansariel 2022-05-19 21:27:53 +02:00
commit 6f8175acd7
17 changed files with 62 additions and 22 deletions

View File

@ -25,6 +25,7 @@
uniform mat3 normal_matrix;
uniform mat4 texture_matrix0;
uniform mat4 texture_matrix1;
uniform mat4 modelview_matrix;
uniform mat4 modelview_projection_matrix;
@ -71,7 +72,7 @@ void main()
vec3 ref = reflect(pos.xyz, -norm);
vary_texcoord0 = (texture_matrix0 * vec4(texcoord0,0,1)).xy;
vary_texcoord1 = transpose(normal_matrix) * ref.xyz;
vary_texcoord1 = (texture_matrix1 * vec4(ref,1.0)).xyz;
calcAtmospherics(pos.xyz);

View File

@ -50,7 +50,7 @@ void fullbright_lighting()
discard;
}
color.rgb *= vertex_color.rgb;
color *= vertex_color;
color.rgb = pow(color.rgb, vec3(texture_gamma));

View File

@ -25,6 +25,7 @@
uniform mat3 normal_matrix;
uniform mat4 texture_matrix0;
uniform mat4 texture_matrix1;
uniform mat4 modelview_matrix;
uniform mat4 modelview_projection_matrix;
@ -70,7 +71,7 @@ void main()
vec3 ref = reflect(pos.xyz, -norm);
vary_texcoord0 = (texture_matrix0 * vec4(texcoord0,0,1)).xy;
vary_texcoord1 = transpose(normal_matrix) * ref;
vary_texcoord1 = (texture_matrix1 * vec4(ref,1.0)).xyz;
calcAtmospherics(pos.xyz);

View File

@ -25,6 +25,7 @@
uniform mat3 normal_matrix;
uniform mat4 texture_matrix0;
uniform mat4 texture_matrix1;
uniform mat4 modelview_matrix;
uniform mat4 modelview_projection_matrix;
@ -69,7 +70,7 @@ void main()
vec3 ref = reflect(pos.xyz, -norm);
vary_texcoord0 = (texture_matrix0*vec4(texcoord0,0,1)).xy;
vary_texcoord1 = transpose(normal_matrix) * ref;
vary_texcoord1 = (texture_matrix1 * vec4(ref,1.0)).xyz;
calcAtmospherics(pos.xyz);

View File

@ -315,6 +315,7 @@ void LLDrawPoolBump::bindCubeMap(LLGLSLShader* shader, S32 shader_level, S32& di
shader->uniform4fv(LLViewerShaderMgr::SHINY_ORIGIN, 1, vec4.mV);
if (shader_level > 1)
{
cube_map->setMatrix(1);
// Make sure that texture coord generation happens for tex unit 1, as that's the one we use for
// the cube map in the one pass shiny shaders
cube_channel = shader->enableTexture(LLViewerShaderMgr::ENVIRONMENT_MAP, LLTexUnit::TT_CUBE_MAP);
@ -323,6 +324,7 @@ void LLDrawPoolBump::bindCubeMap(LLGLSLShader* shader, S32 shader_level, S32& di
}
else
{
cube_map->setMatrix(0);
cube_channel = shader->enableTexture(LLViewerShaderMgr::ENVIRONMENT_MAP, LLTexUnit::TT_CUBE_MAP);
diffuse_channel = -1;
cube_map->enable(cube_channel);
@ -336,6 +338,7 @@ void LLDrawPoolBump::bindCubeMap(LLGLSLShader* shader, S32 shader_level, S32& di
diffuse_channel = -1;
gGL.getTexUnit(0)->disable();
cube_map->enable(0);
cube_map->setMatrix(0);
gGL.getTexUnit(0)->bind(cube_map);
}
}
@ -394,6 +397,7 @@ void LLDrawPoolBump::unbindCubeMap(LLGLSLShader* shader, S32 shader_level, S32&
// Moved below shader->disableTexture call to avoid false alarms from auto-re-enable of textures on stage 0
// MAINT-755
cube_map->disable();
cube_map->restoreMatrix();
}
}
@ -464,6 +468,7 @@ void LLDrawPoolBump::beginFullbrightShiny()
LLVector4 vec4(vec, gShinyOrigin.mV[3]);
shader->uniform4fv(LLViewerShaderMgr::SHINY_ORIGIN, 1, vec4.mV);
cube_map->setMatrix(1);
// Make sure that texture coord generation happens for tex unit 1, as that's the one we use for
// the cube map in the one pass shiny shaders
gGL.getTexUnit(1)->disable();
@ -524,6 +529,7 @@ void LLDrawPoolBump::endFullbrightShiny()
if( cube_map )
{
cube_map->disable();
cube_map->restoreMatrix();
shader->unbind();
}

View File

@ -109,7 +109,7 @@ void LLPanelGroupCreate::onOpen(const LLSD& key)
// populate list
addMembershipRow("Base");
addMembershipRow("Premium");
addMembershipRow("Premium Plus");
addMembershipRow("Premium_Plus");
addMembershipRow("Internal");// Present only if you are already in one, needed for testing
S32 cost = LLAgentBenefitsMgr::current().getCreateGroupCost();

View File

@ -1257,9 +1257,9 @@ void LLPanelPeople::onGroupLimitInfo()
args["MAX_BASIC"] = max_basic;
args["MAX_PREMIUM"] = max_premium;
if (LLAgentBenefitsMgr::has("Premium Plus"))
if (LLAgentBenefitsMgr::has("Premium_Plus"))
{
S32 max_premium_plus = LLAgentBenefitsMgr::get("Premium Plus").getGroupMembershipLimit();
S32 max_premium_plus = LLAgentBenefitsMgr::get("Premium_Plus").getGroupMembershipLimit();
args["MAX_PREMIUM_PLUS"] = max_premium_plus;
LLNotificationsUtil::add("GroupLimitInfoPlus", args);
}

View File

@ -266,6 +266,19 @@ public:
}
};
struct CompareRenderOrder
{
bool operator()(const LLSpatialGroup* const& lhs, const LLSpatialGroup* const& rhs)
{
if (lhs->mAvatarp != rhs->mAvatarp)
{
return lhs->mAvatarp < rhs->mAvatarp;
}
return lhs->mRenderOrder > rhs->mRenderOrder;
}
};
typedef enum
{
GEOM_DIRTY = LLViewerOctreeGroup::INVALID_STATE,
@ -349,6 +362,10 @@ public:
F32 mPixelArea;
F32 mRadius;
//used by LLVOAVatar to set render order in alpha draw pool to preserve legacy render order behavior
LLVOAvatar* mAvatarp = nullptr;
U32 mRenderOrder = 0;
} LL_ALIGN_POSTFIX(64);
class LLGeometryManager

View File

@ -4309,12 +4309,6 @@ bool init_benefits(LLSD& response)
succ = false;
}
// FIXME PREMIUM - for testing if login does not yet provide Premium Plus. Should be removed thereafter.
//if (succ && !LLAgentBenefitsMgr::has("Premium Plus"))
//{
// LLAgentBenefitsMgr::init("Premium Plus", packages_sd["Premium"]["benefits"]);
// llassert(LLAgentBenefitsMgr::has("Premium Plus"));
//}
return succ;
}

View File

@ -3004,6 +3004,7 @@ void LLVOAvatar::idleUpdateMisc(bool detailed_update)
// update attachments positions
if (detailed_update)
{
U32 draw_order = 0;
for (attachment_map_t::iterator iter = mAttachmentPoints.begin();
iter != mAttachmentPoints.end();
++iter)
@ -3049,9 +3050,17 @@ void LLVOAvatar::idleUpdateMisc(bool detailed_update)
}
}
attached_object->mDrawable->makeActive();
attached_object->mDrawable->updateXform(TRUE);
// if selecting any attachments, update all of them as non-damped
if (LLSelectMgr::getInstance()->getSelection()->getObjectCount() && LLSelectMgr::getInstance()->getSelection()->isAttachment())
{
gPipeline.updateMoveNormalAsync(attached_object->mDrawable);
}
else
{
// Note: SL-17415; While most objects follow joints,
// some objects get position updates from server
gPipeline.updateMoveDampedAsync(attached_object->mDrawable);
}
// override_bbox calls movePartition() and getSpatialPartition(),
// so bridge might no longer be valid, get it again.
@ -3069,6 +3078,13 @@ void LLVOAvatar::idleUpdateMisc(bool detailed_update)
bridge->setState(LLDrawable::MOVE_UNDAMPED);
bridge->updateMove();
bridge->setState(LLDrawable::EARLY_MOVE);
LLSpatialGroup* group = attached_object->mDrawable->getSpatialGroup();
if (group)
{ //set draw order of group
group->mAvatarp = this;
group->mRenderOrder = draw_order++;
}
}
}

View File

@ -4080,7 +4080,11 @@ void LLPipeline::postSort(LLCamera& camera)
LL_PROFILE_ZONE_NAMED_CATEGORY_PIPELINE("sort alpha groups");
if (!sShadowRender)
{
// order alpha groups by distance
std::sort(sCull->beginAlphaGroups(), sCull->endAlphaGroups(), LLSpatialGroup::CompareDepthGreater());
// order rigged alpha groups by avatar attachment order
std::sort(sCull->beginRiggedAlphaGroups(), sCull->endRiggedAlphaGroups(), LLSpatialGroup::CompareRenderOrder());
}
}

View File

@ -5438,7 +5438,7 @@ Falls der Fehler weiterhin auftritt, überprüfen Sie bitte Ihre Netzwerk- und F
<string name="PremiumMembership">
Premium
</string>
<string name="Premium PlusMembership">
<string name="Premium_PlusMembership">
Premium Plus
</string>
<string name="MembershipUpgradeText">

View File

@ -2489,7 +2489,7 @@ If you continue to experience problems, please check your network and firewall s
<!-- SL Membership -->
<string name="BaseMembership">Base</string>
<string name="PremiumMembership">Premium</string>
<string name="Premium PlusMembership">Premium Plus</string>
<string name="Premium_PlusMembership">Premium Plus</string>
<string name="InternalMembership">Internal</string> <!-- No need to translate -->
<string name="MembershipUpgradeText">Upgrade to Premium</string>

View File

@ -5332,7 +5332,7 @@ Si le problème persiste, vérifiez la configuration de votre réseau et de votr
<string name="PremiumMembership">
Premium
</string>
<string name="Premium PlusMembership">
<string name="Premium_PlusMembership">
Premium Plus
</string>
<string name="MembershipUpgradeText">

View File

@ -5177,7 +5177,7 @@ Segnala abuso
<string name="PremiumMembership">
Premium
</string>
<string name="Premium PlusMembership">
<string name="Premium_PlusMembership">
Premium Plus
</string>
<string name="DeleteItems">

View File

@ -5222,7 +5222,7 @@ www.secondlife.com から最新バージョンをダウンロードしてくだ
<string name="PremiumMembership">
プレミアム会員
</string>
<string name="Premium PlusMembership">
<string name="Premium_PlusMembership">
プレミアムプラス会員
</string>
<string name="MembershipUpgradeText">

View File

@ -5352,7 +5352,7 @@ https://www.firestormviewer.org/support за помощь в решении эт
<string name="PremiumMembership">
Премиум
</string>
<string name="Premium PlusMembership">
<string name="Premium_PlusMembership">
Премиум Плюс
</string>
<string name="MembershipUpgradeText">