Merge branch 'master' of git://github.com/Lirusaito/SingularityViewer
This commit is contained in:
@@ -1288,7 +1288,7 @@ public:
|
||||
LL_CONT << "slowest framerate for last " << int(prevSize * MEM_INFO_THROTTLE)
|
||||
<< " seconds ";
|
||||
}
|
||||
LL_CONT << std::fixed << std::setprecision(1) << framerate << '\n'
|
||||
LL_CONT << std::fixed << std::setprecision(1) << framerate << std::setprecision(6) << '\n'
|
||||
<< LLMemoryInfo() << LL_ENDL;
|
||||
|
||||
return false;
|
||||
|
||||
@@ -2065,14 +2065,14 @@ bool LLVertexBuffer::getWeightStrider(LLStrider<F32>& strider, S32 index, S32 co
|
||||
return VertexBufferStrider<F32,TYPE_WEIGHT>::get(*this, strider, index, count, map_range);
|
||||
}
|
||||
|
||||
bool LLVertexBuffer::getWeight4Strider(LLStrider<LLVector4>& strider, S32 index, S32 count, bool map_range)
|
||||
bool LLVertexBuffer::getWeight4Strider(LLStrider<LLVector4a>& strider, S32 index, S32 count, bool map_range)
|
||||
{
|
||||
return VertexBufferStrider<LLVector4,TYPE_WEIGHT4>::get(*this, strider, index, count, map_range);
|
||||
return VertexBufferStrider<LLVector4a,TYPE_WEIGHT4>::get(*this, strider, index, count, map_range);
|
||||
}
|
||||
|
||||
bool LLVertexBuffer::getClothWeightStrider(LLStrider<LLVector4>& strider, S32 index, S32 count, bool map_range)
|
||||
bool LLVertexBuffer::getClothWeightStrider(LLStrider<LLVector4a>& strider, S32 index, S32 count, bool map_range)
|
||||
{
|
||||
return VertexBufferStrider<LLVector4,TYPE_CLOTHWEIGHT>::get(*this, strider, index, count, map_range);
|
||||
return VertexBufferStrider<LLVector4a,TYPE_CLOTHWEIGHT>::get(*this, strider, index, count, map_range);
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
@@ -255,8 +255,8 @@ public:
|
||||
bool getColorStrider(LLStrider<LLColor4U>& strider, S32 index=0, S32 count = -1, bool map_range = false);
|
||||
bool getEmissiveStrider(LLStrider<LLColor4U>& strider, S32 index=0, S32 count = -1, bool map_range = false);
|
||||
bool getWeightStrider(LLStrider<F32>& strider, S32 index=0, S32 count = -1, bool map_range = false);
|
||||
bool getWeight4Strider(LLStrider<LLVector4>& strider, S32 index=0, S32 count = -1, bool map_range = false);
|
||||
bool getClothWeightStrider(LLStrider<LLVector4>& strider, S32 index=0, S32 count = -1, bool map_range = false);
|
||||
bool getWeight4Strider(LLStrider<LLVector4a>& strider, S32 index=0, S32 count = -1, bool map_range = false);
|
||||
bool getClothWeightStrider(LLStrider<LLVector4a>& strider, S32 index=0, S32 count = -1, bool map_range = false);
|
||||
|
||||
|
||||
bool useVBOs() const;
|
||||
|
||||
@@ -635,7 +635,7 @@ LLWindowWin32::LLWindowWin32(LLWindowCallbacks* callbacks,
|
||||
LLCoordScreen windowPos(x,y);
|
||||
LLCoordScreen windowSize(window_rect.right - window_rect.left,
|
||||
window_rect.bottom - window_rect.top);
|
||||
if (!switchContext(mFullscreen, windowSize, TRUE, &windowPos))
|
||||
if (!switchContext(mFullscreen, windowSize, vsync_mode, &windowPos))
|
||||
{
|
||||
return;
|
||||
}
|
||||
@@ -1654,21 +1654,21 @@ BOOL LLWindowWin32::switchContext(BOOL fullscreen, const LLCoordScreen &size, co
|
||||
{
|
||||
if (vsync_mode == 0)
|
||||
{
|
||||
LL_DEBUGS("Window") << "Disabling vertical sync" << LL_ENDL;
|
||||
LL_INFOS("Window") << "Disabling vertical sync" << LL_ENDL;
|
||||
wglSwapIntervalEXT(0);
|
||||
}
|
||||
else if(vsync_mode == -1)
|
||||
{
|
||||
LL_DEBUGS("Window") << "Enabling adaptive vertical sync" << LL_ENDL;
|
||||
LL_INFOS("Window") << "Enabling adaptive vertical sync" << LL_ENDL;
|
||||
if(wglSwapIntervalEXT(-1) == 0)
|
||||
{
|
||||
LL_DEBUGS("Window") << "Failed to enable adaptive vertical sync. Disabling vsync." << LL_ENDL;
|
||||
LL_INFOS("Window") << "Failed to enable adaptive vertical sync. Disabling vsync." << LL_ENDL;
|
||||
wglSwapIntervalEXT(0);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
LL_DEBUGS("Window") << "Enabling vertical sync" << LL_ENDL;
|
||||
LL_INFOS("Window") << "Enabling vertical sync" << LL_ENDL;
|
||||
wglSwapIntervalEXT(1);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -904,6 +904,19 @@
|
||||
<key>Value</key>
|
||||
<integer>0</integer>
|
||||
</map>
|
||||
<key>LiruRegionRestartMinimized</key>
|
||||
<map>
|
||||
<key>Comment</key>
|
||||
<string>Whether or not to spawn the region restart notice minimized (Useful for sim owners and people who need to pack up before leaving)</string>
|
||||
<key>Persist</key>
|
||||
<integer>1</integer>
|
||||
<key>Type</key>
|
||||
<string>Boolean</string>
|
||||
<key>Value</key>
|
||||
<integer>0</integer>
|
||||
<key>IsCOA</key>
|
||||
<integer>1</integer>
|
||||
</map>
|
||||
<key>LiruScriptErrorsStealFocus</key>
|
||||
<map>
|
||||
<key>Comment</key>
|
||||
@@ -2429,6 +2442,17 @@ This should be as low as possible, but too low may break functionality</string>
|
||||
<key>Value</key>
|
||||
<integer>1</integer>
|
||||
</map>
|
||||
<key>AllowSelectAvatar</key>
|
||||
<map>
|
||||
<key>Comment</key>
|
||||
<string>Allow selecting an avatar that you have modify rights on (via tag) while in edit mode to reposition them</string>
|
||||
<key>Persist</key>
|
||||
<integer>1</integer>
|
||||
<key>Type</key>
|
||||
<string>Boolean</string>
|
||||
<key>Value</key>
|
||||
<integer>0</integer>
|
||||
</map>
|
||||
<key>AllowTapTapHoldRun</key>
|
||||
<map>
|
||||
<key>Comment</key>
|
||||
|
||||
@@ -22,30 +22,34 @@
|
||||
* $/LicenseInfo$
|
||||
*/
|
||||
|
||||
#define FLT_MAX 3.402823466e+38
|
||||
|
||||
ATTRIBUTE vec4 weight4;
|
||||
|
||||
uniform mat3 matrixPalette[52];
|
||||
uniform vec3 translationPalette[52];
|
||||
uniform float maxWeight;
|
||||
|
||||
|
||||
|
||||
mat4 getObjectSkinnedTransform()
|
||||
{
|
||||
int i;
|
||||
|
||||
vec4 w = fract(weight4);
|
||||
vec4 index = floor(weight4);
|
||||
|
||||
|
||||
index = min(index, vec4(maxWeight));
|
||||
index = max(index, vec4( 0.0));
|
||||
|
||||
float scale = 1.0/(w.x+w.y+w.z+w.w);
|
||||
w *= scale;
|
||||
|
||||
float sum = (w.x+w.y+w.z+w.w);
|
||||
|
||||
int i1 = int(index.x);
|
||||
int i2 = int(index.y);
|
||||
int i3 = int(index.z);
|
||||
int i4 = int(index.w);
|
||||
|
||||
|
||||
|
||||
mat3 mat = matrixPalette[i1]*w.x;
|
||||
mat += matrixPalette[i2]*w.y;
|
||||
mat += matrixPalette[i3]*w.z;
|
||||
@@ -58,10 +62,10 @@ mat4 getObjectSkinnedTransform()
|
||||
|
||||
mat4 ret;
|
||||
|
||||
ret[0] = vec4(mat[0], 0);
|
||||
ret[1] = vec4(mat[1], 0);
|
||||
ret[2] = vec4(mat[2], 0);
|
||||
ret[3] = vec4(trans, 1.0);
|
||||
ret[0] = vec4(mat[0].xyz, 0);
|
||||
ret[1] = vec4(mat[1].xyz, 0);
|
||||
ret[2] = vec4(mat[2].xyz, 0);
|
||||
ret[3] = vec4(trans, sum);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
@@ -89,9 +89,6 @@ LLPrefsAscentChat::LLPrefsAscentChat()
|
||||
|
||||
childSetEnabled("reset_antispam", started);
|
||||
getChild<LLUICtrl>("reset_antispam")->setCommitCallback(boost::bind(NACLAntiSpamRegistry::purgeAllQueues));
|
||||
getChild<LLUICtrl>("enable_as")->setCommitCallback(boost::bind(&LLPrefsAscentChat::onCommitEnableAS, this, _2));
|
||||
getChild<LLUICtrl>("antispam_checkbox")->setCommitCallback(boost::bind(&LLPrefsAscentChat::onCommitDialogBlock, this, _1, _2));
|
||||
getChild<LLUICtrl>("Group Invites")->setCommitCallback(boost::bind(&LLPrefsAscentChat::onCommitDialogBlock, this, _1, _2));
|
||||
|
||||
getChild<LLUICtrl>("autoreplace")->setCommitCallback(boost::bind(LLFloaterAutoReplaceSettings::showInstance, LLSD()));
|
||||
getChild<LLUICtrl>("KeywordsOn")->setCommitCallback(boost::bind(&LLPrefsAscentChat::onCommitKeywords, this, _1));
|
||||
@@ -186,39 +183,6 @@ void LLPrefsAscentChat::onCommitTimeDate(LLUICtrl* ctrl)
|
||||
gSavedSettings.setString("TimestampFormat", timestamp);
|
||||
}
|
||||
|
||||
void LLPrefsAscentChat::onCommitEnableAS(const LLSD& value)
|
||||
{
|
||||
bool enabled = value.asBoolean();
|
||||
childSetEnabled("spammsg_checkbox", enabled);
|
||||
childSetEnabled("antispamtime", enabled);
|
||||
childSetEnabled("antispamamount", enabled);
|
||||
childSetEnabled("antispamsoundmulti", enabled);
|
||||
childSetEnabled("antispamsoundpreloadmulti", enabled);
|
||||
childSetEnabled("antispamnewlines", enabled);
|
||||
childSetEnabled("Notify On Spam", enabled);
|
||||
}
|
||||
|
||||
void LLPrefsAscentChat::onCommitDialogBlock(LLUICtrl* ctrl, const LLSD& value)
|
||||
{
|
||||
childSetEnabled("Group Fee Invites", !childGetValue("antispam_checkbox").asBoolean() && !childGetValue("Group Invites").asBoolean());
|
||||
bool enabled = value.asBoolean();
|
||||
if (ctrl->getName() == "antispam_checkbox")
|
||||
{
|
||||
childSetEnabled("Block All Dialogs From", !enabled);
|
||||
childSetEnabled("Alerts", !enabled);
|
||||
childSetEnabled("Friendship Offers", !enabled);
|
||||
childSetEnabled("Group Invites", !enabled);
|
||||
childSetEnabled("Group Notices", !enabled);
|
||||
childSetEnabled("Item Offers", !enabled);
|
||||
childSetEnabled("Scripts", !enabled);
|
||||
childSetEnabled("Teleport Offers", !enabled);
|
||||
childSetEnabled("Teleport Requests", !enabled);
|
||||
childSetEnabled("Except those from:", !enabled);
|
||||
childSetEnabled("My objects", !enabled);
|
||||
childSetEnabled("My friends", !enabled);
|
||||
}
|
||||
}
|
||||
|
||||
void LLPrefsAscentChat::onCommitKeywords(LLUICtrl* ctrl)
|
||||
{
|
||||
if (ctrl->getName() == "KeywordsOn")
|
||||
@@ -394,26 +358,6 @@ void LLPrefsAscentChat::refresh()
|
||||
if (combo = getChild<LLComboBox>("speaker_namesystem_combobox"))
|
||||
combo->setCurrentByIndex(mSpeakerNames);
|
||||
|
||||
//Antispam ------------------------------------------------------------------------
|
||||
// sensitivity tuners
|
||||
childSetEnabled("spammsg_checkbox", mEnableAS);
|
||||
childSetEnabled("antispamtime", mEnableAS);
|
||||
childSetEnabled("antispamamount", mEnableAS);
|
||||
childSetEnabled("antispamsoundmulti", mEnableAS);
|
||||
childSetEnabled("antispamsoundpreloadmulti", mEnableAS);
|
||||
childSetEnabled("antispamnewlines", mEnableAS);
|
||||
childSetEnabled("Notify On Spam", mEnableAS);
|
||||
// dialog blocking tuners
|
||||
childSetEnabled("Block All Dialogs From", !mBlockDialogSpam);
|
||||
childSetEnabled("Alerts", !mBlockDialogSpam);
|
||||
childSetEnabled("Friendship Offers", !mBlockDialogSpam);
|
||||
childSetEnabled("Group Invites", !mBlockDialogSpam);
|
||||
childSetEnabled("Group Fee Invites", !mBlockDialogSpam && !mBlockGroupInviteSpam);
|
||||
childSetEnabled("Group Notices", !mBlockDialogSpam);
|
||||
childSetEnabled("Item Offers", !mBlockDialogSpam);
|
||||
childSetEnabled("Scripts", !mBlockDialogSpam);
|
||||
childSetEnabled("Teleport Offers", !mBlockDialogSpam);
|
||||
|
||||
//Text Options ------------------------------------------------------------------------
|
||||
combo = getChild<LLComboBox>("SpellBase");
|
||||
|
||||
|
||||
@@ -52,8 +52,6 @@ protected:
|
||||
void onSpellEditCustom();
|
||||
void onSpellBaseComboBoxCommit(const LLSD& value);
|
||||
void onCommitTimeDate(LLUICtrl* ctrl);
|
||||
void onCommitEnableAS(const LLSD& value);
|
||||
void onCommitDialogBlock(LLUICtrl* ctrl, const LLSD& value);
|
||||
void onCommitKeywords(LLUICtrl* ctrl);
|
||||
|
||||
private:
|
||||
|
||||
@@ -51,33 +51,30 @@ LLPrefsAscentSys::LLPrefsAscentSys()
|
||||
LLUICtrlFactory::getInstance()->buildPanel(this, "panel_preferences_ascent_system.xml");
|
||||
|
||||
//General -----------------------------------------------------------------------------
|
||||
getChild<LLUICtrl>("speed_rez_check")->setCommitCallback(boost::bind(&LLPrefsAscentSys::onCommitCheckBox, this, _1, _2));
|
||||
getChild<LLUICtrl>("double_click_teleport_check")->setCommitCallback(boost::bind(&LLPrefsAscentSys::onCommitCheckBox, this, _1, _2));
|
||||
getChild<LLUICtrl>("show_look_at_check")->setCommitCallback(boost::bind(&LLPrefsAscentSys::onCommitCheckBox, this, _1, _2));
|
||||
getChild<LLUICtrl>("enable_clouds")->setCommitCallback(boost::bind(&LLPrefsAscentSys::onCommitCheckBox, this, _1, _2));
|
||||
getChild<LLUICtrl>("power_user_check")->setCommitCallback(boost::bind(&LLPrefsAscentSys::onCommitCheckBox, this, _1, _2));
|
||||
getChild<LLUICtrl>("power_user_confirm_check")->setCommitCallback(boost::bind(&LLPrefsAscentSys::onCommitCheckBox, this, _1, _2));
|
||||
|
||||
//Command Line ------------------------------------------------------------------------
|
||||
getChild<LLUICtrl>("chat_cmd_toggle")->setCommitCallback(boost::bind(&LLPrefsAscentSys::onCommitCmdLine, this, _1, _2));
|
||||
getChild<LLUICtrl>("AscentCmdLinePos")->setCommitCallback(boost::bind(&LLPrefsAscentSys::onCommitCmdLine, this, _1, _2));
|
||||
getChild<LLUICtrl>("AscentCmdLineGround")->setCommitCallback(boost::bind(&LLPrefsAscentSys::onCommitCmdLine, this, _1, _2));
|
||||
getChild<LLUICtrl>("AscentCmdLineHeight")->setCommitCallback(boost::bind(&LLPrefsAscentSys::onCommitCmdLine, this, _1, _2));
|
||||
getChild<LLUICtrl>("AscentCmdLineTeleportHome")->setCommitCallback(boost::bind(&LLPrefsAscentSys::onCommitCmdLine, this, _1, _2));
|
||||
getChild<LLUICtrl>("AscentCmdLineRezPlatform")->setCommitCallback(boost::bind(&LLPrefsAscentSys::onCommitCmdLine, this, _1, _2));
|
||||
getChild<LLUICtrl>("AscentCmdLineCalc")->setCommitCallback(boost::bind(&LLPrefsAscentSys::onCommitCmdLine, this, _1, _2));
|
||||
getChild<LLUICtrl>("AscentCmdLineClearChat")->setCommitCallback(boost::bind(&LLPrefsAscentSys::onCommitCmdLine, this, _1, _2));
|
||||
getChild<LLUICtrl>("AscentCmdLineDrawDistance")->setCommitCallback(boost::bind(&LLPrefsAscentSys::onCommitCmdLine, this, _1, _2));
|
||||
getChild<LLUICtrl>("AscentCmdTeleportToCam")->setCommitCallback(boost::bind(&LLPrefsAscentSys::onCommitCmdLine, this, _1, _2));
|
||||
getChild<LLUICtrl>("AscentCmdLineKeyToName")->setCommitCallback(boost::bind(&LLPrefsAscentSys::onCommitCmdLine, this, _1, _2));
|
||||
getChild<LLUICtrl>("AscentCmdLineOfferTp")->setCommitCallback(boost::bind(&LLPrefsAscentSys::onCommitCmdLine, this, _1, _2));
|
||||
getChild<LLUICtrl>("AscentCmdLineMapTo")->setCommitCallback(boost::bind(&LLPrefsAscentSys::onCommitCmdLine, this, _1, _2));
|
||||
getChild<LLUICtrl>("AscentCmdLineTP2")->setCommitCallback(boost::bind(&LLPrefsAscentSys::onCommitCmdLine, this, _1, _2));
|
||||
getChild<LLUICtrl>("SinguCmdLineAway")->setCommitCallback(boost::bind(&LLPrefsAscentSys::onCommitCmdLine, this, _1, _2));
|
||||
getChild<LLUICtrl>("SinguCmdLineURL")->setCommitCallback(boost::bind(&LLPrefsAscentSys::onCommitCmdLine, this, _1, _2));
|
||||
commit_callback_t lineEditorControl(boost::bind(&LLControlGroup::setString, boost::ref(gSavedSettings), boost::bind(&LLUICtrl::getName, _1), _2));
|
||||
getChild<LLUICtrl>("AscentCmdLinePos")->setCommitCallback(lineEditorControl);
|
||||
getChild<LLUICtrl>("AscentCmdLineGround")->setCommitCallback(lineEditorControl);
|
||||
getChild<LLUICtrl>("AscentCmdLineHeight")->setCommitCallback(lineEditorControl);
|
||||
getChild<LLUICtrl>("AscentCmdLineTeleportHome")->setCommitCallback(lineEditorControl);
|
||||
getChild<LLUICtrl>("AscentCmdLineRezPlatform")->setCommitCallback(lineEditorControl);
|
||||
getChild<LLUICtrl>("AscentCmdLineCalc")->setCommitCallback(lineEditorControl);
|
||||
getChild<LLUICtrl>("AscentCmdLineClearChat")->setCommitCallback(lineEditorControl);
|
||||
getChild<LLUICtrl>("AscentCmdLineDrawDistance")->setCommitCallback(lineEditorControl);
|
||||
getChild<LLUICtrl>("AscentCmdTeleportToCam")->setCommitCallback(lineEditorControl);
|
||||
getChild<LLUICtrl>("AscentCmdLineKeyToName")->setCommitCallback(lineEditorControl);
|
||||
getChild<LLUICtrl>("AscentCmdLineOfferTp")->setCommitCallback(lineEditorControl);
|
||||
getChild<LLUICtrl>("AscentCmdLineMapTo")->setCommitCallback(lineEditorControl);
|
||||
getChild<LLUICtrl>("AscentCmdLineTP2")->setCommitCallback(lineEditorControl);
|
||||
getChild<LLUICtrl>("SinguCmdLineAway")->setCommitCallback(lineEditorControl);
|
||||
getChild<LLUICtrl>("SinguCmdLineURL")->setCommitCallback(lineEditorControl);
|
||||
|
||||
//Security ----------------------------------------------------------------------------
|
||||
getChild<LLUICtrl>("disable_click_sit_check")->setCommitCallback(boost::bind(&LLPrefsAscentSys::onCommitCheckBox, this, _1, _2));
|
||||
getChild<LLUICtrl>("UISndRestart")->setCommitCallback(lineEditorControl);
|
||||
|
||||
//Build -------------------------------------------------------------------------------
|
||||
getChild<LLUICtrl>("next_owner_copy")->setCommitCallback(boost::bind(&LLPrefsAscentSys::onCommitCheckBox, this, _1, _2));
|
||||
@@ -101,21 +98,7 @@ void LLPrefsAscentSys::onCommitCheckBox(LLUICtrl* ctrl, const LLSD& value)
|
||||
|
||||
const std::string name = ctrl->getName();
|
||||
bool enabled = value.asBoolean();
|
||||
if (name == "speed_rez_check")
|
||||
{
|
||||
childSetEnabled("speed_rez_interval", enabled);
|
||||
childSetEnabled("speed_rez_seconds", enabled);
|
||||
}
|
||||
else if (name == "double_click_teleport_check")
|
||||
{
|
||||
childSetEnabled("center_after_teleport_check", enabled);
|
||||
childSetEnabled("offset_teleport_check", enabled);
|
||||
}
|
||||
else if (name == "enable_clouds")
|
||||
{
|
||||
childSetEnabled("enable_classic_clouds", enabled);
|
||||
}
|
||||
else if (name == "power_user_check")
|
||||
if (name == "power_user_check")
|
||||
{
|
||||
childSetEnabled("power_user_confirm_check", enabled);
|
||||
childSetValue("power_user_confirm_check", false);
|
||||
@@ -135,10 +118,6 @@ void LLPrefsAscentSys::onCommitCheckBox(LLUICtrl* ctrl, const LLSD& value)
|
||||
LLFloaterChat::addChat(chat);
|
||||
}
|
||||
}
|
||||
else if (name == "disable_click_sit_check")
|
||||
{
|
||||
childSetEnabled("disable_click_sit_own_check", !enabled);
|
||||
}
|
||||
else if (name == "next_owner_copy")
|
||||
{
|
||||
if (!enabled) gSavedSettings.setBOOL("NextOwnerTransfer", true);
|
||||
@@ -146,49 +125,6 @@ void LLPrefsAscentSys::onCommitCheckBox(LLUICtrl* ctrl, const LLSD& value)
|
||||
}
|
||||
}
|
||||
|
||||
void LLPrefsAscentSys::onCommitCmdLine(LLUICtrl* ctrl, const LLSD& value)
|
||||
{
|
||||
const std::string& name = ctrl->getName();
|
||||
if (name == "chat_cmd_toggle")
|
||||
{
|
||||
bool enabled = value.asBoolean();
|
||||
childSetEnabled("cmd_line_text_2", enabled);
|
||||
childSetEnabled("cmd_line_text_3", enabled);
|
||||
childSetEnabled("cmd_line_text_4", enabled);
|
||||
childSetEnabled("cmd_line_text_5", enabled);
|
||||
childSetEnabled("cmd_line_text_6", enabled);
|
||||
childSetEnabled("cmd_line_text_7", enabled);
|
||||
childSetEnabled("cmd_line_text_8", enabled);
|
||||
childSetEnabled("cmd_line_text_9", enabled);
|
||||
childSetEnabled("cmd_line_text_10", enabled);
|
||||
childSetEnabled("cmd_line_text_11", enabled);
|
||||
childSetEnabled("cmd_line_text_12", enabled);
|
||||
childSetEnabled("cmd_line_text_13", enabled);
|
||||
childSetEnabled("cmd_line_text_15", enabled);
|
||||
childSetEnabled("AscentCmdLinePos", enabled);
|
||||
childSetEnabled("AscentCmdLineGround", enabled);
|
||||
childSetEnabled("AscentCmdLineHeight", enabled);
|
||||
childSetEnabled("AscentCmdLineTeleportHome", enabled);
|
||||
childSetEnabled("AscentCmdLineRezPlatform", enabled);
|
||||
childSetEnabled("AscentPlatformSize", enabled);
|
||||
childSetEnabled("AscentCmdLineCalc", enabled);
|
||||
childSetEnabled("AscentCmdLineClearChat", enabled);
|
||||
childSetEnabled("AscentCmdLineDrawDistance", enabled);
|
||||
childSetEnabled("AscentCmdTeleportToCam", enabled);
|
||||
childSetEnabled("AscentCmdLineKeyToName", enabled);
|
||||
childSetEnabled("AscentCmdLineOfferTp", enabled);
|
||||
childSetEnabled("AscentCmdLineMapTo", enabled);
|
||||
childSetEnabled("map_to_keep_pos", enabled);
|
||||
childSetEnabled("AscentCmdLineTP2", enabled);
|
||||
childSetEnabled("SinguCmdLineAway", enabled);
|
||||
childSetEnabled("SinguCmdLineURL", enabled);
|
||||
}
|
||||
else
|
||||
{
|
||||
gSavedSettings.setString(name, value); // Singu Note: Keep commandline settings using the same name as their settings
|
||||
}
|
||||
}
|
||||
|
||||
void LLPrefsAscentSys::onCommitComboBox(LLUICtrl* ctrl, const LLSD& value)
|
||||
{
|
||||
gSavedSettings.setString(ctrl->getControlName(), value.asString());
|
||||
@@ -259,6 +195,8 @@ void LLPrefsAscentSys::refreshValues()
|
||||
mDisableClickSitOtherOwner = gSavedSettings.getBOOL("DisableClickSitOtherOwner");
|
||||
mDisplayScriptJumps = gSavedSettings.getBOOL("AscentDisplayTotalScriptJumps");
|
||||
mNumScriptDiff = gSavedSettings.getF32("Ascentnumscriptdiff");
|
||||
mRestartMinimized = gSavedSettings.getBOOL("LiruRegionRestartMinimized");
|
||||
mRestartSound = gSavedSettings.getString("UISndRestart");
|
||||
mLandmark = gSavedPerAccountSettings.getString("EmergencyTeleportLandmark");
|
||||
|
||||
//Build -------------------------------------------------------------------------------
|
||||
@@ -284,44 +222,12 @@ void LLPrefsAscentSys::refreshValues()
|
||||
void LLPrefsAscentSys::refresh()
|
||||
{
|
||||
//General -----------------------------------------------------------------------------
|
||||
childSetEnabled("center_after_teleport_check", mDoubleClickTeleport);
|
||||
childSetEnabled("offset_teleport_check", mDoubleClickTeleport);
|
||||
childSetValue("power_user_check", mPowerUser);
|
||||
childSetValue("power_user_confirm_check", mPowerUser);
|
||||
childSetEnabled("speed_rez_interval", mSpeedRez);
|
||||
childSetEnabled("speed_rez_seconds", mSpeedRez);
|
||||
|
||||
//Command Line ------------------------------------------------------------------------
|
||||
childSetEnabled("cmd_line_text_2", mCmdLine);
|
||||
childSetEnabled("cmd_line_text_3", mCmdLine);
|
||||
childSetEnabled("cmd_line_text_4", mCmdLine);
|
||||
childSetEnabled("cmd_line_text_5", mCmdLine);
|
||||
childSetEnabled("cmd_line_text_6", mCmdLine);
|
||||
childSetEnabled("cmd_line_text_7", mCmdLine);
|
||||
childSetEnabled("cmd_line_text_8", mCmdLine);
|
||||
childSetEnabled("cmd_line_text_9", mCmdLine);
|
||||
childSetEnabled("cmd_line_text_10", mCmdLine);
|
||||
childSetEnabled("cmd_line_text_11", mCmdLine);
|
||||
childSetEnabled("cmd_line_text_12", mCmdLine);
|
||||
childSetEnabled("cmd_line_text_13", mCmdLine);
|
||||
childSetEnabled("cmd_line_text_15", mCmdLine);
|
||||
childSetEnabled("AscentCmdLinePos", mCmdLine);
|
||||
childSetEnabled("AscentCmdLineGround", mCmdLine);
|
||||
childSetEnabled("AscentCmdLineHeight", mCmdLine);
|
||||
childSetEnabled("AscentCmdLineTeleportHome", mCmdLine);
|
||||
childSetEnabled("AscentCmdLineRezPlatform", mCmdLine);
|
||||
childSetEnabled("AscentPlatformSize", mCmdLine);
|
||||
childSetEnabled("AscentCmdLineCalc", mCmdLine);
|
||||
childSetEnabled("AscentCmdLineClearChat", mCmdLine);
|
||||
childSetEnabled("AscentCmdLineDrawDistance", mCmdLine);
|
||||
childSetEnabled("AscentCmdTeleportToCam", mCmdLine);
|
||||
childSetEnabled("AscentCmdLineKeyToName", mCmdLine);
|
||||
childSetEnabled("AscentCmdLineOfferTp", mCmdLine);
|
||||
childSetEnabled("AscentCmdLineMapTo", mCmdLine);
|
||||
childSetEnabled("map_to_keep_pos", mCmdLine);
|
||||
childSetEnabled("AscentCmdLineTP2", mCmdLine);
|
||||
childSetEnabled("SinguCmdLineAway", mCmdLine);
|
||||
childSetEnabled("SinguCmdLineURL", mCmdLine);
|
||||
if (LLUICtrl* ctrl = getChild<LLUICtrl>("power_user_confirm_check"))
|
||||
{
|
||||
ctrl->setEnabled(mPowerUser);
|
||||
ctrl->setValue(mPowerUser);
|
||||
}
|
||||
|
||||
//Security ----------------------------------------------------------------------------
|
||||
childSetValue("AscentCmdLinePos", mCmdLinePos);
|
||||
@@ -340,6 +246,9 @@ void LLPrefsAscentSys::refresh()
|
||||
childSetValue("SinguCmdLineAway", mCmdLineAway);
|
||||
childSetValue("SinguCmdLineURL", mCmdLineURL);
|
||||
|
||||
//Security ----------------------------------------------------------------------------
|
||||
getChildView("UISndRestart")->setValue(mRestartSound);
|
||||
|
||||
//Build -------------------------------------------------------------------------------
|
||||
childSetValue("alpha", mAlpha);
|
||||
getChild<LLColorSwatchCtrl>("colorswatch")->setOriginal(mColor);
|
||||
@@ -417,6 +326,8 @@ void LLPrefsAscentSys::cancel()
|
||||
gSavedSettings.setBOOL("DisableClickSitOtherOwner", mDisableClickSitOtherOwner);
|
||||
gSavedSettings.setBOOL("AscentDisplayTotalScriptJumps", mDisplayScriptJumps);
|
||||
gSavedSettings.setF32("Ascentnumscriptdiff", mNumScriptDiff);
|
||||
gSavedSettings.setBOOL("LiruRegionRestartMinimized", mRestartMinimized);
|
||||
gSavedSettings.setString("UISndRestart", mRestartSound);
|
||||
gSavedPerAccountSettings.setString("EmergencyTeleportLandmark", mLandmark);
|
||||
|
||||
//Build -------------------------------------------------------------------------------
|
||||
|
||||
@@ -48,7 +48,6 @@ public:
|
||||
|
||||
protected:
|
||||
void onCommitCheckBox(LLUICtrl* ctrl, const LLSD& value);
|
||||
void onCommitCmdLine(LLUICtrl* ctrl, const LLSD& value);
|
||||
void onCommitComboBox(LLUICtrl* ctrl, const LLSD& value);
|
||||
void onCommitTexturePicker(LLUICtrl* ctrl);
|
||||
|
||||
@@ -109,7 +108,9 @@ private:
|
||||
bool mDisableClickSit;
|
||||
bool mDisableClickSitOtherOwner;
|
||||
bool mDisplayScriptJumps;
|
||||
bool mRestartMinimized;
|
||||
F32 mNumScriptDiff;
|
||||
std::string mRestartSound;
|
||||
std::string mLandmark;
|
||||
|
||||
//Build -------------------------------------------------------------------------------
|
||||
|
||||
@@ -61,14 +61,7 @@ LLPrefsAscentVan::LLPrefsAscentVan()
|
||||
|
||||
getChild<LLUICtrl>("tag_spoofing_combobox")->setCommitCallback(boost::bind(&LLPrefsAscentVan::onCommitClientTag, this, _1));
|
||||
|
||||
getChild<LLUICtrl>("show_my_tag_check")->setCommitCallback(boost::bind(&LLPrefsAscentVan::onCommitCheckBox, this, _1, _2));
|
||||
getChild<LLUICtrl>("show_self_tag_check")->setCommitCallback(boost::bind(&LLPrefsAscentVan::onCommitCheckBox, this, _1, _2));
|
||||
getChild<LLUICtrl>("show_self_tag_color_check")->setCommitCallback(boost::bind(&LLPrefsAscentVan::onCommitCheckBox, this, _1, _2));
|
||||
getChild<LLUICtrl>("customize_own_tag_check")->setCommitCallback(boost::bind(&LLPrefsAscentVan::onCommitCheckBox, this, _1, _2));
|
||||
getChild<LLUICtrl>("show_friend_tag_check")->setCommitCallback(boost::bind(&LLPrefsAscentVan::onCommitCheckBox, this, _1, _2));
|
||||
getChild<LLUICtrl>("use_status_check")->setCommitCallback(boost::bind(&LLPrefsAscentVan::onCommitCheckBox, this, _1, _2));
|
||||
|
||||
getChild<LLUICtrl>("custom_tag_label_box")->setCommitCallback(boost::bind(&LLPrefsAscentVan::onCommitTextModified, this, _1, _2));
|
||||
getChild<LLUICtrl>("custom_tag_label_box")->setCommitCallback(boost::bind(&LLControlGroup::setString, boost::ref(gSavedSettings), "AscentCustomTagLabel", _2));
|
||||
|
||||
getChild<LLUICtrl>("update_clientdefs")->setCommitCallback(boost::bind(LLPrefsAscentVan::onManualClientUpdate));
|
||||
|
||||
@@ -104,14 +97,6 @@ void LLPrefsAscentVan::onCommitClientTag(LLUICtrl* ctrl)
|
||||
}
|
||||
}
|
||||
|
||||
void LLPrefsAscentVan::onCommitTextModified(LLUICtrl* ctrl, const LLSD& value)
|
||||
{
|
||||
if (ctrl->getName() == "custom_tag_label_box")
|
||||
{
|
||||
gSavedSettings.setString("AscentCustomTagLabel", value);
|
||||
}
|
||||
}
|
||||
|
||||
//static
|
||||
void LLPrefsAscentVan::onManualClientUpdate()
|
||||
{
|
||||
@@ -127,29 +112,6 @@ void LLPrefsAscentVan::onManualClientUpdate()
|
||||
LLFloaterChat::addChat(chat);
|
||||
}
|
||||
|
||||
void LLPrefsAscentVan::onCommitCheckBox(LLUICtrl* ctrl, const LLSD& value)
|
||||
{
|
||||
// llinfos << "Control named " << ctrl->getControlName() << llendl;
|
||||
|
||||
if (ctrl->getName() == "use_status_check")
|
||||
{
|
||||
bool showCustomColors = value.asBoolean();
|
||||
childSetEnabled("friends_color_textbox", showCustomColors);
|
||||
childSetEnabled("friend_color_swatch", showCustomColors || gSavedSettings.getBOOL("ColorFriendChat"));
|
||||
childSetEnabled("estate_owner_color_swatch", showCustomColors || gSavedSettings.getBOOL("ColorEstateOwnerChat"));
|
||||
childSetEnabled("linden_color_swatch", showCustomColors || gSavedSettings.getBOOL("ColorLindenChat"));
|
||||
childSetEnabled("muted_color_swatch", showCustomColors || gSavedSettings.getBOOL("ColorMutedChat"));
|
||||
}
|
||||
else if (ctrl->getName() == "customize_own_tag_check")
|
||||
{
|
||||
bool showCustomOptions = value.asBoolean();
|
||||
childSetEnabled("custom_tag_label_text", showCustomOptions);
|
||||
childSetEnabled("custom_tag_label_box", showCustomOptions);
|
||||
childSetEnabled("custom_tag_color_text", showCustomOptions);
|
||||
childSetEnabled("custom_tag_color_swatch", showCustomOptions);
|
||||
}
|
||||
}
|
||||
|
||||
// Store current settings for cancel
|
||||
void LLPrefsAscentVan::refreshValues()
|
||||
{
|
||||
|
||||
@@ -48,8 +48,6 @@ public:
|
||||
|
||||
protected:
|
||||
void onCommitClientTag(LLUICtrl* ctrl);
|
||||
void onCommitCheckBox(LLUICtrl* ctrl, const LLSD& value);
|
||||
void onCommitTextModified(LLUICtrl* ctrl, const LLSD& value);
|
||||
static void onManualClientUpdate();
|
||||
|
||||
private:
|
||||
|
||||
@@ -61,8 +61,6 @@ static U32 sDataMask = LLDrawPoolAvatar::VERTEX_DATA_MASK;
|
||||
static U32 sBufferUsage = GL_STREAM_DRAW_ARB;
|
||||
static U32 sShaderLevel = 0;
|
||||
|
||||
#define JOINT_COUNT 52
|
||||
|
||||
LLGLSLShader* LLDrawPoolAvatar::sVertexProgram = NULL;
|
||||
BOOL LLDrawPoolAvatar::sSkipOpaque = FALSE;
|
||||
BOOL LLDrawPoolAvatar::sSkipTransparent = FALSE;
|
||||
@@ -1550,93 +1548,8 @@ void LLDrawPoolAvatar::updateRiggedFaceVertexBuffer(LLVOAvatar* avatar, LLFace*
|
||||
}
|
||||
|
||||
if (sShaderLevel <= 0 && face->mLastSkinTime < avatar->getLastSkinTime())
|
||||
{ //perform software vertex skinning for this face
|
||||
LLStrider<LLVector3> position;
|
||||
LLStrider<LLVector3> normal;
|
||||
|
||||
bool has_normal = buffer->hasDataType(LLVertexBuffer::TYPE_NORMAL);
|
||||
buffer->getVertexStrider(position);
|
||||
|
||||
if (has_normal)
|
||||
{
|
||||
buffer->getNormalStrider(normal);
|
||||
}
|
||||
|
||||
LLVector4a* pos = (LLVector4a*) position.get();
|
||||
|
||||
LLVector4a* norm = has_normal ? (LLVector4a*) normal.get() : NULL;
|
||||
|
||||
//build matrix palette
|
||||
LLMatrix4a mp[JOINT_COUNT];
|
||||
LLMatrix4* mat = (LLMatrix4*) mp;
|
||||
|
||||
U32 count = llmin((U32) skin->mJointNames.size(), (U32) JOINT_COUNT);
|
||||
|
||||
for (U32 j = 0; j < count; ++j)
|
||||
{
|
||||
LLJoint* joint = avatar->getJoint(skin->mJointNames[j]);
|
||||
if(!joint)
|
||||
{
|
||||
joint = avatar->getJoint("mRoot");
|
||||
}
|
||||
if (joint)
|
||||
{
|
||||
mat[j] = skin->mInvBindMatrix[j];
|
||||
mat[j] *= joint->getWorldMatrix();
|
||||
}
|
||||
}
|
||||
|
||||
LLMatrix4a bind_shape_matrix;
|
||||
bind_shape_matrix.loadu(skin->mBindShapeMatrix);
|
||||
|
||||
for (U32 j = 0; j < (U32)buffer->getNumVerts(); ++j)
|
||||
{
|
||||
LLMatrix4a final_mat;
|
||||
final_mat.clear();
|
||||
|
||||
S32 idx[4];
|
||||
|
||||
LLVector4 wght;
|
||||
|
||||
F32 scale = 0.f;
|
||||
for (U32 k = 0; k < 4; k++)
|
||||
{
|
||||
F32 w = weight[j][k];
|
||||
|
||||
idx[k] = llclamp((S32) floorf(w), 0, S32(count-1));
|
||||
wght[k] = w - floorf(w);
|
||||
scale += wght[k];
|
||||
}
|
||||
|
||||
wght *= 1.f/scale;
|
||||
|
||||
for (U32 k = 0; k < 4; k++)
|
||||
{
|
||||
F32 w = wght[k];
|
||||
|
||||
LLMatrix4a src;
|
||||
src.setMul(mp[idx[k]], w);
|
||||
|
||||
final_mat.add(src);
|
||||
}
|
||||
|
||||
|
||||
LLVector4a& v = vol_face.mPositions[j];
|
||||
LLVector4a t;
|
||||
LLVector4a dst;
|
||||
bind_shape_matrix.affineTransform(v, t);
|
||||
final_mat.affineTransform(t, dst);
|
||||
pos[j] = dst;
|
||||
|
||||
if (norm)
|
||||
{
|
||||
LLVector4a& n = vol_face.mNormals[j];
|
||||
bind_shape_matrix.rotate(n, t);
|
||||
final_mat.rotate(t, dst);
|
||||
dst.normalize3fast();
|
||||
norm[j] = dst;
|
||||
}
|
||||
}
|
||||
{
|
||||
avatar->updateSoftwareSkinnedVertices(skin, weight, vol_face, buffer);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -42,6 +42,7 @@ class LLMeshSkinInfo;
|
||||
class LLVolume;
|
||||
class LLVolumeFace;
|
||||
|
||||
const U32 JOINT_COUNT = 52;
|
||||
|
||||
class LLDrawPoolAvatar : public LLFacePool
|
||||
{
|
||||
|
||||
@@ -452,7 +452,7 @@ U16 LLFace::getGeometryAvatar(
|
||||
LLStrider<LLVector3> &normals,
|
||||
LLStrider<LLVector2> &tex_coords,
|
||||
LLStrider<F32> &vertex_weights,
|
||||
LLStrider<LLVector4> &clothing_weights)
|
||||
LLStrider<LLVector4a> &clothing_weights)
|
||||
{
|
||||
if (mVertexBuffer.notNull())
|
||||
{
|
||||
@@ -1143,11 +1143,11 @@ void LLFace::cacheFaceInVRAM(const LLVolumeFace& vf)
|
||||
|
||||
if (vf.mWeights)
|
||||
{
|
||||
LLStrider<LLVector4> f_wght;
|
||||
LLStrider<LLVector4a> f_wght;
|
||||
buff->getWeight4Strider(f_wght);
|
||||
for (U32 i = 0; i < (U32)vf.mNumVertices; ++i)
|
||||
{
|
||||
(*f_wght++).set(vf.mWeights[i].getF32ptr());
|
||||
(*f_wght++) = vf.mWeights[i];
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1253,7 +1253,7 @@ BOOL LLFace::getGeometryVolume(const LLVolume& volume,
|
||||
LLStrider<LLColor4U> colors;
|
||||
LLStrider<LLVector3> tangent;
|
||||
LLStrider<U16> indicesp;
|
||||
LLStrider<LLVector4> wght;
|
||||
LLStrider<LLVector4a> wght;
|
||||
|
||||
BOOL full_rebuild = force_rebuild || mDrawablep->isState(LLDrawable::REBUILD_VOLUME);
|
||||
|
||||
@@ -2126,8 +2126,10 @@ BOOL LLFace::getGeometryVolume(const LLVolume& volume,
|
||||
{
|
||||
LLFastTimer t(FTM_FACE_GEOM_WEIGHTS);
|
||||
mVertexBuffer->getWeight4Strider(wght, mGeomIndex, mGeomCount, map_range);
|
||||
F32* weights = (F32*) wght.get();
|
||||
LLVector4a::memcpyNonAliased16(weights, (F32*) vf.mWeights, num_vertices*4*sizeof(F32));
|
||||
for(S32 i=0;i<num_vertices;++i)
|
||||
{
|
||||
*(wght++) = vf.mWeights[i];
|
||||
}
|
||||
if (map_range)
|
||||
{
|
||||
mVertexBuffer->flush();
|
||||
|
||||
@@ -183,7 +183,7 @@ public:
|
||||
LLStrider<LLVector3> &normals,
|
||||
LLStrider<LLVector2> &texCoords,
|
||||
LLStrider<F32> &vertex_weights,
|
||||
LLStrider<LLVector4> &clothing_weights);
|
||||
LLStrider<LLVector4a> &clothing_weights);
|
||||
|
||||
// For volumes, etc.
|
||||
U16 getGeometry(LLStrider<LLVector3> &vertices,
|
||||
|
||||
@@ -4737,7 +4737,7 @@ void LLModelPreview::genBuffers(S32 lod, bool include_skin_weights)
|
||||
LLStrider<LLVector3> normal_strider;
|
||||
LLStrider<LLVector2> tc_strider;
|
||||
LLStrider<U16> index_strider;
|
||||
LLStrider<LLVector4> weights_strider;
|
||||
LLStrider<LLVector4a> weights_strider;
|
||||
|
||||
vb->getVertexStrider(vertex_strider);
|
||||
vb->getIndexStrider(index_strider);
|
||||
@@ -4780,7 +4780,7 @@ void LLModelPreview::genBuffers(S32 lod, bool include_skin_weights)
|
||||
w.mV[i] = joint + wght;
|
||||
}
|
||||
|
||||
*(weights_strider++) = w;
|
||||
(*(weights_strider++)).loadua(w.mV);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5417,71 +5417,11 @@ BOOL LLModelPreview::render()
|
||||
for (U32 i = 0; i < mVertexBuffer[mPreviewLOD][model].size(); ++i)
|
||||
{
|
||||
LLVertexBuffer* buffer = mVertexBuffer[mPreviewLOD][model][i];
|
||||
|
||||
const LLVolumeFace& face = model->getVolumeFace(i);
|
||||
|
||||
LLStrider<LLVector3> position;
|
||||
buffer->getVertexStrider(position);
|
||||
|
||||
LLStrider<LLVector4> weight;
|
||||
LLStrider<LLVector4a> weight;
|
||||
buffer->getWeight4Strider(weight);
|
||||
|
||||
//quick 'n dirty software vertex skinning
|
||||
|
||||
//build matrix palette
|
||||
|
||||
LLMatrix4 mat[64];
|
||||
for (U32 j = 0; j < model->mSkinInfo.mJointNames.size(); ++j)
|
||||
{
|
||||
LLJoint* joint = getPreviewAvatar()->getJoint(model->mSkinInfo.mJointNames[j]);
|
||||
if (joint)
|
||||
{
|
||||
mat[j] = model->mSkinInfo.mInvBindMatrix[j];
|
||||
mat[j] *= joint->getWorldMatrix();
|
||||
}
|
||||
}
|
||||
|
||||
for (S32 j = 0; j < buffer->getNumVerts(); ++j)
|
||||
{
|
||||
LLMatrix4 final_mat;
|
||||
final_mat.mMatrix[0][0] = final_mat.mMatrix[1][1] = final_mat.mMatrix[2][2] = final_mat.mMatrix[3][3] = 0.f;
|
||||
|
||||
LLVector4 wght;
|
||||
S32 idx[4];
|
||||
|
||||
F32 scale = 0.f;
|
||||
for (U32 k = 0; k < 4; k++)
|
||||
{
|
||||
F32 w = weight[j].mV[k];
|
||||
|
||||
idx[k] = (S32) floorf(w);
|
||||
wght.mV[k] = w - floorf(w);
|
||||
scale += wght.mV[k];
|
||||
}
|
||||
|
||||
wght *= 1.f/scale;
|
||||
|
||||
for (U32 k = 0; k < 4; k++)
|
||||
{
|
||||
F32* src = (F32*) mat[idx[k]].mMatrix;
|
||||
F32* dst = (F32*) final_mat.mMatrix;
|
||||
|
||||
F32 w = wght.mV[k];
|
||||
|
||||
for (U32 l = 0; l < 16; l++)
|
||||
{
|
||||
dst[l] += src[l]*w;
|
||||
}
|
||||
}
|
||||
|
||||
//VECTORIZE THIS
|
||||
LLVector3 v(face.mPositions[j].getF32ptr());
|
||||
|
||||
v = v * model->mSkinInfo.mBindShapeMatrix;
|
||||
v = v * final_mat;
|
||||
|
||||
position[j] = v;
|
||||
}
|
||||
getPreviewAvatar()->updateSoftwareSkinnedVertices(&model->mSkinInfo, weight.get(), face, buffer);
|
||||
|
||||
const std::string& binding = instance.mModel->mMaterialList[i];
|
||||
const LLImportMaterial& material = instance.mMaterial[binding];
|
||||
|
||||
@@ -116,7 +116,7 @@ void LLFloaterRegionRestarting::draw()
|
||||
LLFloater::draw();
|
||||
|
||||
static const LLCachedControl<bool> alchemyRegionShake(gSavedSettings, "AlchemyRegionRestartShake", true);
|
||||
if (!alchemyRegionShake)
|
||||
if (!alchemyRegionShake || isMinimized()) // If we're minimized, leave the user alone
|
||||
return;
|
||||
|
||||
const F32 SHAKE_INTERVAL = 0.025;
|
||||
|
||||
@@ -109,7 +109,7 @@ F32 FALL_TIME = 0.6f;
|
||||
S32 BORDER_WIDTH = 6;
|
||||
|
||||
const S32 MAX_POSTCARD_DATASIZE = 1024 * 1024; // one megabyte
|
||||
const S32 MAX_TEXTURE_SIZE = 512 ; //max upload texture size 512 * 512
|
||||
const S32 MAX_TEXTURE_SIZE = 1024; //max upload texture size 1024 * 1024
|
||||
|
||||
static std::string snapshotKeepAspectName();
|
||||
|
||||
@@ -1185,7 +1185,7 @@ LLSnapshotLivePreview::EAspectSizeProblem LLSnapshotLivePreview::generateFormatt
|
||||
if (mSnapshotType == SNAPSHOT_TEXTURE)
|
||||
{
|
||||
// 'scaled' must be a power of two.
|
||||
scaled->biasedScaleToPowerOfTwo(mWidth, mHeight, 512);
|
||||
scaled->biasedScaleToPowerOfTwo(mWidth, mHeight, 1024);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -2488,8 +2488,7 @@ void LLFloaterSnapshot::Impl::updateResolution(LLUICtrl* ctrl, void* data, bool
|
||||
LLSpinCtrl* width_spinner = view->getChild<LLSpinCtrl>("snapshot_width");
|
||||
LLSpinCtrl* height_spinner = view->getChild<LLSpinCtrl>("snapshot_height");
|
||||
|
||||
if (gSavedSettings.getS32("LastSnapshotType") == LLSnapshotLivePreview::SNAPSHOT_TEXTURE ||
|
||||
gSavedSettings.getBOOL("RenderUIInSnapshot") ||
|
||||
if ( gSavedSettings.getBOOL("RenderUIInSnapshot") ||
|
||||
gSavedSettings.getBOOL("RenderHUDInSnapshot"))
|
||||
{
|
||||
// Disable without making label gray.
|
||||
|
||||
@@ -865,11 +865,20 @@ void LLPanelDisplay::apply()
|
||||
{
|
||||
U32 fsaa_value = childGetValue("fsaa").asInteger();
|
||||
S32 vsync_value = childGetValue("vsync").asInteger();
|
||||
bool fbo_value = childGetValue("fbo").asBoolean();
|
||||
|
||||
LLWindow* window = gViewerWindow->getWindow();
|
||||
|
||||
if(vsync_value == -1 && !gGLManager.mHasAdaptiveVsync)
|
||||
vsync_value = 0;
|
||||
|
||||
bool apply_fsaa_change = !gSavedSettings.getBOOL("RenderUseFBO") && (mFSAASamples != fsaa_value);
|
||||
bool apply_fsaa_change = fbo_value ? false : (mFSAASamples != fsaa_value);
|
||||
|
||||
if(!apply_fsaa_change && (bool)mUseFBO != fbo_value)
|
||||
{
|
||||
apply_fsaa_change = fsaa_value != 0 || mFSAASamples != 0 ;
|
||||
}
|
||||
|
||||
bool apply_vsync_change = vsync_value != mVsyncMode;
|
||||
|
||||
gSavedSettings.setU32("RenderFSAASamples", fsaa_value);
|
||||
@@ -889,7 +898,6 @@ void LLPanelDisplay::apply()
|
||||
if(apply_fsaa_change || apply_vsync_change)
|
||||
{
|
||||
bool logged_in = (LLStartUp::getStartupState() >= STATE_STARTED);
|
||||
LLWindow* window = gViewerWindow->getWindow();
|
||||
LLCoordScreen size;
|
||||
window->getSize(&size);
|
||||
LLGLState::checkStates();
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -145,9 +145,7 @@ protected:
|
||||
void onCommitNormalTexture(const LLSD& data);
|
||||
void onCancelNormalTexture(const LLSD& data);
|
||||
void onSelectNormalTexture(const LLSD& data);
|
||||
void onCommitColor(const LLSD& data);
|
||||
void onCommitShinyColor(const LLSD& data);
|
||||
void onCommitAlpha(const LLSD& data);
|
||||
void onCancelColor(const LLSD& data);
|
||||
void onSelectColor(const LLSD& data);
|
||||
|
||||
@@ -165,39 +163,27 @@ protected:
|
||||
|
||||
// Callback funcs for individual controls
|
||||
//
|
||||
static void onCommitTextureInfo( LLUICtrl* ctrl, void* userdata);
|
||||
void onCommitTextureInfo();
|
||||
|
||||
static void onCommitMaterialBumpyScaleX( LLUICtrl* ctrl, void* userdata);
|
||||
static void onCommitMaterialBumpyScaleY( LLUICtrl* ctrl, void* userdata);
|
||||
static void onCommitMaterialBumpyRot( LLUICtrl* ctrl, void* userdata);
|
||||
static void onCommitMaterialBumpyOffsetX( LLUICtrl* ctrl, void* userdata);
|
||||
static void onCommitMaterialBumpyOffsetY( LLUICtrl* ctrl, void* userdata);
|
||||
void onCommitMaterialBumpyScaleX(const LLSD& value);
|
||||
void onCommitMaterialBumpyScaleY(const LLSD& value);
|
||||
void onCommitMaterialBumpyRot(const LLSD& value);
|
||||
|
||||
static void onCommitMaterialShinyScaleX( LLUICtrl* ctrl, void* userdata);
|
||||
static void onCommitMaterialShinyScaleY( LLUICtrl* ctrl, void* userdata);
|
||||
static void onCommitMaterialShinyRot( LLUICtrl* ctrl, void* userdata);
|
||||
static void onCommitMaterialShinyOffsetX( LLUICtrl* ctrl, void* userdata);
|
||||
static void onCommitMaterialShinyOffsetY( LLUICtrl* ctrl, void* userdata);
|
||||
void onCommitMaterialShinyScaleX(const LLSD& value);
|
||||
void onCommitMaterialShinyScaleY(const LLSD& value);
|
||||
void onCommitMaterialShinyRot(const LLSD& value);
|
||||
|
||||
static void onCommitMaterialGloss( LLUICtrl* ctrl, void* userdata);
|
||||
static void onCommitMaterialEnv( LLUICtrl* ctrl, void* userdata);
|
||||
static void onCommitMaterialMaskCutoff( LLUICtrl* ctrl, void* userdata);
|
||||
|
||||
static void onCommitMaterialsMedia( LLUICtrl* ctrl, void* userdata);
|
||||
void onCommitMaterialsMedia();
|
||||
void onCommitMaterialType();
|
||||
static void onCommitBump( LLUICtrl* ctrl, void* userdata);
|
||||
static void onCommitTexGen( LLUICtrl* ctrl, void* userdata);
|
||||
static void onCommitShiny( LLUICtrl* ctrl, void* userdata);
|
||||
static void onCommitAlphaMode( LLUICtrl* ctrl, void* userdata);
|
||||
static void onCommitFullbright( LLUICtrl* ctrl, void* userdata);
|
||||
static void onCommitGlow( LLUICtrl* ctrl, void *userdata);
|
||||
static void onCommitPlanarAlign( LLUICtrl* ctrl, void* userdata);
|
||||
static void onCommitRepeatsPerMeter( LLUICtrl* ctrl, void* userinfo);
|
||||
static void onClickAutoFix(void*);
|
||||
void onCommitAlphaMode();
|
||||
void onCommitPlanarAlign();
|
||||
void onCommitRepeatsPerMeter(LLUICtrl* repeats_ctrl);
|
||||
void onClickAutoFix();
|
||||
|
||||
static F32 valueGlow(LLViewerObject* object, S32 face);
|
||||
static void onClickCopy(void*);
|
||||
static void onClickPaste(void*);
|
||||
void onClickCopy();
|
||||
void onClickPaste();
|
||||
// <FS:CR> Build tool enhancements
|
||||
void onClickMapsSync();
|
||||
void alignMaterialsProperties();
|
||||
@@ -212,22 +198,7 @@ private:
|
||||
//
|
||||
LLUUID getCurrentNormalMap();
|
||||
LLUUID getCurrentSpecularMap();
|
||||
U32 getCurrentShininess();
|
||||
U32 getCurrentBumpiness();
|
||||
U8 getCurrentDiffuseAlphaMode();
|
||||
U8 getCurrentAlphaMaskCutoff();
|
||||
U8 getCurrentEnvIntensity();
|
||||
U8 getCurrentGlossiness();
|
||||
F32 getCurrentBumpyRot();
|
||||
F32 getCurrentBumpyScaleU();
|
||||
F32 getCurrentBumpyScaleV();
|
||||
F32 getCurrentBumpyOffsetU();
|
||||
F32 getCurrentBumpyOffsetV();
|
||||
F32 getCurrentShinyRot();
|
||||
F32 getCurrentShinyScaleU();
|
||||
F32 getCurrentShinyScaleV();
|
||||
F32 getCurrentShinyOffsetU();
|
||||
F32 getCurrentShinyOffsetV();
|
||||
|
||||
// Update visibility of controls to match current UI mode
|
||||
// (e.g. materials vs media editing)
|
||||
@@ -382,6 +353,69 @@ private:
|
||||
data_to_return = data_value;
|
||||
}
|
||||
|
||||
// <alchemy>
|
||||
friend struct LLPanelFaceSetTEFunctor; // Must access some of these
|
||||
// UI Widgets
|
||||
LLView* mMediaInfo;
|
||||
LLView* mMediaAdd;
|
||||
LLView* mMediaDelete;
|
||||
LLView* mLabelGlossy;
|
||||
LLView* mLabelEnvironment;
|
||||
LLView* mLabelShinyColor;
|
||||
LLView* mLabelAlphaMode;
|
||||
LLView* mLabelMaskCutoff;
|
||||
LLView* mLabelBumpy;
|
||||
LLView* mLabelShiny;
|
||||
LLView* mLabelColor;
|
||||
LLView* mLabelGlow;
|
||||
LLView* mLabelTexGen;
|
||||
LLComboBox* mComboShiny;
|
||||
LLComboBox* mComboBumpy;
|
||||
LLComboBox* mComboAlpha;
|
||||
LLSpinCtrl* mCtrlTexScaleU;
|
||||
LLUICtrl* mCtrlFlipTexScaleU;
|
||||
LLSpinCtrl* mCtrlTexScaleV;
|
||||
LLUICtrl* mCtrlFlipTexScaleV;
|
||||
LLSpinCtrl* mCtrlTexRot;
|
||||
LLUICtrl* mCtrlRpt;
|
||||
LLUICtrl* mCtrlPlanar;
|
||||
LLSpinCtrl* mCtrlTexOffsetU;
|
||||
LLSpinCtrl* mCtrlTexOffsetV;
|
||||
LLUICtrl* mBumpyScaleU;
|
||||
LLUICtrl* mBumpyScaleV;
|
||||
LLUICtrl* mBumpyRot;
|
||||
LLUICtrl* mBumpyOffsetU;
|
||||
LLUICtrl* mBumpyOffsetV;
|
||||
LLUICtrl* mShinyScaleU;
|
||||
LLUICtrl* mShinyScaleV;
|
||||
LLUICtrl* mShinyRot;
|
||||
LLUICtrl* mShinyOffsetU;
|
||||
LLUICtrl* mShinyOffsetV;
|
||||
LLUICtrl* mGlossyCtrl;
|
||||
LLUICtrl* mEnvironmentCtrl;
|
||||
LLUICtrl* mCtrlMaskCutoff;
|
||||
LLUICtrl* mCtrlAlign;
|
||||
LLUICtrl* mCtrlMapsSync;
|
||||
LLUICtrl* mCtrlCopy;
|
||||
LLUICtrl* mCtrlPaste;
|
||||
LLTextureCtrl* mTextureCtrl;
|
||||
LLTextureCtrl* mShinyTextureCtrl;
|
||||
LLTextureCtrl* mBumpyTextureCtrl;
|
||||
LLColorSwatchCtrl* mColorSwatch;
|
||||
LLColorSwatchCtrl* mShinyColorSwatch;
|
||||
|
||||
LLComboBox* mComboTexGen;
|
||||
LLComboBox* mComboMatMedia;
|
||||
LLComboBox* mComboMatType;
|
||||
|
||||
LLCheckBoxCtrl* mCheckFullbright;
|
||||
|
||||
LLTextBox* mLabelColorTransp;
|
||||
LLSpinCtrl* mCtrlColorTransp; // transparency = 1 - alpha
|
||||
|
||||
LLSpinCtrl* mCtrlGlow;
|
||||
// </alchemy>
|
||||
|
||||
// Update vis and enabling of specific subsets of controls based on material params
|
||||
// (e.g. hide the spec controls if no spec texture is applied)
|
||||
//
|
||||
|
||||
@@ -53,7 +53,7 @@ public:
|
||||
|
||||
BOOL handleKeyHere(KEY key, MASK mask);
|
||||
|
||||
static void onCancel(void* user_data);
|
||||
static void start(LLPrefsVoice* p) { (new LLVoiceSetKeyDialog(p))->startModal(); }
|
||||
|
||||
private:
|
||||
LLPrefsVoice* mParent;
|
||||
@@ -63,8 +63,11 @@ LLVoiceSetKeyDialog::LLVoiceSetKeyDialog(LLPrefsVoice* parent)
|
||||
: LLModalDialog(LLStringUtil::null, 240, 100), mParent(parent)
|
||||
{
|
||||
LLUICtrlFactory::getInstance()->buildFloater(this, "floater_select_key.xml");
|
||||
childSetAction("Cancel", onCancel, this);
|
||||
childSetFocus("Cancel");
|
||||
if (LLUICtrl* ctrl = findChild<LLUICtrl>("Cancel"))
|
||||
{
|
||||
ctrl->setCommitCallback(boost::bind(&LLModalDialog::close, this, false));
|
||||
ctrl->setFocus(true);
|
||||
}
|
||||
|
||||
gFocusMgr.setKeystrokesOnly(TRUE);
|
||||
}
|
||||
@@ -77,7 +80,7 @@ BOOL LLVoiceSetKeyDialog::handleKeyHere(KEY key, MASK mask)
|
||||
{
|
||||
BOOL result = TRUE;
|
||||
|
||||
if(key == 'Q' && mask == MASK_CONTROL)
|
||||
if (key == 'Q' && mask == MASK_CONTROL)
|
||||
{
|
||||
result = FALSE;
|
||||
}
|
||||
@@ -90,13 +93,6 @@ BOOL LLVoiceSetKeyDialog::handleKeyHere(KEY key, MASK mask)
|
||||
return result;
|
||||
}
|
||||
|
||||
//static
|
||||
void LLVoiceSetKeyDialog::onCancel(void* user_data)
|
||||
{
|
||||
LLVoiceSetKeyDialog* self = (LLVoiceSetKeyDialog*)user_data;
|
||||
self->close();
|
||||
}
|
||||
|
||||
namespace
|
||||
{
|
||||
void* createDevicePanel(void*)
|
||||
@@ -121,20 +117,13 @@ LLPrefsVoice::~LLPrefsVoice()
|
||||
|
||||
BOOL LLPrefsVoice::postBuild()
|
||||
{
|
||||
childSetCommitCallback("enable_voice_check", onCommitEnableVoiceChat, this);
|
||||
childSetAction("set_voice_hotkey_button", onClickSetKey, this);
|
||||
childSetAction("set_voice_middlemouse_button", onClickSetMiddleMouse, this);
|
||||
getChild<LLUICtrl>("enable_voice_check")->setCommitCallback(boost::bind(&LLPrefsVoice::onCommitEnableVoiceChat, this, _2));
|
||||
getChild<LLUICtrl>("set_voice_hotkey_button")->setCommitCallback(boost::bind(LLVoiceSetKeyDialog::start, this));
|
||||
getChild<LLUICtrl>("set_voice_middlemouse_button")->setCommitCallback(boost::bind(&LLView::setValue, getChildView("modifier_combo"), "MiddleMouse"));
|
||||
|
||||
BOOL voice_disabled = gSavedSettings.getBOOL("CmdLineDisableVoice");
|
||||
childSetVisible("voice_unavailable", voice_disabled);
|
||||
childSetVisible("enable_voice_check", !voice_disabled);
|
||||
childSetEnabled("enable_voice_check", !voice_disabled);
|
||||
getChild<LLUICtrl>("set_voice_middlemouse_button")->setEnabled(!gSavedSettings.getBOOL("CmdLineDisableVoice") && gSavedSettings.getBOOL("EnableVoiceChat"));
|
||||
|
||||
bool enable = !voice_disabled && gSavedSettings.getBOOL("EnableVoiceChat");
|
||||
childSetValue("enable_voice_check", enable);
|
||||
onCommitEnableVoiceChat(getChild<LLCheckBoxCtrl>("enable_voice_check"), this);
|
||||
|
||||
if (LLCheckBoxCtrl* check = getChild<LLCheckBoxCtrl>("enable_multivoice_check"))
|
||||
if (LLCheckBoxCtrl* check = findChild<LLCheckBoxCtrl>("enable_multivoice_check"))
|
||||
{
|
||||
check->setValue(gSavedSettings.getBOOL("VoiceMultiInstance"));
|
||||
check->setLabel(getString("multivoice_label", LLTrans::getDefaultArgs()));
|
||||
@@ -160,7 +149,7 @@ void LLPrefsVoice::apply()
|
||||
gSavedSettings.setBOOL("LipSyncEnabled", childGetValue("enable_lip_sync_check"));
|
||||
gSavedSettings.setBOOL("VoiceMultiInstance", childGetValue("enable_multivoice_check"));
|
||||
|
||||
if (LLPanelVoiceDeviceSettings* voice_device_settings = getChild<LLPanelVoiceDeviceSettings>("device_settings_panel"))
|
||||
if (LLPanelVoiceDeviceSettings* voice_device_settings = findChild<LLPanelVoiceDeviceSettings>("device_settings_panel"))
|
||||
{
|
||||
voice_device_settings->apply();
|
||||
}
|
||||
@@ -180,7 +169,7 @@ void LLPrefsVoice::apply()
|
||||
|
||||
void LLPrefsVoice::cancel()
|
||||
{
|
||||
if (LLPanelVoiceDeviceSettings* voice_device_settings = getChild<LLPanelVoiceDeviceSettings>("device_settings_panel"))
|
||||
if (LLPanelVoiceDeviceSettings* voice_device_settings = findChild<LLPanelVoiceDeviceSettings>("device_settings_panel"))
|
||||
{
|
||||
voice_device_settings->cancel();
|
||||
}
|
||||
@@ -188,42 +177,23 @@ void LLPrefsVoice::cancel()
|
||||
|
||||
void LLPrefsVoice::setKey(KEY key)
|
||||
{
|
||||
childSetValue("modifier_combo", LLKeyboard::stringFromKey(key));
|
||||
getChildView("modifier_combo")->setValue(LLKeyboard::stringFromKey(key));
|
||||
}
|
||||
|
||||
//static
|
||||
void LLPrefsVoice::onCommitEnableVoiceChat(LLUICtrl* ctrl, void* user_data)
|
||||
void LLPrefsVoice::onCommitEnableVoiceChat(const LLSD& value)
|
||||
{
|
||||
LLPrefsVoice* self = (LLPrefsVoice*)user_data;
|
||||
LLCheckBoxCtrl* enable_voice_chat = (LLCheckBoxCtrl*)ctrl;
|
||||
bool enable = value.asBoolean();
|
||||
|
||||
bool enable = enable_voice_chat->getValue();
|
||||
|
||||
self->childSetEnabled("modifier_combo", enable);
|
||||
self->childSetEnabled("push_to_talk_label", enable);
|
||||
self->childSetEnabled("voice_call_friends_only_check", enable);
|
||||
self->childSetEnabled("auto_disengage_mic_check", enable);
|
||||
self->childSetEnabled("push_to_talk_toggle_check", enable);
|
||||
self->childSetEnabled("ear_location", enable);
|
||||
self->childSetEnabled("enable_lip_sync_check", enable);
|
||||
self->childSetEnabled("set_voice_hotkey_button", enable);
|
||||
self->childSetEnabled("set_voice_middlemouse_button", enable);
|
||||
self->childSetEnabled("device_settings_btn", enable);
|
||||
self->childSetEnabled("device_settings_panel", enable);
|
||||
}
|
||||
|
||||
//static
|
||||
void LLPrefsVoice::onClickSetKey(void* user_data)
|
||||
{
|
||||
LLPrefsVoice* self = (LLPrefsVoice*)user_data;
|
||||
LLVoiceSetKeyDialog* dialog = new LLVoiceSetKeyDialog(self);
|
||||
dialog->startModal();
|
||||
}
|
||||
|
||||
//static
|
||||
void LLPrefsVoice::onClickSetMiddleMouse(void* user_data)
|
||||
{
|
||||
LLPrefsVoice* self = (LLPrefsVoice*)user_data;
|
||||
self->childSetValue("modifier_combo", "MiddleMouse");
|
||||
getChildView("modifier_combo")->setEnabled(enable);
|
||||
getChildView("push_to_talk_label")->setEnabled(enable);
|
||||
getChildView("voice_call_friends_only_check")->setEnabled(enable);
|
||||
getChildView("auto_disengage_mic_check")->setEnabled(enable);
|
||||
getChildView("push_to_talk_toggle_check")->setEnabled(enable);
|
||||
getChildView("ear_location")->setEnabled(enable);
|
||||
getChildView("enable_lip_sync_check")->setEnabled(enable);
|
||||
getChildView("set_voice_hotkey_button")->setEnabled(enable);
|
||||
getChildView("set_voice_middlemouse_button")->setEnabled(enable);
|
||||
getChildView("device_settings_btn")->setEnabled(enable);
|
||||
getChildView("device_settings_panel")->setEnabled(enable);
|
||||
}
|
||||
|
||||
|
||||
@@ -49,9 +49,7 @@ public:
|
||||
void setKey(KEY key);
|
||||
|
||||
private:
|
||||
static void onCommitEnableVoiceChat(LLUICtrl* ctrl, void* user_data);
|
||||
static void onClickSetKey(void* user_data);
|
||||
static void onClickSetMiddleMouse(void* user_data);
|
||||
void onCommitEnableVoiceChat(const LLSD& value);
|
||||
};
|
||||
|
||||
#endif // LLPREFSVOICE_H
|
||||
|
||||
@@ -413,7 +413,7 @@ void LLViewerJointMesh::updateFaceData(LLFace *face, F32 pixel_area, BOOL damp_w
|
||||
LLStrider<LLVector3> normalsp;
|
||||
LLStrider<LLVector2> tex_coordsp;
|
||||
LLStrider<F32> vertex_weightsp;
|
||||
LLStrider<LLVector4> clothing_weightsp;
|
||||
LLStrider<LLVector4a> clothing_weightsp;
|
||||
LLStrider<U16> indicesp;
|
||||
|
||||
// Copy data into the faces from the polymesh data.
|
||||
|
||||
@@ -870,6 +870,13 @@ void upload_new_resource(const std::string& src_filename, std::string name,
|
||||
asset_type = LLAssetType::AT_ANIMATION;
|
||||
filename = src_filename;
|
||||
}
|
||||
else if(exten == "lsl" || exten == "gesture" || exten == "notecard")
|
||||
{
|
||||
if (exten == "lsl") asset_type = LLAssetType::AT_LSL_TEXT;
|
||||
else if (exten == "gesture") asset_type = LLAssetType::AT_GESTURE;
|
||||
else if (exten == "notecard") asset_type = LLAssetType::AT_NOTECARD;
|
||||
filename = src_filename;
|
||||
}
|
||||
// </edit>
|
||||
else
|
||||
{
|
||||
|
||||
@@ -6600,7 +6600,8 @@ void update_region_restart(const LLSD& llsdBlock)
|
||||
if (restarting_floater)
|
||||
{
|
||||
restarting_floater->updateTime(seconds);
|
||||
restarting_floater->center();
|
||||
if (!restarting_floater->isMinimized())
|
||||
restarting_floater->center();
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -6608,6 +6609,8 @@ void update_region_restart(const LLSD& llsdBlock)
|
||||
params["NAME"] = llsdBlock["NAME"];
|
||||
params["SECONDS"] = (LLSD::Integer)seconds;
|
||||
LLFloaterRegionRestarting::showInstance(params);
|
||||
if (gSavedSettings.getBOOL("LiruRegionRestartMinimized"))
|
||||
LLFloaterRegionRestarting::findInstance()->setMinimized(true);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -30,10 +30,15 @@
|
||||
#ifndef LL_LLVIEWEROBJECTBACKUP_H
|
||||
#define LL_LLVIEWEROBJECTBACKUP_H
|
||||
|
||||
#include "boost/unordered_map.hpp"
|
||||
#include "boost/unordered_set.hpp"
|
||||
|
||||
#include "llviewerinventory.h"
|
||||
|
||||
enum export_states {
|
||||
EXPORT_INIT,
|
||||
EXPORT_CHECK_PERMS,
|
||||
EXPORT_FETCH_PHYSICS,
|
||||
EXPORT_STRUCTURE,
|
||||
EXPORT_TEXTURES,
|
||||
EXPORT_LLSD,
|
||||
@@ -48,17 +53,17 @@ public:
|
||||
|
||||
// Floater stuff
|
||||
virtual void show(bool exporting);
|
||||
virtual void draw();
|
||||
virtual void onClose(bool app_quitting);
|
||||
|
||||
// Static accessor
|
||||
static LLObjectBackup* getInstance();
|
||||
static bool instanceExists() { return sInstance != NULL; }
|
||||
|
||||
// Export idle callback
|
||||
static void exportWorker(void *userdata);
|
||||
|
||||
// Import entry point
|
||||
void importObject(bool upload=FALSE);
|
||||
void importObject(bool upload = false);
|
||||
void importObject_continued(AIFilePicker* filepicker);
|
||||
|
||||
// Export entry point
|
||||
@@ -72,7 +77,7 @@ public:
|
||||
void uploadNextAsset();
|
||||
|
||||
// Folder public geter
|
||||
std::string getfolder() { return mFolder; };
|
||||
std::string getfolder() { return mFolder; }
|
||||
|
||||
// Prim updated callback
|
||||
void primUpdate(LLViewerObject* object);
|
||||
@@ -87,8 +92,11 @@ public:
|
||||
static const U32 TEXTURE_IS_NULL = 0x08;
|
||||
static const U32 TEXTURE_SAVED_FAILED = 0x10;
|
||||
|
||||
// Is ready for next texture?
|
||||
bool mNextTextureReady;
|
||||
// Set when the region supports the extra physics flags
|
||||
bool mGotExtraPhysics;
|
||||
|
||||
// Are we ready to check for next texture?
|
||||
bool mCheckNextTexture;
|
||||
|
||||
// Export state machine
|
||||
enum export_states mExportState;
|
||||
@@ -96,23 +104,24 @@ public:
|
||||
// Export result flags for textures.
|
||||
U32 mNonExportedTextures;
|
||||
|
||||
static void setDefaultTextures();
|
||||
|
||||
// Is exporting these objects allowed
|
||||
bool validatePerms(const LLPermissions* item_permissions);
|
||||
|
||||
private:
|
||||
// Static singleton stuff
|
||||
LLObjectBackup();
|
||||
static LLObjectBackup* sInstance;
|
||||
LLObjectBackup();
|
||||
|
||||
// Update the floater with status numbers
|
||||
void updateImportNumbers();
|
||||
void updateExportNumbers();
|
||||
|
||||
// Permissions stuff.
|
||||
LLUUID validateTextureID(LLUUID asset_id);
|
||||
LLUUID validateTextureID(const LLUUID& asset_id);
|
||||
|
||||
// Convert a selection list of objects to LLSD
|
||||
LLSD primsToLLSD(LLViewerObject::child_list_t child_list, bool is_attachment);
|
||||
LLSD primsToLLSD(LLViewerObject::child_list_t child_list,
|
||||
bool is_attachment);
|
||||
|
||||
// Start the import process
|
||||
void importFirstObject();
|
||||
@@ -126,19 +135,18 @@ private:
|
||||
// Apply LLSD to object
|
||||
void xmlToPrim(LLSD prim_llsd, LLViewerObject* pobject);
|
||||
|
||||
// Rez a prim at a given position (note not agent offset X/Y screen for raycast)
|
||||
// Rez a prim at a given position
|
||||
void rezAgentOffset(LLVector3 offset);
|
||||
|
||||
// Get an offset from the agent based on rotation and current pos
|
||||
LLVector3 offsetAgent(LLVector3 offset);
|
||||
|
||||
private:
|
||||
static LLObjectBackup* sInstance;
|
||||
|
||||
// Are we active flag
|
||||
bool mRunning;
|
||||
|
||||
// File and folder name control
|
||||
std::string mFileName;
|
||||
std::string mFolder;
|
||||
|
||||
// True if we need to rebase the assets
|
||||
bool mRetexture;
|
||||
|
||||
@@ -151,26 +159,6 @@ private:
|
||||
// No prims rezed
|
||||
U32 mRezCount;
|
||||
|
||||
// Rebase map
|
||||
std::map<LLUUID,LLUUID> mAssetMap;
|
||||
|
||||
// Export texture list
|
||||
std::list<LLUUID> mTexturesList;
|
||||
|
||||
// Import object tracking
|
||||
std::vector<LLViewerObject*> mToSelect;
|
||||
std::vector<LLViewerObject*>::iterator mProcessIter;
|
||||
|
||||
// Working LLSD holders
|
||||
LLUUID mCurrentAsset;
|
||||
LLSD mLLSD;
|
||||
LLSD mThisGroup;
|
||||
LLUUID mExpectingUpdate;
|
||||
|
||||
// Working llsd itterators for objects and linksets
|
||||
LLSD::map_const_iterator mPrimImportIter;
|
||||
LLSD::array_const_iterator mGroupPrimImportIter;
|
||||
|
||||
// Root pos and rotation and central root pos for link set
|
||||
LLVector3 mRootPos;
|
||||
LLQuaternion mRootRot;
|
||||
@@ -180,6 +168,31 @@ private:
|
||||
// Agent inital pos and rot when starting import
|
||||
LLVector3 mAgentPos;
|
||||
LLQuaternion mAgentRot;
|
||||
// Rebase map
|
||||
boost::unordered_map<LLUUID, LLUUID> mAssetMap;
|
||||
|
||||
// Export texture list
|
||||
typedef boost::unordered_set<LLUUID> textures_set_t;
|
||||
textures_set_t mTexturesList;
|
||||
textures_set_t mBadPermsTexturesList;
|
||||
|
||||
// Import object tracking
|
||||
std::vector<LLViewerObject*> mToSelect;
|
||||
std::vector<LLViewerObject*>::iterator mProcessIter;
|
||||
|
||||
// File and folder name control
|
||||
std::string mFileName;
|
||||
std::string mFolder;
|
||||
|
||||
// Working LLSD holders
|
||||
LLUUID mCurrentAsset;
|
||||
LLUUID mExpectingUpdate;
|
||||
LLSD mLLSD;
|
||||
LLSD mThisGroup;
|
||||
|
||||
// Working llsd itterators for objects and linksets
|
||||
LLSD::map_const_iterator mPrimImportIter;
|
||||
LLSD::array_const_iterator mGroupPrimImportIter;
|
||||
};
|
||||
|
||||
#endif
|
||||
@@ -1654,7 +1654,7 @@ LLViewerWindow::LLViewerWindow(
|
||||
vsync_mode,
|
||||
!gNoRender,
|
||||
ignore_pixel_depth,
|
||||
gSavedSettings.getBOOL("RenderUseFBO") ? 0 : gSavedSettings.getU32("RenderFSAASamples")); //don't use window level anti-aliasing if FBOs are enabled
|
||||
LLRenderTarget::sUseFBO ? 0 : gSavedSettings.getU32("RenderFSAASamples")); //don't use window level anti-aliasing if FBOs are enabled
|
||||
|
||||
if (!LLViewerShaderMgr::sInitialized)
|
||||
{ //immediately initialize shaders
|
||||
@@ -5500,7 +5500,7 @@ BOOL LLViewerWindow::changeDisplaySettings(BOOL fullscreen, LLCoordScreen size,
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
U32 fsaa = gSavedSettings.getU32("RenderFSAASamples");
|
||||
U32 fsaa = LLRenderTarget::sUseFBO ? 0 : gSavedSettings.getU32("RenderFSAASamples"); //don't use window level anti-aliasing if FBOs are enabled
|
||||
U32 old_fsaa = mWindow->getFSAASamples();
|
||||
|
||||
// going from windowed to windowed
|
||||
@@ -5512,7 +5512,7 @@ BOOL LLViewerWindow::changeDisplaySettings(BOOL fullscreen, LLCoordScreen size,
|
||||
mWindow->setSize(size);
|
||||
}
|
||||
|
||||
if (fsaa == old_fsaa && vsync_mode == mWindow->getFSAASamples())
|
||||
if (fsaa == old_fsaa && vsync_mode == mWindow->getVsyncMode())
|
||||
{
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
@@ -8819,6 +8819,100 @@ void LLVOAvatar::updateLODRiggedAttachments( void )
|
||||
updateLOD();
|
||||
rebuildRiggedAttachments();
|
||||
}
|
||||
|
||||
void LLVOAvatar::updateSoftwareSkinnedVertices(const LLMeshSkinInfo* skin, const LLVector4a* weight, const LLVolumeFace& vol_face, LLVertexBuffer *buffer)
|
||||
{
|
||||
//perform software vertex skinning for this face
|
||||
LLStrider<LLVector3> position;
|
||||
LLStrider<LLVector3> normal;
|
||||
|
||||
bool has_normal = buffer->hasDataType(LLVertexBuffer::TYPE_NORMAL);
|
||||
buffer->getVertexStrider(position);
|
||||
|
||||
if (has_normal)
|
||||
{
|
||||
buffer->getNormalStrider(normal);
|
||||
}
|
||||
|
||||
LLVector4a* pos = (LLVector4a*) position.get();
|
||||
|
||||
LLVector4a* norm = has_normal ? (LLVector4a*) normal.get() : NULL;
|
||||
|
||||
//build matrix palette
|
||||
LLMatrix4a mp[JOINT_COUNT];
|
||||
LLMatrix4* mat = (LLMatrix4*) mp;
|
||||
|
||||
U32 count = llmin((U32) skin->mJointNames.size(), (U32) JOINT_COUNT);
|
||||
|
||||
llassert_always(count);
|
||||
|
||||
for (U32 j = 0; j < count; ++j)
|
||||
{
|
||||
LLJoint* joint = getJoint(skin->mJointNames[j]);
|
||||
if(!joint)
|
||||
{
|
||||
joint = getJoint("mRoot");
|
||||
}
|
||||
if (joint)
|
||||
{
|
||||
mat[j] = skin->mInvBindMatrix[j];
|
||||
mat[j] *= joint->getWorldMatrix();
|
||||
}
|
||||
}
|
||||
|
||||
LLMatrix4a bind_shape_matrix;
|
||||
bind_shape_matrix.loadu(skin->mBindShapeMatrix);
|
||||
|
||||
for (U32 j = 0; j < (U32)buffer->getNumVerts(); ++j)
|
||||
{
|
||||
LLMatrix4a final_mat;
|
||||
final_mat.clear();
|
||||
|
||||
S32 idx[4];
|
||||
|
||||
LLVector4 wght;
|
||||
|
||||
F32 scale = 0.f;
|
||||
for (U32 k = 0; k < 4; k++)
|
||||
{
|
||||
F32 w = weight[j][k];
|
||||
|
||||
idx[k] = (S32) floorf(w);
|
||||
wght[k] = w - floorf(w);
|
||||
scale += wght[k];
|
||||
}
|
||||
|
||||
if(scale > 0.f)
|
||||
wght *= 1.f/scale;
|
||||
else
|
||||
wght = LLVector4(F32_MAX,F32_MAX,F32_MAX,F32_MAX);
|
||||
|
||||
for (U32 k = 0; k < 4; k++)
|
||||
{
|
||||
F32 w = wght[k];
|
||||
LLMatrix4a src;
|
||||
src.setMul(mp[idx[k]], w);
|
||||
|
||||
final_mat.add(src);
|
||||
}
|
||||
|
||||
LLVector4a& v = vol_face.mPositions[j];
|
||||
LLVector4a t;
|
||||
LLVector4a dst;
|
||||
bind_shape_matrix.affineTransform(v, t);
|
||||
final_mat.affineTransform(t, dst);
|
||||
pos[j] = dst;
|
||||
|
||||
if (norm)
|
||||
{
|
||||
LLVector4a& n = vol_face.mNormals[j];
|
||||
bind_shape_matrix.rotate(n, t);
|
||||
final_mat.rotate(t, dst);
|
||||
dst.normalize3fast();
|
||||
norm[j] = dst;
|
||||
}
|
||||
}
|
||||
}
|
||||
U32 LLVOAvatar::getPartitionType() const
|
||||
{
|
||||
// Avatars merely exist as drawables in the bridge partition
|
||||
|
||||
@@ -79,6 +79,7 @@ class LLHUDEffectSpiral;
|
||||
class LLTexGlobalColor;
|
||||
class LLViewerJoint;
|
||||
struct LLAppearanceMessageContents;
|
||||
class LLMeshSkinInfo;
|
||||
|
||||
class SHClientTagMgr : public LLSingleton<SHClientTagMgr>, public boost::signals2::trackable
|
||||
{
|
||||
@@ -181,6 +182,7 @@ public:
|
||||
/*virtual*/ BOOL updateLOD();
|
||||
BOOL updateJointLODs();
|
||||
void updateLODRiggedAttachments( void );
|
||||
void updateSoftwareSkinnedVertices(const LLMeshSkinInfo* skin, const LLVector4a* weight, const LLVolumeFace& vol_face, LLVertexBuffer *buffer);
|
||||
/*virtual*/ BOOL isActive() const; // Whether this object needs to do an idleUpdate.
|
||||
S32 totalTextureMemForUUIDS(std::set<LLUUID>& ids);
|
||||
bool allTexturesCompletelyDownloaded(std::set<LLUUID>& ids) const;
|
||||
|
||||
@@ -3916,15 +3916,20 @@ void LLRiggedVolume::update(const LLMeshSkinInfo* skin, LLVOAvatar* avatar, cons
|
||||
}
|
||||
|
||||
//build matrix palette
|
||||
static const size_t kMaxJoints = 64;
|
||||
|
||||
LLMatrix4a mp[kMaxJoints];
|
||||
LLMatrix4a mp[JOINT_COUNT];
|
||||
LLMatrix4* mat = (LLMatrix4*) mp;
|
||||
|
||||
U32 maxJoints = llmin(skin->mJointNames.size(), kMaxJoints);
|
||||
for (U32 j = 0; j < maxJoints; ++j)
|
||||
|
||||
U32 count = llmin((U32) skin->mJointNames.size(), (U32) JOINT_COUNT);
|
||||
|
||||
llassert_always(count);
|
||||
|
||||
for (U32 j = 0; j < count; ++j)
|
||||
{
|
||||
LLJoint* joint = avatar->getJoint(skin->mJointNames[j]);
|
||||
if(!joint)
|
||||
{
|
||||
joint = avatar->getJoint("mRoot");
|
||||
}
|
||||
if (joint)
|
||||
{
|
||||
mat[j] = skin->mInvBindMatrix[j];
|
||||
@@ -3973,17 +3978,17 @@ void LLRiggedVolume::update(const LLMeshSkinInfo* skin, LLVOAvatar* avatar, cons
|
||||
scale += wght[k];
|
||||
}
|
||||
|
||||
wght *= 1.f/scale;
|
||||
if(scale > 0.f)
|
||||
wght *= 1.f/scale;
|
||||
else
|
||||
wght = LLVector4(F32_MAX,F32_MAX,F32_MAX,F32_MAX);
|
||||
|
||||
for (U32 k = 0; k < 4; k++)
|
||||
{
|
||||
F32 w = wght[k];
|
||||
|
||||
LLMatrix4a src;
|
||||
// Ensure ref'd bone is in our clamped array of mats
|
||||
llassert(idx[k] < kMaxJoints);
|
||||
// clamp k to kMaxJoints to avoid reading garbage off stack in release
|
||||
src.setMul(mp[idx[(k < kMaxJoints) ? k : 0]], w);
|
||||
src.setMul(mp[idx[k]], w);
|
||||
|
||||
final_mat.add(src);
|
||||
}
|
||||
|
||||
|
||||
@@ -428,6 +428,9 @@ void LLPipeline::init()
|
||||
{
|
||||
refreshCachedSettings();
|
||||
|
||||
bool can_defer = LLFeatureManager::getInstance()->isFeatureAvailable("RenderDeferred");
|
||||
LLRenderTarget::sUseFBO = gSavedSettings.getBOOL("RenderUseFBO") || (gSavedSettings.getBOOL("RenderDeferred") && can_defer);
|
||||
|
||||
gOctreeMaxCapacity = gSavedSettings.getU32("OctreeMaxNodeCapacity");
|
||||
gOctreeReserveCapacity = llmin(gSavedSettings.getU32("OctreeReserveNodeCapacity"),U32(512));
|
||||
sDynamicLOD = gSavedSettings.getBOOL("RenderDynamicLOD");
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
help_topic="floater_region_restarting"
|
||||
single_instance="true"
|
||||
reuse_instance="false"
|
||||
can_minimize="true"
|
||||
title="Region Restarting">
|
||||
<string name="RegionName">
|
||||
The region you are in now
|
||||
|
||||
@@ -104,6 +104,9 @@
|
||||
</combo_box>
|
||||
<combo_box bottom_delta="0" follows="left|top" height="20" label="Resolution" left="10"
|
||||
name="texture_size_combo" width="115">
|
||||
<combo_item name="CurrentWindow" value="[i0,i0]">
|
||||
Current Window
|
||||
</combo_item>
|
||||
<combo_item name="512x512" value="[i512,i512]">
|
||||
512x512 (1:1)
|
||||
</combo_item>
|
||||
@@ -131,6 +134,9 @@
|
||||
<combo_item name="128x512" value="[i128,i512]">
|
||||
128x512 (1:4)
|
||||
</combo_item>
|
||||
<combo_item name="Custom" value="[i-1,i-1]">
|
||||
Custom
|
||||
</combo_item>
|
||||
</combo_box>
|
||||
<combo_box bottom_delta="0" follows="left|top" height="20" label="Resolution" left="10"
|
||||
name="local_size_combo" width="115">
|
||||
|
||||
@@ -972,8 +972,8 @@
|
||||
increment="5" initial_val="0" left="121" max_val="95" min_val="0"
|
||||
mouse_opaque="true" name="Scale 1" width="68" />
|
||||
<spinner bottom_delta="0" decimal_digits="2" follows="left|top" height="16"
|
||||
increment="0.05" initial_val="0" left_delta="73" max_val="0.95"
|
||||
min_val="-0.95" mouse_opaque="true" name="Skew" width="68" />
|
||||
increment="0.05" initial_val="0" left_delta="73" max_val="0.99"
|
||||
min_val="-0.99" mouse_opaque="true" name="Skew" width="68" />
|
||||
<text bg_visible="false" border_drop_shadow_visible="false" border_visible="false"
|
||||
bottom_delta="-12" drop_shadow_visible="true" follows="left|top"
|
||||
font="SansSerifSmall" h_pad="0" halign="left" height="10" left="121"
|
||||
@@ -1061,11 +1061,11 @@
|
||||
</text>
|
||||
<spinner bottom_delta="-19" decimal_digits="3" follows="left|top" height="16"
|
||||
increment="0.025" initial_val="0" label="B" label_width="10" left="121"
|
||||
max_val="0.95" min_val="0" mouse_opaque="true" name="Path Limit Begin"
|
||||
max_val="0.99" min_val="0" mouse_opaque="true" name="Path Limit Begin"
|
||||
width="68" />
|
||||
<spinner bottom_delta="0" decimal_digits="3" follows="left|top" height="16"
|
||||
increment="0.025" initial_val="1" label="E" label_width="10" left_delta="73"
|
||||
max_val="1" min_val="0.05" mouse_opaque="true" name="Path Limit End"
|
||||
max_val="1" min_val="0.01" mouse_opaque="true" name="Path Limit End"
|
||||
width="68" />
|
||||
<text bg_visible="false" border_drop_shadow_visible="false" border_visible="false"
|
||||
bottom_delta="-14" drop_shadow_visible="true" follows="left|top"
|
||||
|
||||
@@ -5,17 +5,17 @@
|
||||
<menu bottom="273" create_jump_keys="true" drop_shadow="true" enabled="true"
|
||||
height="263" label="File" left="0" mouse_opaque="false" name="File"
|
||||
opaque="true" tear_off="true" width="243">
|
||||
<menu_item_call enabled="true" label="Image ([UPLOADFEE])..."
|
||||
<menu_item_call enabled="true" label="Upload Image ([UPLOADFEE])..."
|
||||
mouse_opaque="true" name="Upload Image" shortcut="control|U" >
|
||||
<on_click function="File.UploadImage" userdata="" />
|
||||
<on_enable function="File.EnableUpload" />
|
||||
</menu_item_call>
|
||||
<menu_item_call label="Sound ([UPLOADFEE])..." name="Upload Sound"
|
||||
<menu_item_call label="Upload Sound ([UPLOADFEE])..." name="Upload Sound"
|
||||
mouse_opaque="true" enabled="true" >
|
||||
<on_click function="File.UploadSound" userdata="" />
|
||||
<on_enable function="File.EnableUpload" />
|
||||
</menu_item_call>
|
||||
<menu_item_call label="Animation ([UPLOADFEE])..." name="Upload Animation"
|
||||
<menu_item_call label="Upload Animation ([UPLOADFEE])..." name="Upload Animation"
|
||||
mouse_opaque="true" enabled="true" >
|
||||
<on_click function="File.UploadAnim" userdata="" />
|
||||
<on_enable function="File.EnableUpload" />
|
||||
@@ -25,11 +25,11 @@
|
||||
<on_click function="File.UploadModel" userdata="" />
|
||||
<on_enable function="File.EnableUploadModel" />
|
||||
</menu_item_call>
|
||||
<menu_item_call label="Bulk ([UPLOADFEE] per file)..." name="Bulk Upload"
|
||||
<menu_item_call label="Bulk Upload ([UPLOADFEE] per file)..." name="Bulk Upload"
|
||||
mouse_opaque="true" enabled="true" >
|
||||
<on_click function="File.UploadBulk" userdata="" />
|
||||
</menu_item_call>
|
||||
<menu_item_call enabled="false" hidden="false" label="Import XML" mouse_opaque="true" name="Import">
|
||||
<menu_item_call enabled="false" hidden="false" label="Import Object XML" mouse_opaque="true" name="Import">
|
||||
<on_click function="Object.Import" />
|
||||
<on_enable function="Object.EnableImport" />
|
||||
</menu_item_call>
|
||||
|
||||
@@ -131,27 +131,27 @@ The following wildcards are available to enhance your autoresponses: #n for user
|
||||
<panel border="true" left="1" bottom="-408" height="408" width="500" label="Spam" name="Spam">
|
||||
<check_box control_name="AntiSpamEnabled" label="Enable Antispam" name="enable_as" width="256" left="3"/>
|
||||
<button height="23" label="Reset antispam queues" label_selected="Reset antispam queues" name="reset_antispam" width="230" bottom_delta="0" left="260"/>
|
||||
<check_box control_name="_NACL_AntiSpamGlobalQueue" label="No messagetype-specific spam queues" name="spammsg_checkbox" width="256" left="6" bottom_delta="-20"/>
|
||||
<spinner control_name="_NACL_AntiSpamTime" decimal_digits="0" increment="1" min_val="1" max_val="60" label="Antispam time(seconds):" label_width="330" tool_tip="Lower is less sensitive" name="antispamtime" width="390" left="10" bottom_delta="-10"/>
|
||||
<spinner control_name="_NACL_AntiSpamAmount" decimal_digits="0" increment="1" min_val="5" max_val="99999" label="Antispam amount:" label_width="330" tool_tip="Higher is less sensitive" name="antispamamount" width="390"/>
|
||||
<spinner control_name="_NACL_AntiSpamSoundMulti" decimal_digits="0" increment="1" min_val="1" max_val="99999" label="Amount multiplier for sound plays:" label_width="330" tool_tip="Higher is less sensitive" left="10" name="antispamsoundmulti" width="390"/>
|
||||
<spinner control_name="_NACL_AntiSpamSoundPreloadMulti" decimal_digits="0" increment="1" min_val="1" max_val="99999" label="Amount multiplier for sound preloads:" label_width="330" tool_tip="Higher is less sensitive" name="antispamsoundpreloadmulti" width="390"/>
|
||||
<spinner control_name="_NACL_AntiSpamNewlines" decimal_digits="0" increment="1" min_val="5" max_val="99999" label="Amount of newlines to instablock message:" label_width="330" tool_tip="Higher is less sensitive" name="antispamnewlines" width="390"/>
|
||||
<check_box control_name="AntiSpamNotify" height="16" label="Notify when spam is blocked" name="Notify On Spam" tool_tip="When enabled, the bottom right corner may become a source of pseudo-spam whenever real spam is blocked." left="6" bottom_delta="-22"/>
|
||||
<check_box enabled_control="AntiSpamEnabled" control_name="_NACL_AntiSpamGlobalQueue" label="No messagetype-specific spam queues" name="spammsg_checkbox" width="256" left="6" bottom_delta="-20"/>
|
||||
<spinner enabled_control="AntiSpamEnabled" control_name="_NACL_AntiSpamTime" decimal_digits="0" increment="1" min_val="1" max_val="60" label="Antispam time(seconds):" label_width="330" tool_tip="Lower is less sensitive" name="antispamtime" width="390" left="10" bottom_delta="-10"/>
|
||||
<spinner enabled_control="AntiSpamEnabled" control_name="_NACL_AntiSpamAmount" decimal_digits="0" increment="1" min_val="5" max_val="99999" label="Antispam amount:" label_width="330" tool_tip="Higher is less sensitive" name="antispamamount" width="390"/>
|
||||
<spinner enabled_control="AntiSpamEnabled" control_name="_NACL_AntiSpamSoundMulti" decimal_digits="0" increment="1" min_val="1" max_val="99999" label="Amount multiplier for sound plays:" label_width="330" tool_tip="Higher is less sensitive" left="10" name="antispamsoundmulti" width="390"/>
|
||||
<spinner enabled_control="AntiSpamEnabled" control_name="_NACL_AntiSpamSoundPreloadMulti" decimal_digits="0" increment="1" min_val="1" max_val="99999" label="Amount multiplier for sound preloads:" label_width="330" tool_tip="Higher is less sensitive" name="antispamsoundpreloadmulti" width="390"/>
|
||||
<spinner enabled_control="AntiSpamEnabled" control_name="_NACL_AntiSpamNewlines" decimal_digits="0" increment="1" min_val="5" max_val="99999" label="Amount of newlines to instablock message:" label_width="330" tool_tip="Higher is less sensitive" name="antispamnewlines" width="390"/>
|
||||
<check_box enabled_control="AntiSpamEnabled" control_name="AntiSpamNotify" height="16" label="Notify when spam is blocked" name="Notify On Spam" tool_tip="When enabled, the bottom right corner may become a source of pseudo-spam whenever real spam is blocked." left="6" bottom_delta="-22"/>
|
||||
<check_box control_name="_NACL_Antispam" height="16" label="Disable -all- dialogs (resets on login)" name="antispam_checkbox" left="3"/>
|
||||
<text name="Block All Dialogs From" left="10" bottom_delta="-10">Block All Dialogs From</text>
|
||||
<check_box control_name="AntiSpamAlerts" height="16" label="Alerts" name="Alerts" left="14" bottom_delta="-23"/>
|
||||
<check_box control_name="AntiSpamFriendshipOffers" height="16" label="Friendship Offers" name="Friendship Offers" bottom_delta="0" left_delta="120"/>
|
||||
<check_box control_name="AntiSpamGroupInvites" height="16" label="All Group Invites" name="Group Invites" bottom_delta="0" left_delta="120"/>
|
||||
<check_box control_name="AntiSpamGroupFeeInvites" height="16" label="Group Fee Invites" name="Group Fee Invites" bottom_delta="0" left_delta="120"/>
|
||||
<check_box control_name="AntiSpamItemOffers" height="16" label="Item Offers" name="Item Offers" left="14"/>
|
||||
<check_box control_name="AntiSpamScripts" height="16" label="Scripts" name="Scripts" bottom_delta="0" left_delta="120"/>
|
||||
<check_box control_name="AntiSpamTeleports" height="16" label="Teleport Offers" name="Teleport Offers" bottom_delta="0" left_delta="120"/>
|
||||
<check_box control_name="AntiSpamGroupNotices" height="16" label="Group Notices" name="Group Notices" bottom_delta="0" left_delta="120"/>
|
||||
<check_box control_name="AntiSpamTeleportRequests" height="16" label="Teleport Requests" name="Teleport Requests" left="14" bottom_delta="-20"/>
|
||||
<text name="Except those from:" left="21" bottom_delta="-10">Except those from:</text>
|
||||
<check_box control_name="AntiSpamNotMine" height="16" label="My objects" name="My objects" left="25" bottom_delta="-23"/>
|
||||
<check_box control_name="AntiSpamNotFriends" height="16" label="My friends" name="My friends" bottom_delta="0" left_delta="120"/>
|
||||
<text disabled_control="_NACL_Antispam" name="Block All Dialogs From" left="10" bottom_delta="-10">Block All Dialogs From</text>
|
||||
<check_box disabled_control="_NACL_Antispam" control_name="AntiSpamAlerts" height="16" label="Alerts" name="Alerts" left="14" bottom_delta="-23"/>
|
||||
<check_box disabled_control="_NACL_Antispam" control_name="AntiSpamFriendshipOffers" height="16" label="Friendship Offers" name="Friendship Offers" bottom_delta="0" left_delta="120"/>
|
||||
<check_box disabled_control="_NACL_Antispam" control_name="AntiSpamGroupInvites" height="16" label="All Group Invites" name="Group Invites" bottom_delta="0" left_delta="120"/>
|
||||
<check_box disabled_control="AntiSpamGroupInvites" control_name="AntiSpamGroupFeeInvites" height="16" label="Group Fee Invites" name="Group Fee Invites" bottom_delta="0" left_delta="120"/>
|
||||
<check_box disabled_control="_NACL_Antispam" control_name="AntiSpamItemOffers" height="16" label="Item Offers" name="Item Offers" left="14"/>
|
||||
<check_box disabled_control="_NACL_Antispam" control_name="AntiSpamScripts" height="16" label="Scripts" name="Scripts" bottom_delta="0" left_delta="120"/>
|
||||
<check_box disabled_control="_NACL_Antispam" control_name="AntiSpamTeleports" height="16" label="Teleport Offers" name="Teleport Offers" bottom_delta="0" left_delta="120"/>
|
||||
<check_box disabled_control="_NACL_Antispam" control_name="AntiSpamGroupNotices" height="16" label="Group Notices" name="Group Notices" bottom_delta="0" left_delta="120"/>
|
||||
<check_box disabled_control="_NACL_Antispam" control_name="AntiSpamTeleportRequests" height="16" label="Teleport Requests" name="Teleport Requests" left="14" bottom_delta="-20"/>
|
||||
<text disabled_control="_NACL_Antispam" name="Except those from:" left="21" bottom_delta="-10">Except those from:</text>
|
||||
<check_box disabled_control="_NACL_Antispam" control_name="AntiSpamNotMine" height="16" label="My objects" name="My objects" left="25" bottom_delta="-23"/>
|
||||
<check_box disabled_control="_NACL_Antispam" control_name="AntiSpamNotFriends" height="16" label="My friends" name="My friends" bottom_delta="0" left_delta="120"/>
|
||||
<check_box control_name="EnableGestureSounds" label="Enable Gesture Sounds" name="Enable Gesture Sounds" left="3" bottom_delta="-20"/>
|
||||
</panel>
|
||||
|
||||
|
||||
@@ -5,9 +5,9 @@
|
||||
<panel border="true" left="1" bottom="-408" height="408" width="500" label="General" name="User Interface">
|
||||
<check_box left="10" bottom_delta="-25" control_name="DoubleClickTeleport" follows="top" initial_value="false"
|
||||
label="Enable teleporting via double-click in-world" tool_tip="Double-clicking on an object/person will teleport you to that location." name="double_click_teleport_check"/>
|
||||
<check_box left="20" bottom_delta="-18" control_name="OptionRotateCamAfterLocalTP" follows="top" initial_value="false"
|
||||
<check_box enabled_control="DoubleClickTeleport" left="20" bottom_delta="-18" control_name="OptionRotateCamAfterLocalTP" follows="top" initial_value="false"
|
||||
label="Reset camera after teleporting" tool_tip="Centers the camera behind you after a local teleport." name="center_after_teleport_check"/>
|
||||
<check_box bottom_delta="-18" control_name="OptionOffsetTPByAgentHeight" follows="left|top" font="SansSerifSmall" height="16" initial_value="false"
|
||||
<check_box enabled_control="DoubleClickTeleport" bottom_delta="-18" control_name="OptionOffsetTPByAgentHeight" follows="left|top" font="SansSerifSmall" height="16" initial_value="false"
|
||||
label="Offset TP target by half agent height" tool_tip="Tries to aim the TP so that your feet land at the point you're aiming for." name="offset_teleport_check"/>
|
||||
<check_box left="10" follows="top" bottom_delta="-18" control_name="ClearBeaconAfterTeleport" name="clear_beacon_after_tp" label="Clear red destination beacon after teleporting"/>
|
||||
<check_box left="10" follows="top" bottom_delta="-18" control_name="LiruFlyAfterTeleport" name="fly_after_tp" label="Always fly after teleports" tool_tip="Avoid those falls from great heights by automatically flying after teleporting in."/>
|
||||
@@ -32,11 +32,11 @@
|
||||
label="Automatically fetch the inventory in the background after login" tool_tip="Inventory will preload when you log in, so you don't have to wait for it to load when doing an initial search." name="fetch_inventory_on_login_check"/>
|
||||
<check_box bottom_delta="-18" control_name="WindEnabled" follows="left|top" initial_value="false" label="Enable Wind Effects" name="enable_wind"/>
|
||||
<check_box bottom_delta="-18" control_name="CloudsEnabled" follows="left|top" initial_value="true" label="Enable Clouds" name="enable_clouds"/>
|
||||
<check_box bottom_delta="-18" left_delta="10" control_name="SkyUseClassicClouds" follows="top" initial_value="true" label="Enable Classic Clouds" name="enable_classic_clouds"/>
|
||||
<check_box enabled_control="CloudsEnabled" bottom_delta="-18" left_delta="10" control_name="SkyUseClassicClouds" follows="top" initial_value="true" label="Enable Classic Clouds" name="enable_classic_clouds"/>
|
||||
<check_box bottom_delta="-18" left_delta="-10" control_name="SpeedRez" follows="top" initial_value="false" label="Enable speed-rezzing via draw distance stepping" name="speed_rez_check" tool_tip="When active, this will progressively increase your draw distance, which allows closer objects/people to rez first."/>
|
||||
<spinner bottom_delta="-16" left="30" control_name="SpeedRezInterval" decimal_digits="0" follows="top" height="16" width="230"
|
||||
<spinner enabled_control="SpeedRez" bottom_delta="-16" left="30" control_name="SpeedRezInterval" decimal_digits="0" follows="top" height="16" width="230"
|
||||
label="Draw distance stepping interval:" label_width="180" max_val="60" min_val="5" initial_val="20" increment="5" name="speed_rez_interval" />
|
||||
<text bottom_delta="0" left_delta="235" follows="left|top" height="16" name="speed_rez_seconds">seconds</text>
|
||||
<text enabled_control="SpeedRez" bottom_delta="0" left_delta="235" follows="left|top" height="16" name="speed_rez_seconds">seconds</text>
|
||||
<check_box bottom_delta="-18" control_name="LiruUseContextMenus" follows="top" left="10" name="use_context_menus" label="Use context menus instead of pie menus"/>
|
||||
<check_box bottom_delta="-18" control_name="UseWebProfiles" follows="top" left="10" name="use_web_profiles" label="Use web profiles instead of legacy v1 profiles" tool_tip="May not be available on certain grids"/>
|
||||
<check_box bottom_delta="-18" control_name="UseWebSearch" follows="top" left="10" name="use_web_search" label="Use web-based search instead of legacy v1 search" tool_tip="May not be available on certain grids"/>
|
||||
@@ -44,42 +44,42 @@
|
||||
|
||||
<panel border="true" bottom="-580" height="525" label="Command Line" left="1" name="Command Line" width="418">
|
||||
<check_box bottom="-25" left="10" follows="top" initial_value="false" label="Enable usage of chat bar as a command line" name="chat_cmd_toggle" control_name="AscentCmdLine"/>
|
||||
<text bottom_delta="-22" follows="top" height="16" left_delta="10" name="cmd_line_text_2">Teleport within sim (usage: cmd x y z)</text>
|
||||
<line_editor bevel_style="in" border_style="line" border_thickness="1" bottom_delta="-20" follows="top" height="20" max_length="256" name="AscentCmdLinePos" width="200"/>
|
||||
<text bottom_delta="-18" follows="top" height="16" left_delta="0" name="cmd_line_text_3">Teleport to ground (usage: cmd)</text>
|
||||
<line_editor bevel_style="in" border_style="line" border_thickness="1" bottom_delta="-20" follows="top" height="20" max_length="256" name="AscentCmdLineGround" width="200"/>
|
||||
<text bottom_delta="-18" follows="top" height="16" name="cmd_line_text_4" width="512">Teleport to altitude (usage: cmd z)</text>
|
||||
<line_editor bevel_style="in" border_style="line" border_thickness="1" bottom_delta="-20" follows="top" height="20" max_length="256" name="AscentCmdLineHeight" width="200"/>
|
||||
<text bottom_delta="-18" follows="top" height="16" name="cmd_line_text_5" width="512">Teleport home (usage: cmd)</text>
|
||||
<line_editor bevel_style="in" border_style="line" border_thickness="1" bottom_delta="-20" follows="top" height="20" max_length="256" name="AscentCmdLineTeleportHome" width="200"/>
|
||||
<text bottom_delta="-18" follows="top" height="16" name="cmd_line_text_6">Rez a platform (usage: cmd 0 - 30)</text>
|
||||
<line_editor bevel_style="in" border_style="line" border_thickness="1" bottom_delta="-20" follows="top" height="20" max_length="256" name="AscentCmdLineRezPlatform" width="200"/>
|
||||
<slider bottom_delta="-22" name="AscentPlatformSize" control_name="AscentPlatformSize" decimal_digits="1" follows="top" height="18" increment="0.5"
|
||||
<text enabled_control="AscentCmdLine" bottom_delta="-22" follows="top" height="16" left_delta="10" name="cmd_line_text_2">Teleport within sim (usage: cmd x y z)</text>
|
||||
<line_editor enabled_control="AscentCmdLine" bevel_style="in" border_style="line" border_thickness="1" bottom_delta="-20" follows="top" height="20" max_length="256" name="AscentCmdLinePos" width="200"/>
|
||||
<text enabled_control="AscentCmdLine" bottom_delta="-18" follows="top" height="16" left_delta="0" name="cmd_line_text_3">Teleport to ground (usage: cmd)</text>
|
||||
<line_editor enabled_control="AscentCmdLine" bevel_style="in" border_style="line" border_thickness="1" bottom_delta="-20" follows="top" height="20" max_length="256" name="AscentCmdLineGround" width="200"/>
|
||||
<text enabled_control="AscentCmdLine" bottom_delta="-18" follows="top" height="16" name="cmd_line_text_4" width="512">Teleport to altitude (usage: cmd z)</text>
|
||||
<line_editor enabled_control="AscentCmdLine" bevel_style="in" border_style="line" border_thickness="1" bottom_delta="-20" follows="top" height="20" max_length="256" name="AscentCmdLineHeight" width="200"/>
|
||||
<text enabled_control="AscentCmdLine" bottom_delta="-18" follows="top" height="16" name="cmd_line_text_5" width="512">Teleport home (usage: cmd)</text>
|
||||
<line_editor enabled_control="AscentCmdLine" bevel_style="in" border_style="line" border_thickness="1" bottom_delta="-20" follows="top" height="20" max_length="256" name="AscentCmdLineTeleportHome" width="200"/>
|
||||
<text enabled_control="AscentCmdLine" bottom_delta="-18" follows="top" height="16" name="cmd_line_text_6">Rez a platform (usage: cmd 0 - 30)</text>
|
||||
<line_editor enabled_control="AscentCmdLine" bevel_style="in" border_style="line" border_thickness="1" bottom_delta="-20" follows="top" height="20" max_length="256" name="AscentCmdLineRezPlatform" width="200"/>
|
||||
<slider enabled_control="AscentCmdLine" bottom_delta="-22" name="AscentPlatformSize" control_name="AscentPlatformSize" decimal_digits="1" follows="top" height="18" increment="0.5"
|
||||
initial_val="5" label="Default width:" label_width="75" max_val="30" min_val="5" width="205" tool_tip="How big do you want the platform to be?"/>
|
||||
<text bottom_delta="-20" follows="top" height="16" name="cmd_line_text_8">Calc. expressions (usage: cmd 2 + 2)</text>
|
||||
<line_editor bevel_style="in" border_style="line" border_thickness="1" bottom_delta="-20" follows="top" height="20" max_length="256" name="AscentCmdLineCalc" width="200"/>
|
||||
<text bottom_delta="-18" follows="top" height="16" name="cmd_line_text_15">Clear the chat history (usage: cmd)</text>
|
||||
<line_editor bevel_style="in" border_style="line" border_thickness="1" bottom_delta="-20" follows="top" height="20" max_length="256" tool_tip="Clears the Chat History to prevent lag effects from chat spammers." name="AscentCmdLineClearChat" width="200"/>
|
||||
<text bottom_delta="-18" follows="top" height="16" name="cmd_line_text_16">Open url/slurl (usage: cmd slurl)</text>
|
||||
<line_editor bottom_delta="-20" follows="top" height="20" max_length="256" name="SinguCmdLineURL" width="200"/>
|
||||
<text enabled_control="AscentCmdLine" bottom_delta="-20" follows="top" height="16" name="cmd_line_text_8">Calc. expressions (usage: cmd 2 + 2)</text>
|
||||
<line_editor enabled_control="AscentCmdLine" bevel_style="in" border_style="line" border_thickness="1" bottom_delta="-20" follows="top" height="20" max_length="256" name="AscentCmdLineCalc" width="200"/>
|
||||
<text enabled_control="AscentCmdLine" bottom_delta="-18" follows="top" height="16" name="cmd_line_text_15">Clear the chat history (usage: cmd)</text>
|
||||
<line_editor enabled_control="AscentCmdLine" bevel_style="in" border_style="line" border_thickness="1" bottom_delta="-20" follows="top" height="20" max_length="256" tool_tip="Clears the Chat History to prevent lag effects from chat spammers." name="AscentCmdLineClearChat" width="200"/>
|
||||
<text enabled_control="AscentCmdLine" bottom_delta="-18" follows="top" height="16" name="cmd_line_text_16">Open url/slurl (usage: cmd slurl)</text>
|
||||
<line_editor enabled_control="AscentCmdLine" bottom_delta="-20" follows="top" height="20" max_length="256" name="SinguCmdLineURL" width="200"/>
|
||||
<!-- Column Split -->
|
||||
<view_border bevel_style="none" border_thickness="1" bottom_delta="-5" follows="top|left" height="333"
|
||||
<view_border enabled_control="AscentCmdLine" bevel_style="none" border_thickness="1" bottom_delta="-5" follows="top|left" height="333"
|
||||
left="230" name="CmdDivisor" width="0"/>
|
||||
<text bottom_delta="315" follows="top" height="16" left_delta="10" name="cmd_line_text_9">Change Draw Distance (usage: cmd meters)</text>
|
||||
<line_editor bevel_style="in" border_style="line" border_thickness="1" bottom_delta="-20" follows="top" height="20" max_length="256" name="AscentCmdLineDrawDistance" width="200"/>
|
||||
<text bottom_delta="-18" follows="top" height="16" name="cmd_line_text_10">Teleport to cam position (usage: cmd)</text>
|
||||
<line_editor bevel_style="in" border_style="line" border_thickness="1" bottom_delta="-20" follows="top" height="20" max_length="256" name="AscentCmdTeleportToCam" width="200"/>
|
||||
<text bottom_delta="-18" follows="top" height="16" name="cmd_line_text_11">Get avatar name from key (usage: cmd key)</text>
|
||||
<line_editor bevel_style="in" border_style="line" border_thickness="1" bottom_delta="-20" follows="top" height="20" max_length="256" name="AscentCmdLineKeyToName" width="200"/>
|
||||
<text bottom_delta="-18" follows="top" height="16" name="cmd_line_text_12">Offer teleport to avatar (usage: cmd key)</text>
|
||||
<line_editor bevel_style="in" border_style="line" border_thickness="1" bottom_delta="-20" follows="top" height="20" max_length="256" name="AscentCmdLineOfferTp" width="200"/>
|
||||
<text bottom_delta="-18" follows="top" height="16" name="cmd_line_text_7">Teleport to sim x (usage: cmd simname)</text>
|
||||
<line_editor bevel_style="in" border_style="line" border_thickness="1" bottom_delta="-20" follows="top" height="20" max_length="256" name="AscentCmdLineMapTo" width="200"/>
|
||||
<check_box bottom_delta="-24" follows="top" initial_value="false" label="Use same position between sims" name="map_to_keep_pos" control_name="AscentMapToKeepPos"/>
|
||||
<text bottom_delta="-18" follows="top" height="16" name="cmd_line_text_13">Teleport to avatar (usage: cmd name)</text>
|
||||
<line_editor bevel_style="in" border_style="line" border_thickness="1" bottom_delta="-20" follows="top" height="20" max_length="256" tool_tip="The syntax of this command allows partial names and is not case sensitive. Better results if used while the Radar is open." name="AscentCmdLineTP2" width="200"/>
|
||||
<text bottom_delta="-18" follows="top" height="16" name="cmd_line_text_14">Toggle Fake Away Status (usage: cmd)</text>
|
||||
<line_editor bevel_style="in" border_style="line" border_thickness="1" bottom_delta="-20" follows="top" height="20" max_length="256" name="SinguCmdLineAway" width="200"/>
|
||||
<text enabled_control="AscentCmdLine" bottom_delta="315" follows="top" height="16" left_delta="10" name="cmd_line_text_9">Change Draw Distance (usage: cmd meters)</text>
|
||||
<line_editor enabled_control="AscentCmdLine" bevel_style="in" border_style="line" border_thickness="1" bottom_delta="-20" follows="top" height="20" max_length="256" name="AscentCmdLineDrawDistance" width="200"/>
|
||||
<text enabled_control="AscentCmdLine" bottom_delta="-18" follows="top" height="16" name="cmd_line_text_10">Teleport to cam position (usage: cmd)</text>
|
||||
<line_editor enabled_control="AscentCmdLine" bevel_style="in" border_style="line" border_thickness="1" bottom_delta="-20" follows="top" height="20" max_length="256" name="AscentCmdTeleportToCam" width="200"/>
|
||||
<text enabled_control="AscentCmdLine" bottom_delta="-18" follows="top" height="16" name="cmd_line_text_11">Get avatar name from key (usage: cmd key)</text>
|
||||
<line_editor enabled_control="AscentCmdLine" bevel_style="in" border_style="line" border_thickness="1" bottom_delta="-20" follows="top" height="20" max_length="256" name="AscentCmdLineKeyToName" width="200"/>
|
||||
<text enabled_control="AscentCmdLine" bottom_delta="-18" follows="top" height="16" name="cmd_line_text_12">Offer teleport to avatar (usage: cmd key)</text>
|
||||
<line_editor enabled_control="AscentCmdLine" bevel_style="in" border_style="line" border_thickness="1" bottom_delta="-20" follows="top" height="20" max_length="256" name="AscentCmdLineOfferTp" width="200"/>
|
||||
<text enabled_control="AscentCmdLine" bottom_delta="-18" follows="top" height="16" name="cmd_line_text_7">Teleport to sim x (usage: cmd simname)</text>
|
||||
<line_editor enabled_control="AscentCmdLine" bevel_style="in" border_style="line" border_thickness="1" bottom_delta="-20" follows="top" height="20" max_length="256" name="AscentCmdLineMapTo" width="200"/>
|
||||
<check_box enabled_control="AscentCmdLine" bottom_delta="-24" follows="top" initial_value="false" label="Use same position between sims" name="map_to_keep_pos" control_name="AscentMapToKeepPos"/>
|
||||
<text enabled_control="AscentCmdLine" bottom_delta="-18" follows="top" height="16" name="cmd_line_text_13">Teleport to avatar (usage: cmd name)</text>
|
||||
<line_editor enabled_control="AscentCmdLine" bevel_style="in" border_style="line" border_thickness="1" bottom_delta="-20" follows="top" height="20" max_length="256" tool_tip="The syntax of this command allows partial names and is not case sensitive. Better results if used while the Radar is open." name="AscentCmdLineTP2" width="200"/>
|
||||
<text enabled_control="AscentCmdLine" bottom_delta="-18" follows="top" height="16" name="cmd_line_text_14">Toggle Fake Away Status (usage: cmd)</text>
|
||||
<line_editor enabled_control="AscentCmdLine" bevel_style="in" border_style="line" border_thickness="1" bottom_delta="-20" follows="top" height="20" max_length="256" name="SinguCmdLineAway" width="200"/>
|
||||
</panel>
|
||||
|
||||
<panel border="true" left="1" bottom="-408" height="408" width="500" label="Security" name="Security">
|
||||
@@ -92,12 +92,15 @@
|
||||
<check_box bottom_delta="-20" control_name="QuietSnapshotsToDisk" follows="top" initial_value="false" label="Quiet Snapshots to Disk" tool_tip="Doesn't make a camera sound nor alert everyone when you take a snapshot to your computer." name="quiet_snapshots_check"/>
|
||||
<check_box bottom_delta="-20" control_name="RevokePermsOnStandUp" follows="top" initial_value="false" label="On standing up, revoke perms for the object your avatar was sitting on" tool_tip="Objects generally retain Take Control and Trigger Animation permissions until reset or given permission by another user. Enabling this will make sure you revoke these permissions immediately." name="revoke_perms_on_stand_up_check"/>
|
||||
<check_box bottom_delta="-20" control_name="DisableClickSit" follows="top" initial_value="false" label="Disable click-to-sit on objects" tool_tip="Some griefer tools rely on forcing or tricking you to click on an object that will make you sit, giving the object automatic permissions to trigger animations amongst other things. This will disable llSitTarget - It does mean that you will need to select 'Sit' on poseballs and furniture." name="disable_click_sit_check"/>
|
||||
<check_box bottom_delta="0" left_delta="170" control_name="DisableClickSitOtherOwner" follows="top" label="you don't own" tool_tip="Disables click to sit on objects you don't own (If used with the group check, only one is needed)" name="disable_click_sit_own_check"/>
|
||||
<check_box disabled_control="DisableClickSit" bottom_delta="0" left_delta="170" control_name="DisableClickSitOtherOwner" follows="top" label="you don't own" tool_tip="Disables click to sit on objects you don't own (If used with the group check, only one is needed)" name="disable_click_sit_own_check"/>
|
||||
<check_box bottom_delta="-20" left="10" follows="top" initial_value="false" label="Display Total Script Count changes:" name="totalscriptjumps" control_name="AscentDisplayTotalScriptJumps" tool_tip="Displays script count changes in your region, dependant on the threshold you choose to the right."/>
|
||||
<spinner bottom_delta="0" decimal_digits="0" follows="top" height="16" increment="1" left_delta="210" max_val="9999" min_val="1" name="ScriptJumpCount" width="50" control_name="Ascentnumscriptdiff" tool_tip="Threshold for the script jump message [Default: 100]"/>
|
||||
<check_box bottom_delta="-20" left="10" follows="top" label="Restrained Love API Support (RLVa)" name="RestrainedLove" control_name="RestrainedLove" tool_tip="Allows scripts to take greater control of the viewer, if you wear compliant objects."/>
|
||||
<check_box bottom_delta="-20" left="10" follows="top" label="Auto-minimize region restart notice" name="region_restart_minimized" control_name="LiruRegionRestartMinimized" tool_tip="Useful for sim owners and people who need to pack up before leaving"/>
|
||||
<text name="EmergencyTeleportDesc" left="14" bottom_delta="-12" follows="top">Drop a landmark below to autoteleport there in the last 20 seconds before region restarts</text>
|
||||
<drop_target control_name="EmergencyTeleportLandmark" bottom_delta="-8" left="15" height="17" name="emergency_teleport_landmark_drop" width="430"/>
|
||||
<text bottom_delta="-26" follows="top" name="UISndRestartText">Sound played when regions will restart:</text>
|
||||
<line_editor bottom_delta="-6" left_delta="222" follows="top" width="209" height="16" name="UISndRestart" tool_tip="Empty for no sound to play"/>
|
||||
</panel>
|
||||
|
||||
<panel border="true" left="1" bottom="-408" height="408" width="500" label="Building" name="Building">
|
||||
|
||||
@@ -27,10 +27,10 @@
|
||||
<check_box bottom_delta="-20" control_name="SLBDisplayClientTagOnNewLine" follows="top" height="16" initial_value="true" label="Display client tag on a new line" tool_tip="Enabling this will show client tag on a new line." name="display_client_new_line_check"/>
|
||||
<!-- End of Left Side -->
|
||||
<check_box bottom_delta="107" control_name="AscentUseCustomTag" follows="top" height="16" initial_value="true" label="Use a custom color and label (Local only)" left_delta="230" tool_tip="Enabling this will let you set your own name tag to show up with your custom client and tag color. This only shows up to yourself." name="customize_own_tag_check"/>
|
||||
<text bottom_delta="-17" left_delta="25" follows="top" height="10" name="custom_tag_label_text">Label:</text>
|
||||
<line_editor bottom_delta="-6" follows="top" font="SansSerif" height="18" left_delta="35" name="custom_tag_label_box" tool_tip="The custom string you would like to replace your client tag with (Local only)" width="100"/>
|
||||
<text bottom_delta="6" left_delta="110" follows="top" height="10" name="custom_tag_color_text">Color:</text>
|
||||
<color_swatch border_color="0.45098 0.517647 0.607843 1" bottom_delta="-22" can_apply_immediately="false" color="1 1 1 1" follows="top" height="34" left_delta="35" name="custom_tag_color_swatch" control_name="AscentCustomTagColor" tool_tip="The custom color you would like to replace your client color with (Local only)" width="30" />
|
||||
<text enabled_control="AscentUseCustomTag" bottom_delta="-17" left_delta="25" follows="top" height="10" name="custom_tag_label_text">Label:</text>
|
||||
<line_editor enabled_control="AscentUseCustomTag" bottom_delta="-6" follows="top" font="SansSerif" height="18" left_delta="35" name="custom_tag_label_box" tool_tip="The custom string you would like to replace your client tag with (Local only)" width="100"/>
|
||||
<text enabled_control="AscentUseCustomTag" bottom_delta="6" left_delta="110" follows="top" height="10" name="custom_tag_color_text">Color:</text>
|
||||
<color_swatch enabled_control="AscentUseCustomTag" border_color="0.45098 0.517647 0.607843 1" bottom_delta="-22" can_apply_immediately="false" color="1 1 1 1" follows="top" height="34" left_delta="35" name="custom_tag_color_swatch" control_name="AscentCustomTagColor" tool_tip="The custom color you would like to replace your client color with (Local only)" width="30" />
|
||||
<check_box bottom_delta="-8" control_name="AscentShowOthersTag" follows="top" height="16" initial_value="true" label="Display client tag for others" left_delta="-205" tool_tip="Enabling this will show client tag names on others' avatar names." name="show_other_tag_check"/>
|
||||
<check_box bottom_delta="-20" control_name="AscentShowOthersTagColor" follows="top" height="16" initial_value="true" label="Display client tag color for others" left_delta="0" tool_tip="Enabling this sets others' avatar name color to their client's color." name="show_client_tag_color_check"/>
|
||||
<check_box bottom_delta="-20" control_name="AscentShowIdleTime" follows="top" height="16" initial_value="true" label="Show Idle Time" tool_tip="Enabling this will show the amount of time an avatar has been idle." name="show_idle_time_check"/>
|
||||
@@ -40,7 +40,7 @@
|
||||
<text bottom_delta="-25" follows="top" height="10" left="20" name="effects_color_textbox">Color For My Effects:</text>
|
||||
<color_swatch border_color="0.45098 0.517647 0.607843 1" bottom_delta="-34" can_apply_immediately="true" color="1 1 1 1" control_name="EffectColor" follows="top" height="47" label="Effects" left_delta="138" name="effect_color_swatch" width="44"/>
|
||||
<check_box bottom_delta="-20" control_name="AscentUseStatusColors" follows="top" height="16" initial_value="true" label="Use user status colors (Friend, Linden, etcetera below)" left="10" tool_tip="Enabling this will show people who match specific criteria (Lindens, Estate owners, friends, muted people) with the color you've set below." name="use_status_check"/>
|
||||
<text bottom_delta="-20" follows="top" height="10" left_delta="10" name="friends_color_textbox">Color For:
|
||||
<text enabled_control="AscentUseStatusColors" bottom_delta="-20" follows="top" height="10" left_delta="10" name="friends_color_textbox">Color For:
|
||||
(Radar, Tag, Minimap)</text>
|
||||
<color_swatch border_color="0.45098 0.517647 0.607843 1" bottom_delta="-34" can_apply_immediately="true" color="1 1 1 1" control_name="AscentFriendColor" follows="top" height="47" label="Friends" left_delta="138" name="friend_color_swatch" width="44" tool_tip="Color of Friends"/>
|
||||
<color_swatch border_color="0.45098 0.517647 0.607843 1" bottom_delta="0" can_apply_immediately="true" color="1 1 1 1" control_name="AscentEstateOwnerColor" follows="top" height="47" label="Estate" left_delta="54" name="estate_owner_color_swatch" width="44" tool_tip="Color of Estate Managers"/>
|
||||
|
||||
@@ -1,23 +1,23 @@
|
||||
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
|
||||
<panel border="true" bottom="-409" height="408" label="Voice Chat" left="102" name="chat" width="517">
|
||||
<text bottom_delta="-20" follows="left|top" left_delta="12" name="voice_unavailable">Voice Chat Is Not Available</text>
|
||||
<check_box bottom_delta="0" follows="top" height="16" initial_value="false" label="Enable voice chat" left="8" name="enable_voice_check"/>
|
||||
<check_box bottom_delta="-18" follows="top" height="16" name="enable_multivoice_check"/>
|
||||
<text visibility_control="CmdLineDisableVoice" bottom_delta="-14" follows="left|top" left_delta="12" name="voice_unavailable">Voice Chat Is Not Available</text>
|
||||
<check_box control_name="local_enable" invisibility_control="CmdLineDisableVoice" bottom_delta="-6" follows="top" height="16" initial_value="false" label="Enable voice chat" left="8" name="enable_voice_check"/>
|
||||
<check_box bottom_delta="-18" follows="top" height="16" name="enable_multivoice_check"/>
|
||||
<string value="Allow multiple instances of [APP_NAME] to use voice simultaneously (requires restart)" name="multivoice_label"/>
|
||||
<radio_group bottom_delta="-66" draw_border="false" follows="top" height="60" left_delta="20" name="ear_location" width="364">
|
||||
<radio_group enabled_control="local_enable" bottom_delta="-66" draw_border="false" follows="top" height="60" left_delta="20" name="ear_location" width="364">
|
||||
<radio_item bottom="-19" height="16" left="3" name="0">Hear Voice Chat from camera position.</radio_item>
|
||||
<radio_item bottom="-35" height="16" name="1">Hear Voice Chat from avatar position.</radio_item>
|
||||
<radio_item bottom="-51" height="16" name="3">Hear Voice Chat equally from everyone.</radio_item>
|
||||
</radio_group>
|
||||
<text bottom_delta="-20" follows="top" height="16" name="push_to_talk_heading">Push To Talk</text>
|
||||
<check_box bottom_delta="-20" follows="top" height="16" initial_value="false" label="Use Push-to-Talk in toggle mode" name="push_to_talk_toggle_check" tool_tip="When enabled, press the push-to-talk trigger to switch your microphone on and off. When disabled, the microphone is off unless the trigger is being held down."/>
|
||||
<text bottom_delta="-20" follows="top" height="16" left_delta="4" name="push_to_talk_label">Push-to-Talk trigger:</text>
|
||||
<line_editor bottom_delta="-20" follows="top" height="19" name="modifier_combo" width="280"/>
|
||||
<button bottom_delta="-25" follows="top" height="20" label="Set Key" name="set_voice_hotkey_button" width="115"/>
|
||||
<button bottom_delta="0" follows="top" height="20" label="Middle Mouse Button" left_delta="120" name="set_voice_middlemouse_button" width="160"/>
|
||||
<check_box bottom_delta="-24" follows="top" height="16" initial_value="false" label="Enable lip sync animation" left="28" name="enable_lip_sync_check"/>
|
||||
<check_box bottom_delta="-20" follows="top" height="16" initial_value="false" label="Only accept voice calls from people on My Friends list" name="voice_call_friends_only_check"/>
|
||||
<check_box bottom_delta="-18" follows="top" height="16" initial_value="false" label="Switch off microphone when ending IM calls" name="auto_disengage_mic_check"/>
|
||||
<button control_name="ShowDeviceSettings" toggle="true" bottom_delta="-40" follows="top" height="20" label="Device Settings" mouse_opaque="true" name="device_settings_btn" width="155" tool_tip="Running the Device Settings will temporarily disconnect you from Voice Chat, and changes you make will be immediately applied."/>
|
||||
<panel visibility_control="ShowDeviceSettings" name="device_settings_panel" filename="panel_sound_devices.xml" follows="all"/>
|
||||
<text enabled_control="local_enable" bottom_delta="-20" follows="top" height="16" name="push_to_talk_heading">Push To Talk</text>
|
||||
<check_box enabled_control="local_enable" bottom_delta="-20" follows="top" height="16" initial_value="false" label="Use Push-to-Talk in toggle mode" name="push_to_talk_toggle_check" tool_tip="When enabled, press the push-to-talk trigger to switch your microphone on and off. When disabled, the microphone is off unless the trigger is being held down."/>
|
||||
<text enabled_control="local_enable" bottom_delta="-20" follows="top" height="16" left_delta="4" name="push_to_talk_label">Push-to-Talk trigger:</text>
|
||||
<line_editor enabled_control="local_enable" bottom_delta="-20" follows="top" height="19" name="modifier_combo" width="280"/>
|
||||
<button enabled_control="local_enable" bottom_delta="-25" follows="top" height="20" label="Set Key" name="set_voice_hotkey_button" width="115"/>
|
||||
<button enabled_control="local_enable" bottom_delta="0" follows="top" height="20" label="Middle Mouse Button" left_delta="120" name="set_voice_middlemouse_button" width="160"/>
|
||||
<check_box enabled_control="local_enable" bottom_delta="-24" follows="top" height="16" initial_value="false" label="Enable lip sync animation" left="28" name="enable_lip_sync_check"/>
|
||||
<check_box enabled_control="local_enable" bottom_delta="-20" follows="top" height="16" initial_value="false" label="Only accept voice calls from people on My Friends list" name="voice_call_friends_only_check"/>
|
||||
<check_box enabled_control="local_enable" bottom_delta="-18" follows="top" height="16" initial_value="false" label="Switch off microphone when ending IM calls" name="auto_disengage_mic_check"/>
|
||||
<button enabled_control="local_enable" control_name="ShowDeviceSettings" toggle="true" bottom_delta="-40" follows="top" height="20" label="Device Settings" mouse_opaque="true" name="device_settings_btn" width="155" tool_tip="Running the Device Settings will temporarily disconnect you from Voice Chat, and changes you make will be immediately applied."/>
|
||||
<panel enabled_control="local_enable" visibility_control="ShowDeviceSettings" name="device_settings_panel" filename="panel_sound_devices.xml" follows="all"/>
|
||||
</panel>
|
||||
|
||||
Reference in New Issue
Block a user