From 2ac7fcadd2c02f89b0655631d1ee3b9c4660bad5 Mon Sep 17 00:00:00 2001 From: luiscuenca Date: Tue, 1 May 2018 09:37:01 -0700 Subject: [PATCH] load scripts once on rigReady --- interface/src/avatar/MyAvatar.cpp | 6 ++++++ interface/src/avatar/MyAvatar.h | 3 +++ 2 files changed, 9 insertions(+) diff --git a/interface/src/avatar/MyAvatar.cpp b/interface/src/avatar/MyAvatar.cpp index 99fdea0449..85b2ece077 100755 --- a/interface/src/avatar/MyAvatar.cpp +++ b/interface/src/avatar/MyAvatar.cpp @@ -124,8 +124,14 @@ MyAvatar::MyAvatar(QThread* thread) : connect(_skeletonModel.get(), &Model::setURLFinished, this, [this](bool success) { if (success) { qApp->unloadAvatarScripts(); + _shouldLoadScripts = true; + } + }); + connect(_skeletonModel.get(), &Model::rigReady, this, [this]() { + if (_shouldLoadScripts) { auto geometry = getSkeletonModel()->getFBXGeometry(); qApp->loadAvatarScripts(geometry.scripts); + _shouldLoadScripts = false; } }); connect(_skeletonModel.get(), &Model::rigReady, this, &Avatar::rigReady); diff --git a/interface/src/avatar/MyAvatar.h b/interface/src/avatar/MyAvatar.h index a927a1d0ba..2bcbd878a9 100644 --- a/interface/src/avatar/MyAvatar.h +++ b/interface/src/avatar/MyAvatar.h @@ -904,6 +904,9 @@ private: // max unscaled forward movement speed ThreadSafeValueCache _walkSpeed { DEFAULT_AVATAR_MAX_WALKING_SPEED }; float _walkSpeedScalar { AVATAR_WALK_SPEED_SCALAR }; + + // load avatar scripts once when rig is ready + bool _shouldLoadScripts { false }; }; QScriptValue audioListenModeToScriptValue(QScriptEngine* engine, const AudioListenerMode& audioListenerMode);