diff --git a/autobuild.xml b/autobuild.xml index c07c01defa..8522b9a18f 100644 --- a/autobuild.xml +++ b/autobuild.xml @@ -761,6 +761,16 @@ dullahan + copyright + Copyright (c) 2017, Linden Research, Inc. + description + A headless browser SDK that uses the Chromium Embedded Framework (CEF). It is designed to make it easier to write applications that render modern web content directly to a memory buffer, inject synthesized mouse and keyboard events as well as interact with web based features like JavaScript or cookies. + license + MPL + license_file + LICENSES/LICENSE.txt + name + dullahan platforms darwin64 @@ -768,11 +778,11 @@ archive hash - e4d568c166049ce61b39d69887b56d2382781a1a + 7fde76e3f0e62d0e0593b6157f4d740ecef2429d hash_algorithm sha1 url - https://github.com/secondlife/dullahan/releases/download/v118.0.5993.54/dullahan-1.14.0.202310131309_118.4.1_g3dd6078_chromium-118.0.5993.54-darwin64-6b02a60.tar.zst + https://github.com/secondlife/dullahan/releases/download/v1.14.0-r3/dullahan-1.14.0.202408091638_118.4.1_g3dd6078_chromium-118.0.5993.54-darwin64-10322607516.tar.zst name darwin64 @@ -782,11 +792,11 @@ archive hash - 2845d791c0f00392ba1573bc645a0fc8a7fd37ae + 209d031ae67bc66d8e8f8509c71d259014c65ceb hash_algorithm sha1 url - https://3p.firestormviewer.org/dullahan-1.14.0.202403161609_118.6.8_ge44bee1_chromium-118.0.5993.117-linux64-240760509.tar.zst + https://github.com/secondlife/dullahan/releases/download/v1.14.0-r3/dullahan-1.14.0.202408091637_118.4.1_g3dd6078_chromium-118.0.5993.54-linux64-10322607516.tar.zst name linux64 @@ -796,28 +806,18 @@ archive hash - a00eae7f5dc430ae48389ab723ced39739b0a144 + 4124c79d8b0e319877ffa4c12581d5c1318b4d93 hash_algorithm sha1 url - https://github.com/secondlife/dullahan/releases/download/v118.0.5993.54/dullahan-1.14.0.202310131404_118.4.1_g3dd6078_chromium-118.0.5993.54-windows64-6b02a60.tar.zst + https://github.com/secondlife/dullahan/releases/download/v1.14.0-r3/dullahan-1.14.0.202408091639_118.4.1_g3dd6078_chromium-118.0.5993.54-windows64-10322607516.tar.zst name windows64 - license - MPL - license_file - LICENSES/LICENSE.txt - copyright - Copyright (c) 2017, Linden Research, Inc. version - 1.14.0.202310131404_118.4.1_g3dd6078_chromium-118.0.5993.54 - name - dullahan - description - A headless browser SDK that uses the Chromium Embedded Framework (CEF). It is designed to make it easier to write applications that render modern web content directly to a memory buffer, inject synthesized mouse and keyboard events as well as interact with web based features like JavaScript or cookies. + 1.14.0.202408091639_118.4.1_g3dd6078_chromium-118.0.5993.54 emoji_shortcodes diff --git a/indra/llcharacter/llcharacter.h b/indra/llcharacter/llcharacter.h index 8f60a825c7..2f0cf1487e 100644 --- a/indra/llcharacter/llcharacter.h +++ b/indra/llcharacter/llcharacter.h @@ -256,6 +256,28 @@ public: S32 getVisualParamCount() const { return (S32)mVisualParamIndexMap.size(); } LLVisualParam* getVisualParam(const char *name); + // [Legacy Bake] + //void animateTweakableVisualParams(F32 delta) + void animateTweakableVisualParams(F32 delta, bool upload_bake) + { + for (auto& it : mVisualParamIndexMap) + { + if (it.second->isTweakable()) + { + // [Legacy Bake] + //it.second->animate(delta); + it.second->animate(delta, upload_bake); + } + } + } + + void applyAllVisualParams(ESex avatar_sex) + { + for (auto& it : mVisualParamIndexMap) + { + it.second->apply(avatar_sex); + } + } ESex getSex() const { return mSex; } void setSex( ESex sex ) { mSex = sex; } diff --git a/indra/newview/lldrawable.cpp b/indra/newview/lldrawable.cpp index 82765b40b2..4f30d6bdf2 100644 --- a/indra/newview/lldrawable.cpp +++ b/indra/newview/lldrawable.cpp @@ -1613,18 +1613,10 @@ void LLSpatialBridge::updateDistance(LLCamera& camera_in, bool force_update) mDrawable->updateDistance(camera, force_update); - LLViewerObject::const_child_list_t& child_list = mDrawable->getVObj()->getChildren(); - for (LLViewerObject::child_list_t::const_iterator iter = child_list.begin(); - iter != child_list.end(); iter++) + for (LLViewerObject* child : mDrawable->getVObj()->getChildren()) { - LLViewerObject* child = *iter; LLDrawable* drawable = child->mDrawable; - if (!drawable) - { - continue; - } - - if (!drawable->isAvatar()) + if (drawable && !drawable->isDead() && drawable->isAvatar()) { drawable->updateDistance(camera, force_update); } diff --git a/indra/newview/llpanelface.cpp b/indra/newview/llpanelface.cpp index 9e4ea17e14..d50e365056 100644 --- a/indra/newview/llpanelface.cpp +++ b/indra/newview/llpanelface.cpp @@ -2276,7 +2276,7 @@ void LLPanelFace::onMaterialOverrideReceived(const LLUUID& object_id, S32 side) ////////////////////////////////////////////////////////////////////////////// // -void LLPanelFace::navigateToTitleMedia( const std::string url ) +void LLPanelFace::navigateToTitleMedia(const std::string& url) { std::string multi_media_info_str = LLTrans::getString("Multiple Media"); if (url.empty() || multi_media_info_str == url) @@ -2288,9 +2288,9 @@ void LLPanelFace::navigateToTitleMedia( const std::string url ) { LLPluginClassMedia* media_plugin = mTitleMedia->getMediaPlugin(); // check if url changed or if we need a new media source - if (mTitleMedia->getCurrentNavUrl() != url || media_plugin == NULL) + if (mTitleMedia->getCurrentNavUrl() != url || media_plugin == nullptr) { - mTitleMedia->navigateTo( url ); + mTitleMedia->navigateTo(url); LLViewerMediaImpl* impl = LLViewerMedia::getInstance()->getMediaImplFromTextureID(mTitleMedia->getTextureID()); if (impl) diff --git a/indra/newview/llpanelface.h b/indra/newview/llpanelface.h index f261139f81..c48bf3cbe5 100644 --- a/indra/newview/llpanelface.h +++ b/indra/newview/llpanelface.h @@ -134,7 +134,7 @@ public: LLGLTFMaterial::TextureInfo getPBRDropChannel(); protected: - void navigateToTitleMedia(const std::string url); + void navigateToTitleMedia(const std::string& url); bool selectedMediaEditable(); void clearMediaSettings(); void updateMediaSettings(); @@ -227,7 +227,6 @@ protected: void onCommitMaterialGloss(); void onCommitMaterialEnv(); void onCommitMaterialMaskCutoff(); - void onCommitMaterialID(); void onCommitMaterialsMedia(); void onCommitMaterialType(); @@ -288,7 +287,7 @@ public: // private: - bool isAlpha() { return mIsAlpha; } + bool isAlpha() const { return mIsAlpha; } // Convenience funcs to keep the visual flack to a minimum // diff --git a/indra/newview/llviewerobject.cpp b/indra/newview/llviewerobject.cpp index 97eb0ab9c2..6531393c4f 100644 --- a/indra/newview/llviewerobject.cpp +++ b/indra/newview/llviewerobject.cpp @@ -5932,7 +5932,8 @@ LLBBox LLViewerObject::getBoundingBoxAgent() const } if (avatar_parent && avatar_parent->isAvatar() && - root_edit && root_edit->mDrawable.notNull() && root_edit->mDrawable->getXform()->getParent()) + root_edit && root_edit->mDrawable.notNull() && !root_edit->mDrawable->isDead() && + root_edit->mDrawable->getXform()->getParent()) { LLXform* parent_xform = root_edit->mDrawable->getXform()->getParent(); position_agent = (getPositionEdit() * parent_xform->getWorldRotation()) + parent_xform->getWorldPosition(); diff --git a/indra/newview/llvoavatar.cpp b/indra/newview/llvoavatar.cpp index 1a4e68e088..4006e24d99 100644 --- a/indra/newview/llvoavatar.cpp +++ b/indra/newview/llvoavatar.cpp @@ -3265,32 +3265,17 @@ void LLVOAvatar::idleUpdateAppearanceAnimation() } else { - F32 morph_amt = calcMorphAmount(); - LLVisualParam *param; - if (!isSelf()) { + F32 morph_amt = calcMorphAmount(); // animate only top level params for non-self avatars - for (param = getFirstVisualParam(); - param; - param = getNextVisualParam()) - { - if (param->isTweakable()) - { - // [Legacy Bake] - //param->animate(morph_amt); - param->animate(morph_amt, false); - } - } + // [Legacy Bake] + //animateTweakableVisualParams(morph_amt); + animateTweakableVisualParams(morph_amt, false); } // apply all params - for (param = getFirstVisualParam(); - param; - param = getNextVisualParam()) - { - param->apply(avatar_sex); - } + applyAllVisualParams(avatar_sex); mLastAppearanceBlendTime = appearance_anim_time; } @@ -3298,7 +3283,7 @@ void LLVOAvatar::idleUpdateAppearanceAnimation() } } -F32 LLVOAvatar::calcMorphAmount() +F32 LLVOAvatar::calcMorphAmount() const { F32 appearance_anim_time = mAppearanceMorphTimer.getElapsedTimeF32(); F32 blend_frac = calc_bouncy_animation(appearance_anim_time / APPEARANCE_MORPH_TIME); diff --git a/indra/newview/llvoavatar.h b/indra/newview/llvoavatar.h index ed0118b770..c333c52b7e 100644 --- a/indra/newview/llvoavatar.h +++ b/indra/newview/llvoavatar.h @@ -442,7 +442,7 @@ protected: bool updateIsFullyLoaded(); bool processFullyLoadedChange(bool loading); void updateRuthTimer(bool loading); - F32 calcMorphAmount(); + F32 calcMorphAmount() const; private: bool mFirstFullyVisible;