summaryrefslogtreecommitdiff
path: root/indra/newview
diff options
context:
space:
mode:
authorCallum Linden <callum@lindenlab.com>2021-09-28 15:25:12 -0700
committerCallum Linden <callum@lindenlab.com>2021-09-28 15:25:12 -0700
commit89057746316affe2fef7314624942fa43085d6b6 (patch)
tree6187d3d751c13f46b571b10908e5d56f3febff94 /indra/newview
parent851fef680164e3472b0516e7237bbcc4a35bc5a3 (diff)
parent187d5862398820e28a8935ce9058f444f4963153 (diff)
Merge branch 'SL-15999' of https://bitbucket.org/lindenlab/viewer into SL-15999
Diffstat (limited to 'indra/newview')
-rw-r--r--indra/newview/llagent.cpp2
-rw-r--r--indra/newview/llappviewer.cpp5
-rw-r--r--indra/newview/lltexturefetch.cpp4
-rw-r--r--indra/newview/llviewermessage.cpp21
-rw-r--r--indra/newview/llviewerobject.cpp29
-rw-r--r--indra/newview/llvoavatar.cpp5
-rw-r--r--indra/newview/pipeline.cpp8
7 files changed, 41 insertions, 33 deletions
diff --git a/indra/newview/llagent.cpp b/indra/newview/llagent.cpp
index 389448654a..b35eef20f7 100644
--- a/indra/newview/llagent.cpp
+++ b/indra/newview/llagent.cpp
@@ -1481,7 +1481,7 @@ void LLAgent::resetControlFlags()
//-----------------------------------------------------------------------------
void LLAgent::setAFK()
{
- if (!gAgent.getRegion())
+ if (gNonInteractive || !gAgent.getRegion())
{
// Don't set AFK if we're not talking to a region yet.
return;
diff --git a/indra/newview/llappviewer.cpp b/indra/newview/llappviewer.cpp
index b6446e40ac..5413045e7a 100644
--- a/indra/newview/llappviewer.cpp
+++ b/indra/newview/llappviewer.cpp
@@ -1559,7 +1559,7 @@ bool LLAppViewer::doFrame()
if (gNonInteractive)
{
- S32 non_interactive_ms_sleep_time = 1000;
+ S32 non_interactive_ms_sleep_time = 100;
LLAppViewer::getTextureCache()->pause();
LLAppViewer::getImageDecodeThread()->pause();
ms_sleep(non_interactive_ms_sleep_time);
@@ -2759,6 +2759,9 @@ bool LLAppViewer::initConfiguration()
if (gNonInteractive)
{
tempSetControl("SLURLPassToOtherInstance", "FALSE");
+ tempSetControl("RenderWater", "FALSE");
+ tempSetControl("FlyingAtExit", "FALSE");
+ LLError::setEnabledLogTypesMask(0);
llassert_always(!gSavedSettings.getBOOL("SLURLPassToOtherInstance"));
}
diff --git a/indra/newview/lltexturefetch.cpp b/indra/newview/lltexturefetch.cpp
index f64db7beb5..9126360eed 100644
--- a/indra/newview/lltexturefetch.cpp
+++ b/indra/newview/lltexturefetch.cpp
@@ -1139,6 +1139,10 @@ void LLTextureFetchWorker::startWork(S32 param)
// Threads: Ttf
bool LLTextureFetchWorker::doWork(S32 param)
{
+ if (gNonInteractive)
+ {
+ return true;
+ }
static const LLCore::HttpStatus http_not_found(HTTP_NOT_FOUND); // 404
static const LLCore::HttpStatus http_service_unavail(HTTP_SERVICE_UNAVAILABLE); // 503
static const LLCore::HttpStatus http_not_sat(HTTP_REQUESTED_RANGE_NOT_SATISFIABLE); // 416;
diff --git a/indra/newview/llviewermessage.cpp b/indra/newview/llviewermessage.cpp
index c99232eba0..ab65d747ba 100644
--- a/indra/newview/llviewermessage.cpp
+++ b/indra/newview/llviewermessage.cpp
@@ -4049,7 +4049,6 @@ void process_avatar_animation(LLMessageSystem *mesgsys, void **user_data)
S32 num_blocks = mesgsys->getNumberOfBlocksFast(_PREHASH_AnimationList);
S32 num_source_blocks = mesgsys->getNumberOfBlocksFast(_PREHASH_AnimationSourceList);
- bool non_interactive_got_run = false;
LL_DEBUGS("Messaging", "Motion") << "Processing " << num_blocks << " Animations" << LL_ENDL;
@@ -4065,14 +4064,6 @@ void process_avatar_animation(LLMessageSystem *mesgsys, void **user_data)
mesgsys->getUUIDFast(_PREHASH_AnimationList, _PREHASH_AnimID, animation_id, i);
mesgsys->getS32Fast(_PREHASH_AnimationList, _PREHASH_AnimSequenceID, anim_sequence_id, i);
- if (gNonInteractive && (animation_id == ANIM_AGENT_RUN))
- {
- // RUN requests get sent at startup for unclear
- // reasons. Same avatar may get requests one run and
- // not another. At least in the non-interactive case,
- // we want to override these.
- non_interactive_got_run = true;
- }
avatarp->mSignaledAnimations[animation_id] = anim_sequence_id;
// *HACK: Disabling flying mode if it has been enabled shortly before the agent
@@ -4086,6 +4077,11 @@ void process_avatar_animation(LLMessageSystem *mesgsys, void **user_data)
gAgent.setFlying(FALSE);
}
+ if (gNonInteractive && animation_id == ANIM_AGENT_RUN)
+ {
+ LL_INFOS() << "Noninteractive, got run request for self" << LL_ENDL;
+ }
+
if (i < num_source_blocks)
{
mesgsys->getUUIDFast(_PREHASH_AnimationSourceList, _PREHASH_ObjectID, object_id, i);
@@ -4136,13 +4132,6 @@ void process_avatar_animation(LLMessageSystem *mesgsys, void **user_data)
{
avatarp->processAnimationStateChanges();
}
-
- if (non_interactive_got_run)
- {
- // Total kluge alert.
- LL_INFOS("Messaging","Motion") << "non-interactive mode, resetting animations" << LL_ENDL;
- gAgent.stopCurrentAnimations();
- }
}
diff --git a/indra/newview/llviewerobject.cpp b/indra/newview/llviewerobject.cpp
index 528448c477..0832415e1e 100644
--- a/indra/newview/llviewerobject.cpp
+++ b/indra/newview/llviewerobject.cpp
@@ -156,15 +156,25 @@ LLViewerObject *LLViewerObject::createObject(const LLUUID &id, const LLPCode pco
LLViewerObject *res = NULL;
LL_RECORD_BLOCK_TIME(FTM_CREATE_OBJECT);
-
+
+ if (gNonInteractive
+ && pcode != LL_PCODE_LEGACY_AVATAR
+ && pcode != LL_VO_SURFACE_PATCH
+ && pcode != LL_VO_WATER
+ && pcode != LL_VO_VOID_WATER
+ && pcode != LL_VO_WL_SKY
+ && pcode != LL_VO_SKY
+ && pcode != LL_VO_GROUND
+ && pcode != LL_VO_PART_GROUP
+ )
+ {
+ return res;
+ }
switch (pcode)
{
case LL_PCODE_VOLUME:
{
- if (!gNonInteractive)
- {
- res = new LLVOVolume(id, pcode, regionp); break;
- }
+ res = new LLVOVolume(id, pcode, regionp); break;
break;
}
case LL_PCODE_LEGACY_AVATAR:
@@ -200,12 +210,9 @@ LLViewerObject *LLViewerObject::createObject(const LLUUID &id, const LLPCode pco
}
else
{
- if (!gNonInteractive)
- {
- LLVOAvatar *avatar = new LLVOAvatar(id, pcode, regionp);
- avatar->initInstance();
- res = avatar;
- }
+ LLVOAvatar *avatar = new LLVOAvatar(id, pcode, regionp);
+ avatar->initInstance();
+ res = avatar;
}
break;
}
diff --git a/indra/newview/llvoavatar.cpp b/indra/newview/llvoavatar.cpp
index e085a945a8..dad580de70 100644
--- a/indra/newview/llvoavatar.cpp
+++ b/indra/newview/llvoavatar.cpp
@@ -3807,6 +3807,11 @@ LLViewerInventoryItem* recursiveGetObjectInventoryItem(LLViewerObject *vobj, LLU
void LLVOAvatar::updateAnimationDebugText()
{
+ if (isSelf() && gNonInteractive)
+ {
+ LLVector3 vel = getVelocity();
+ addDebugText(llformat("vel %f %f %f\n",vel[0],vel[1],vel[2]));
+ }
for (LLMotionController::motion_list_t::iterator iter = mMotionController.getActiveMotions().begin();
iter != mMotionController.getActiveMotions().end(); ++iter)
{
diff --git a/indra/newview/pipeline.cpp b/indra/newview/pipeline.cpp
index 30703426ce..1730753eb1 100644
--- a/indra/newview/pipeline.cpp
+++ b/indra/newview/pipeline.cpp
@@ -487,10 +487,10 @@ void LLPipeline::init()
{
clearAllRenderTypes();
}
- //else if (gSavedSettings.getBOOL("NonInteractive"))
-// {
- // clearAllRenderTypes();
- //}
+ else if (gNonInteractive)
+ {
+ clearAllRenderTypes();
+ }
else
{
setAllRenderTypes(); // By default, all rendering types start enabled