diff --git a/interface/src/Menu.cpp b/interface/src/Menu.cpp index 2cc16102b0..48403b7511 100644 --- a/interface/src/Menu.cpp +++ b/interface/src/Menu.cpp @@ -87,44 +87,9 @@ Menu* Menu::getInstance() { return _instance; } -const float DEFAULT_FACESHIFT_EYE_DEFLECTION = 0.25f; -const QString DEFAULT_FACESHIFT_HOSTNAME = "localhost"; -const float DEFAULT_AVATAR_LOD_DISTANCE_MULTIPLIER = 1.0f; -const int ONE_SECOND_OF_FRAMES = 60; -const int FIVE_SECONDS_OF_FRAMES = 5 * ONE_SECOND_OF_FRAMES; - -const QString CONSOLE_TITLE = "Scripting Console"; -const float CONSOLE_WINDOW_OPACITY = 0.95f; -const int CONSOLE_WIDTH = 800; -const int CONSOLE_HEIGHT = 200; - Menu::Menu() : - _actionHash(), - _receivedAudioStreamSettings(), - _fieldOfView(DEFAULT_FIELD_OF_VIEW_DEGREES), - _realWorldFieldOfView(DEFAULT_REAL_WORLD_FIELD_OF_VIEW_DEGREES), - _faceshiftEyeDeflection(DEFAULT_FACESHIFT_EYE_DEFLECTION), - _faceshiftHostname(DEFAULT_FACESHIFT_HOSTNAME), - _jsConsole(NULL), -#if defined(Q_OS_MAC) || defined(Q_OS_WIN) - _speechRecognizer(), -#endif - _octreeSizeScale(DEFAULT_OCTREE_SIZE_SCALE), - _oculusUIAngularSize(DEFAULT_OCULUS_UI_ANGULAR_SIZE), - _sixenseReticleMoveSpeed(DEFAULT_SIXENSE_RETICLE_MOVE_SPEED), - _invertSixenseButtons(DEFAULT_INVERT_SIXENSE_MOUSE_BUTTONS), - _automaticAvatarLOD(true), - _avatarLODDecreaseFPS(DEFAULT_ADJUST_AVATAR_LOD_DOWN_FPS), - _avatarLODIncreaseFPS(ADJUST_LOD_UP_FPS), - _avatarLODDistanceMultiplier(DEFAULT_AVATAR_LOD_DISTANCE_MULTIPLIER), - _boundaryLevelAdjust(0), - _maxOctreePacketsPerSecond(DEFAULT_MAX_OCTREE_PPS), _lastAdjust(usecTimestampNow()), - _lastAvatarDetailDrop(usecTimestampNow()), - _fpsAverage(FIVE_SECONDS_OF_FRAMES), - _fastFPSAverage(ONE_SECOND_OF_FRAMES), - _hasLoginDialogDisplayed(false), - _shouldRenderTableNeedsRebuilding(true) + _lastAvatarDetailDrop(usecTimestampNow()) { Application *appInstance = Application::getInstance(); diff --git a/interface/src/Menu.h b/interface/src/Menu.h index c23559229d..563ed42d30 100644 --- a/interface/src/Menu.h +++ b/interface/src/Menu.h @@ -48,6 +48,13 @@ const float MINIMUM_AVATAR_LOD_DISTANCE_MULTIPLIER = 0.1f; const float MAXIMUM_AVATAR_LOD_DISTANCE_MULTIPLIER = 15.0f; const QString SETTINGS_ADDRESS_KEY = "address"; + +const float DEFAULT_FACESHIFT_EYE_DEFLECTION = 0.25f; +const QString DEFAULT_FACESHIFT_HOSTNAME = "localhost"; +const float DEFAULT_AVATAR_LOD_DISTANCE_MULTIPLIER = 1.0f; +const int ONE_SECOND_OF_FRAMES = 60; +const int FIVE_SECONDS_OF_FRAMES = 5 * ONE_SECOND_OF_FRAMES; + class QSettings; class AddressBarDialog; @@ -240,32 +247,37 @@ private: QHash _actionHash; InboundAudioStream::Settings _receivedAudioStreamSettings; - float _fieldOfView; /// in Degrees, doesn't apply to HMD like Oculus - float _realWorldFieldOfView; // The actual FOV set by the user's monitor size and view distance - float _faceshiftEyeDeflection; - QString _faceshiftHostname; - QPointer _MetavoxelEditor; - QPointer _metavoxelNetworkSimulator; - QPointer _ScriptEditor; - QPointer _chatWindow; - QDialog* _jsConsole; + // in Degrees, doesn't apply to HMD like Oculus + float _fieldOfView = DEFAULT_FIELD_OF_VIEW_DEGREES; + // The actual FOV set by the user's monitor size and view distance + float _realWorldFieldOfView = DEFAULT_REAL_WORLD_FIELD_OF_VIEW_DEGREES; + float _faceshiftEyeDeflection = DEFAULT_FACESHIFT_EYE_DEFLECTION; + QString _faceshiftHostname = DEFAULT_FACESHIFT_HOSTNAME; + + QDialog* _jsConsole = nullptr; #if defined(Q_OS_MAC) || defined(Q_OS_WIN) SpeechRecognizer _speechRecognizer; #endif - float _octreeSizeScale; - float _oculusUIAngularSize; - float _sixenseReticleMoveSpeed; - bool _invertSixenseButtons; - bool _automaticAvatarLOD; - float _avatarLODDecreaseFPS; - float _avatarLODIncreaseFPS; - float _avatarLODDistanceMultiplier; - int _boundaryLevelAdjust; - int _maxOctreePacketsPerSecond; + float _octreeSizeScale = DEFAULT_OCTREE_SIZE_SCALE; + float _oculusUIAngularSize;// = DEFAULT_OCULUS_UI_ANGULAR_SIZE; + float _sixenseReticleMoveSpeed;// = DEFAULT_SIXENSE_RETICLE_MOVE_SPEED; + bool _invertSixenseButtons;// = DEFAULT_INVERT_SIXENSE_MOUSE_BUTTONS; + bool _hasLoginDialogDisplayed = false; + + bool _automaticAvatarLOD = true; + float _avatarLODDecreaseFPS = DEFAULT_ADJUST_AVATAR_LOD_DOWN_FPS; + float _avatarLODIncreaseFPS = ADJUST_LOD_UP_FPS; + float _avatarLODDistanceMultiplier = DEFAULT_AVATAR_LOD_DISTANCE_MULTIPLIER; + + int _boundaryLevelAdjust = 0; + int _maxOctreePacketsPerSecond = DEFAULT_MAX_OCTREE_PPS; + quint64 _lastAdjust; quint64 _lastAvatarDetailDrop; - SimpleMovingAverage _fpsAverage; - SimpleMovingAverage _fastFPSAverage; + + SimpleMovingAverage _fpsAverage = FIVE_SECONDS_OF_FRAMES; + SimpleMovingAverage _fastFPSAverage = ONE_SECOND_OF_FRAMES; + QPointer _addressBarDialog; QPointer _animationsDialog; QPointer _attachmentsDialog; @@ -278,16 +290,20 @@ private: QPointer _loginDialog; QPointer _octreeStatsDialog; QPointer _preferencesDialog; - bool _hasLoginDialogDisplayed; + + QPointer _MetavoxelEditor; + QPointer _metavoxelNetworkSimulator; + QPointer _ScriptEditor; + QPointer _chatWindow; + QAction* _loginAction = nullptr; QAction* _chatAction = nullptr; QString _snapshotsLocation; QString _scriptsLocation; QByteArray _walletPrivateKey; - bool _shouldRenderTableNeedsRebuilding; + bool _shouldRenderTableNeedsRebuilding = true; QMap _shouldRenderTable; - }; namespace MenuOption { @@ -405,7 +421,6 @@ namespace MenuOption { const QString RenderTargetFramerate40 = "40"; const QString RenderTargetFramerate30 = "30"; const QString RenderTargetFramerateVSyncOn = "V-Sync On"; - const QString RenderResolution = "Scale Resolution"; const QString RenderResolutionOne = "1"; const QString RenderResolutionTwoThird = "2/3"; diff --git a/interface/src/ui/JSConsole.h b/interface/src/ui/JSConsole.h index f28132a1f5..daeba8ea15 100644 --- a/interface/src/ui/JSConsole.h +++ b/interface/src/ui/JSConsole.h @@ -20,6 +20,11 @@ #include "ui_console.h" #include "ScriptEngine.h" +const QString CONSOLE_TITLE = "Scripting Console"; +const float CONSOLE_WINDOW_OPACITY = 0.95f; +const int CONSOLE_WIDTH = 800; +const int CONSOLE_HEIGHT = 200; + class JSConsole : public QWidget { Q_OBJECT public: diff --git a/interface/src/ui/ScriptEditorWindow.cpp b/interface/src/ui/ScriptEditorWindow.cpp index 0496040724..f5cd6de49a 100644 --- a/interface/src/ui/ScriptEditorWindow.cpp +++ b/interface/src/ui/ScriptEditorWindow.cpp @@ -31,8 +31,6 @@ #include "FlowLayout.h" #include "JSConsole.h" -const int CONSOLE_HEIGHT = 150; - ScriptEditorWindow::ScriptEditorWindow() : _ScriptEditorWindowUI(new Ui::ScriptEditorWindow), _loadMenu(new QMenu),