diff --git a/interface/src/Application.cpp b/interface/src/Application.cpp index 661d75bab9..c9780aff4c 100644 --- a/interface/src/Application.cpp +++ b/interface/src/Application.cpp @@ -7462,9 +7462,6 @@ void Application::registerScriptEngineWithApplicationServices(const ScriptManage scriptEngine->registerGlobalObject("PlatformInfo", PlatformInfoScriptingInterface::getInstance()); scriptEngine->registerGlobalObject("Rates", new RatesScriptingInterface(this)); - // hook our avatar and avatar hash map object into this script engine - getMyAvatar()->registerProperties(scriptEngine); - scriptEngine->registerGlobalObject("AvatarList", DependencyManager::get().data()); scriptEngine->registerGlobalObject("Camera", &_myCamera); diff --git a/interface/src/RefreshRateManager.cpp b/interface/src/RefreshRateManager.cpp index ebdf4b919d..ec8c9c3b78 100644 --- a/interface/src/RefreshRateManager.cpp +++ b/interface/src/RefreshRateManager.cpp @@ -21,9 +21,18 @@ STATIC_SCRIPT_TYPES_INITIALIZER(+[](ScriptManager* manager){ auto scriptEngine = manager->engine().get(); scriptRegisterMetaType(scriptEngine, scriptValueFromEnumClass, scriptValueToEnumClass, "RefreshRateRegime"); + scriptRegisterMetaType(scriptEngine, scriptValueFromEnumClass, scriptValueToEnumClass, "UXMode"); }); +STATIC_SCRIPT_INITIALIZER(+[](ScriptManager* manager){ + auto scriptEngine = manager->engine().get(); + + scriptEngine->registerEnum("RefreshRateRegime",QMetaEnum::fromType()); + + scriptEngine->registerEnum("UXMode",QMetaEnum::fromType()); +}); + static const int VR_TARGET_RATE = 90; /*@jsdoc diff --git a/interface/src/avatar/MyAvatar.cpp b/interface/src/avatar/MyAvatar.cpp index 56e6e4e3cc..4748053196 100644 --- a/interface/src/avatar/MyAvatar.cpp +++ b/interface/src/avatar/MyAvatar.cpp @@ -119,6 +119,12 @@ STATIC_SCRIPT_TYPES_INITIALIZER(+[](ScriptManager* manager){ registerMetaTypes(scriptEngine); }); +STATIC_SCRIPT_INITIALIZER(+[](ScriptManager* manager){ + auto scriptEngine = manager->engine(); + + DependencyManager::get()->getMyAvatar()->registerProperties(scriptEngine); +}); + const std::array(MyAvatar::AllowAvatarStandingPreference::Count)> MyAvatar::allowAvatarStandingPreferenceStrings = { QStringLiteral("WhenUserIsStanding"), diff --git a/interface/src/scripting/PerformanceScriptingInterface.cpp b/interface/src/scripting/PerformanceScriptingInterface.cpp index 426af07676..2b7cc6f89b 100644 --- a/interface/src/scripting/PerformanceScriptingInterface.cpp +++ b/interface/src/scripting/PerformanceScriptingInterface.cpp @@ -21,6 +21,13 @@ STATIC_SCRIPT_TYPES_INITIALIZER(+[](ScriptManager* manager){ scriptRegisterMetaType(scriptEngine, scriptValueFromEnumClass, scriptValueToEnumClass, "RefreshRateProfile"); }); +STATIC_SCRIPT_INITIALIZER(+[](ScriptManager* manager){ + auto scriptEngine = manager->engine().get(); + + scriptEngine->registerEnum("Performance.PerformancePreset",QMetaEnum::fromType()); + scriptEngine->registerEnum("Performance.RefreshRateProfile",QMetaEnum::fromType()); +}); + std::once_flag PerformanceScriptingInterface::registry_flag; PerformanceScriptingInterface::PerformanceScriptingInterface() { diff --git a/interface/src/scripting/PlatformInfoScriptingInterface.cpp b/interface/src/scripting/PlatformInfoScriptingInterface.cpp index bd8ae06335..85fb4f15d9 100644 --- a/interface/src/scripting/PlatformInfoScriptingInterface.cpp +++ b/interface/src/scripting/PlatformInfoScriptingInterface.cpp @@ -27,6 +27,12 @@ STATIC_SCRIPT_TYPES_INITIALIZER(+[](ScriptManager* manager){ scriptRegisterMetaType(scriptEngine, scriptValueFromEnumClass, scriptValueToEnumClass, "PlatformTier"); }); +STATIC_SCRIPT_INITIALIZER(+[](ScriptManager* manager){ + auto scriptEngine = manager->engine().get(); + + scriptEngine->registerEnum("PlatformInfo.PlatformTier",QMetaEnum::fromType()); +}); + PlatformInfoScriptingInterface* PlatformInfoScriptingInterface::getInstance() { static PlatformInfoScriptingInterface sharedInstance; return &sharedInstance; diff --git a/interface/src/scripting/RenderScriptingInterface.cpp b/interface/src/scripting/RenderScriptingInterface.cpp index 4b93e1502c..5867466335 100644 --- a/interface/src/scripting/RenderScriptingInterface.cpp +++ b/interface/src/scripting/RenderScriptingInterface.cpp @@ -21,6 +21,13 @@ STATIC_SCRIPT_TYPES_INITIALIZER(+[](ScriptManager* manager){ scriptRegisterMetaType(scriptEngine, scriptValueFromEnumClass, scriptValueToEnumClass, "Mode"); }); +STATIC_SCRIPT_INITIALIZER(+[](ScriptManager* manager){ + auto scriptEngine = manager->engine().get(); + + scriptEngine->registerEnum("Render.RenderMethod",QMetaEnum::fromType()); + scriptEngine->registerEnum("AntialiasingMode",QMetaEnum::fromType()); +}); + RenderScriptingInterface* RenderScriptingInterface::getInstance() { static RenderScriptingInterface sharedInstance; return &sharedInstance; diff --git a/interface/src/scripting/RenderScriptingInterface.h b/interface/src/scripting/RenderScriptingInterface.h index 27088daf97..f63da392b7 100644 --- a/interface/src/scripting/RenderScriptingInterface.h +++ b/interface/src/scripting/RenderScriptingInterface.h @@ -148,14 +148,14 @@ public slots: /*@jsdoc * Gets the active anti-aliasing mode. * @function Render.getAntialiasingMode - * @returns {integer} the active anti-aliasing mode. + * @returns {AntialiasingMode} the active anti-aliasing mode. */ AntialiasingConfig::Mode getAntialiasingMode() const; /*@jsdoc * Sets the active anti-aliasing mode. * @function Render.setAntialiasingMode - * @param {integer} the active anti-aliasing mode. + * @param {AntialiasingMode} the active anti-aliasing mode. */ void setAntialiasingMode(AntialiasingConfig::Mode mode); diff --git a/libraries/render-utils/src/AntialiasingEffect.h b/libraries/render-utils/src/AntialiasingEffect.h index ddb243f064..b207e8f619 100644 --- a/libraries/render-utils/src/AntialiasingEffect.h +++ b/libraries/render-utils/src/AntialiasingEffect.h @@ -4,6 +4,7 @@ // // Created by Raffi Bedikian on 8/30/15 // Copyright 2015 High Fidelity, Inc. +// Copyright 2022 Overte e.V. // // Distributed under the Apache License, Version 2.0. // See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html @@ -109,6 +110,20 @@ class AntialiasingConfig : public render::Job::Config { public: AntialiasingConfig() : render::Job::Config(true) {} + /*@jsdoc + *Antialiasing modes. + * + * + * + * + * + * + * + * + * + *
ValueNameDescription
0NONEAntialiasing is disabled.
1TAATemporal Antialiasing.
2FXAAFXAA.
3MODE_COUNTInducates number of antialiasing modes
+ * @typedef {number} AntialiasingMode + */ enum Mode { NONE = 0, TAA, diff --git a/libraries/script-engine/src/ScriptManager.cpp b/libraries/script-engine/src/ScriptManager.cpp index 5b4ad7c8e8..93c547277b 100644 --- a/libraries/script-engine/src/ScriptManager.cpp +++ b/libraries/script-engine/src/ScriptManager.cpp @@ -575,17 +575,13 @@ static ScriptValue createScriptableResourcePrototype(ScriptManagerPointer manage auto engine = manager->engine(); auto prototype = engine->newObject(); - // Expose enum State to JS/QML via properties - QObject* state = new QObject(manager.get()); - state->setObjectName("ResourceState"); + auto state = engine->newObject(); auto metaEnum = QMetaEnum::fromType(); for (int i = 0; i < metaEnum.keyCount(); ++i) { - state->setProperty(metaEnum.key(i), metaEnum.value(i)); + state.setProperty(metaEnum.key(i), metaEnum.value(i)); } - auto prototypeState = engine->newQObject(state, ScriptEngine::QtOwnership, - ScriptEngine::ExcludeSlots | ScriptEngine::ExcludeSuperClassMethods); - prototype.setProperty("State", prototypeState); + prototype.setProperty("State", state); return prototype; } diff --git a/libraries/script-engine/src/qtscript/ScriptEngineQtScript_cast.cpp b/libraries/script-engine/src/qtscript/ScriptEngineQtScript_cast.cpp index 581419fce8..b2c23384e7 100644 --- a/libraries/script-engine/src/qtscript/ScriptEngineQtScript_cast.cpp +++ b/libraries/script-engine/src/qtscript/ScriptEngineQtScript_cast.cpp @@ -42,7 +42,6 @@ void ScriptEngineQtScript::registerCustomType(int type, CustomMarshal& customType = _customTypes.insert(type, CustomMarshal()).value(); customType.demarshalFunc = demarshalFunc; customType.marshalFunc = marshalFunc; - qDebug() << "registerCustomType: " << QMetaType(type).name() << " type: " << type << " map size: " << _customTypes.size(); } Q_DECLARE_METATYPE(ScriptValue); diff --git a/libraries/script-engine/src/qtscript/ScriptObjectQtProxy.cpp b/libraries/script-engine/src/qtscript/ScriptObjectQtProxy.cpp index 53bec36638..c551920ac2 100644 --- a/libraries/script-engine/src/qtscript/ScriptObjectQtProxy.cpp +++ b/libraries/script-engine/src/qtscript/ScriptObjectQtProxy.cpp @@ -134,7 +134,6 @@ void ScriptObjectQtProxy::investigate() { if (!qobject) return; const QMetaObject* metaObject = qobject->metaObject(); - qDebug() << "ScriptObjectQtProxy::investigate: " << metaObject->className(); // discover properties int startIdx = _wrapOptions & ScriptEngine::ExcludeSuperClassProperties ? metaObject->propertyOffset() : 0;