Commit graph

35538 commits

Author SHA1 Message Date
keeshii
d3f652686e Added support for QML inside web-entities. 2023-10-10 18:48:39 +02:00
Dale Glass
babed47b6d Rewrite Dropbox URLs to force downloads, even if the user uses a preview URL 2023-09-18 23:21:38 +02:00
Dale Glass
0fb11f1dcb Fix loading avatars from Dropbox due to URLs containing parameters 2023-09-18 20:22:58 +02:00
9d6f08b908
Merge pull request from rampa3/feature/mouse_look
Add mouse look script - continuation
2023-09-10 15:15:13 +02:00
87cb04d79e Added debug message for uncomressed texture on GLES 2023-09-04 23:16:11 +02:00
0f59059490 Initial support for HDR lightmaps 2023-09-03 17:03:20 +02:00
c49c947984 Fixed llack of precision in mouse look mode 2023-09-01 23:43:22 +02:00
1c71825953
Merge pull request from overte-org/fix/flow
Fix issues with flow bones
2023-08-30 22:21:23 +02:00
6dc9c1a3f2
Merge pull request from overte-org/fix/script_reload2
Fix most of the crash causes on script engine reload/shutdown
2023-08-29 23:48:32 +02:00
1ab46f68e3 Fixed entity script reloads 2023-08-28 23:34:19 +02:00
38d44d079c Fixed flow assignment operators 2023-08-27 23:06:53 +02:00
0c2fe4c81f Fixed flow on curved bones 2023-08-27 22:48:39 +02:00
8c87d6f835 Fixed flow bone scaling issue 2023-08-27 20:41:48 +02:00
e88ddc31aa Fix typos in MyAvatar set and get skeleton offset 2023-08-25 14:06:12 -03:00
13242611ea Fix jsDoc references to Vircadia platform/CDN 2023-08-25 13:58:45 -03:00
98282d1255 Add mouse look preference setting 2023-08-22 19:05:09 +02:00
Dale Glass
1efd8d27b9 Put require() in the global scope 2023-08-21 01:08:37 +02:00
9c78c8fb3a
Merge pull request from overte-org/fix/script_crash
Added null pointer check for asQuickItem()
2023-08-18 20:50:47 +02:00
ae36233ff9 Fix QQuickItem pointers 2023-08-18 16:49:14 +02:00
166f7223d1 Fix most of the crash causes on script engine reload/shutdown 2023-08-18 12:12:17 +02:00
db1680c1ca Change profiling output file extension to CSV 2023-08-12 16:48:05 +02:00
a84c68f4ff Add JS profiling API 2023-08-12 16:18:40 +02:00
Dale Glass
7a91b74c94
Merge pull request from overte-org/fix/entity_script_deadlock
Fixed deadlock when entity script engines are being reset.
2023-08-05 22:19:24 +02:00
74c5b6038f Lower inertia for more precise controls 2023-08-02 22:00:12 +02:00
4091557388 Fixed deadlock when entity script engines are being reset.
Co-authored-by: Julian Groß julian.g@posteo.de
2023-08-01 16:33:41 +02:00
790a55d093 Fixed interface scripts failing to shutdown and removed deprecated API signal 2023-07-20 00:15:00 +02:00
1e8d032ea3 Added null pointer check for asQuickItem() 2023-07-17 20:23:06 +02:00
Dale Glass
72137f52f7
Merge pull request from overte-org/fix/script_debug
Fix script error logging
2023-07-16 23:21:26 +02:00
8dc776a73c Fix script error logging 2023-07-16 23:09:45 +02:00
Dale Glass
273d4a35a9 Store annotations before the crash handler initializes
The crash handler only accepts annotations after it's initializes, but
we may do that late and lose some possibly valuable information, or need
to structure things in an awkward manner.

Add a simple system to store annotations in memory until the crash handler
is running.
2023-07-16 21:51:36 +02:00
Dale Glass
c05fde3db4
Merge pull request from daleglass-overte/crash-handler-on-server
Crash handler on server
2023-07-09 21:50:43 +02:00
2860650859 Truncate logs read by FileLogger 2023-07-09 21:01:23 +02:00
Dale Glass
441413020e Move crash handler to networking library.
Turns out dependencies just don't work out well otherwise.
2023-07-02 22:10:27 +02:00
Dale Glass
25755f9c88 Many improvements:
* Get crash settings in assignment clients
* Allow custom crash reporting URL and token
* Fix setting system -- the client's one doesn't belong in the server
* Lots more documentation

Commit just before moving things around.
2023-07-02 21:18:09 +02:00
ebedfa5a5a
Merge pull request from overte-org/fix/thumbsticks
Fix thumbstick press issue
2023-06-27 21:16:20 +02:00
Dale Glass
4dcc2882fd Crash reporter moved to separate library
UAL moved back to networking
2023-06-26 23:12:32 +02:00
Dale Glass
6ec276c818 Initial reorganization 2023-06-26 23:12:32 +02:00
4e3bba047e
Merge pull request from JulianGro/fbx_279
FBX: Fall back to old Metallic behaviour on files created with Blender 2.79 or older
2023-06-26 20:14:23 +02:00
284587913a FBX: Fallback to old behaviour on files created with Blender 2.79 or older 2023-06-25 23:35:08 +02:00
474f52a4f3 Fix thumbstick press issue for translation (not rotation yet) 2023-06-25 22:23:49 +02:00
Dale Glass
de706ab458 Rework crash reporting UI
* Encourage users running dev code to submit reports
* Change from "Disable" to "Enable"
* Always initialize Crashpad and just prevent uploads if disabled
* Fix menu not being in sync
* Add documentation
* Keep track of whether Crashpad initialized successfully
2023-06-25 20:14:13 +02:00
326b00cc09 Fix wrong syntax for JSDoc comments.
For reference, this is an internal syntax defined in tools/jsdoc/plugins/hifi.js
2023-06-09 13:59:49 +02:00
Dale Glass
0f158977fe
Merge pull request from shocktail39/fix/drop-qtscript-from-cmake
remove qtscript from cmake dependencies
2023-06-04 11:42:30 -07:00
Dale Glass
ab7eebae31
Merge pull request from daleglass-overte/fix-settings-reset
Fix resetting the settings
2023-06-04 11:41:22 -07:00
Dale Glass
32b9cc123c Fix resetting the settings
Also minor documentation improvements
2023-06-04 14:50:03 +02:00
da9b9f76af Hide QObject signals from script engine and switch off script memory reporting 2023-06-04 01:07:26 +02:00
8c9a88b2d9 Hide private methods from script engine 2023-06-04 00:29:14 +02:00
steve hocktail
e71f3c7990
remove qtscript from cmake dependencies 2023-06-03 15:44:53 -04:00
Dale Glass
dba38acb9f
Merge pull request from JulianGro/pr/drop-wallet
Drop all dependencies on marketplace and wallet
2023-06-03 21:27:13 +02:00
514c63ed90 Fix prtotocol incompatilibility after removing wallet 2023-06-03 12:27:24 +02:00
e256599a15
Merge pull request from overte-org/feature/IME
Japanese language support (and other IME probably)
2023-05-30 12:53:24 +02:00
Heather Anderson
60b8d41c16 stripping wallet/marketplace out 2023-05-28 15:12:21 +02:00
0f3dc71128 Comment on future IME improvements 2023-05-28 12:39:51 +02:00
6192416dce V8 related cleanup 2023-05-27 22:06:57 +02:00
b3997bff54
Merge pull request from JulianGro/aarch64_node
Add Linux aarch64 node package
2023-05-27 18:49:50 +02:00
f783a80f34 Temporary IME position for QML GL widgets 2023-05-27 16:40:48 +02:00
db15ed2f13 Fixed contexts for V8 callbacks 2023-05-27 13:32:02 +02:00
17dc2decf6 Initial IME support 2023-05-27 00:08:24 +02:00
b79d31fd6c Include QQueue in ScriptEngineV8.h 2023-05-22 20:41:54 +02:00
ab21945a54 Fixed crashes that happened when clearing cache 2023-05-22 00:15:54 +02:00
f72e8948b0 Fixed entity script whitelist and a bug in makeError 2023-05-19 00:17:41 +02:00
8de1331fa5 V8 related cleanup 2023-05-19 00:17:41 +02:00
fe9babf02d Scripting-related cleanup 2023-05-19 00:17:41 +02:00
ba0e705b5a Fixed Script.resolvePath issue in modules 2023-05-19 00:17:41 +02:00
4107f40c7c Fixed XMLHttpRequest crash 2023-05-19 00:17:41 +02:00
48a3368b69 Minor fixes and XMLHTTPRequest debugging 2023-05-19 00:17:41 +02:00
d74089d7d8 Fixed parabola pointers, code cleanup 2023-05-19 00:17:41 +02:00
f79ec0f293 Work on script engine exceptions, cleanup 2023-05-19 00:17:41 +02:00
833bffc285 Added makeError and script value prototype getter 2023-05-19 00:17:41 +02:00
Dale Glass
13e22d4931 Fix override warnings 2023-05-19 00:17:41 +02:00
3c80411bf1 V8-related cleanup 2023-05-19 00:17:41 +02:00
30f4608c25 Removed script engine lambda 2023-05-19 00:17:41 +02:00
5050cc9a4e Code cleanup 2023-05-19 00:17:41 +02:00
a7229e9249 Scripting API cleanup and type conversion fixes 2023-05-19 00:17:41 +02:00
82e6cb9391 Added missing metatype registration 2023-05-19 00:17:41 +02:00
782c84b873 V8 memory leak fix and optimizations 2023-05-19 00:17:41 +02:00
eabc727bb7 V8 optimizations 2023-05-19 00:17:41 +02:00
a57c7a5e5b V8 heap object statistics 2023-05-19 00:17:41 +02:00
6466d39c05 V8 memory leak fixes 2023-05-19 00:17:41 +02:00
cd11066aa5 Added script value and script value proxy counters 2023-05-19 00:17:41 +02:00
42704ea4bc Work on fixing V8 memory leaks, memory leak test 2023-05-19 00:17:40 +02:00
56c3bad002 V8 memory usage statistics 2023-05-19 00:17:40 +02:00
fdd8cb290c Optimized getEntityProperties 2023-05-19 00:17:40 +02:00
c18fd9092e Fixed assert on ScriptValueV8Wrapper::construct 2023-05-19 00:17:40 +02:00
8b9cd84df7 vec3ToScriptValue optimizations 2023-05-19 00:17:40 +02:00
43939290b2 Revert "vec3FromScriptValue replacement attempt"
This reverts commit 584e4be0082c07c62b6ad1f17d4258878ce3223c.
2023-05-19 00:17:40 +02:00
dba0925a1c vec3FromScriptValue replacement attempt 2023-05-19 00:17:40 +02:00
3a207507bf Optimized EntityItemProperties::copyFromScriptValue 2023-05-19 00:17:40 +02:00
ec3e87da5c Added ScriptValue::getPropertyNames 2023-05-19 00:17:40 +02:00
e114d86871 Optimization of conversion of vec3 to/from script value 2023-05-19 00:17:40 +02:00
4062d80445 Added hash maps for faster property search on V8 callbacks 2023-05-19 00:17:40 +02:00
2a2cf3898b Work on porting laser pointers to local entities, removal of LaserPointer JS API 2023-05-19 00:17:40 +02:00
589ca2a399 Converted overlay getProperty calls to Entities.getEntityProperties 2023-05-19 00:17:40 +02:00
6c1fd88fb1 Fixed crash with asset scripting crash 2023-05-19 00:17:40 +02:00
e14ae4a96a Partial fix for asset scripting crash 2023-05-19 00:17:40 +02:00
e75c671a70 Fixed crash with Cameras app 2023-05-19 00:17:39 +02:00
8a2c055adc Removed 3D overlays functionality entirely 2023-05-19 00:17:39 +02:00
b52fe9a7d5 Fixed crash on starting in VR mode with V8 2023-05-19 00:17:39 +02:00
ceeac40ea8 Re-enabled WebRTC 2023-05-19 00:17:39 +02:00
819ebc9e49 Fixed events on V8 2023-05-19 00:17:39 +02:00
de75aa1794 Uncommented code that got commented out by accident 2023-05-19 00:17:39 +02:00
f241ede316 Initial fixes for building on Windows 2023-05-19 00:17:39 +02:00
Dale Glass
4d8a20aed7 Use logging categories everywhere in the base scripting engine code 2023-05-19 00:17:39 +02:00
Dale Glass
0fc2ab870a Add V8 logging category
Rename logging category to overte
Make all V8 code use logging categories
2023-05-19 00:17:39 +02:00
41760ee3ac Changed variable in ScriptObjectV8Proxy because it has to be stored as aligned pointer 2023-05-19 00:17:39 +02:00
Dale Glass
6ac2596293 Capture exceptions that happen in signals in ScriptEngine, add test 2023-05-19 00:17:39 +02:00
Dale Glass
acd19f7c40 Review fix: add flag to choose whether to abort script on exception 2023-05-19 00:17:39 +02:00
Dale Glass
aec756b0b9 Register metatypes, fixes warnings
Remove executeOnScriptThread from Script JS API -- seems unused, is marked deprecated, and for some reason
registration didn't resolve the warnings.
2023-05-19 00:17:39 +02:00
Dale Glass
8f82750f2a Initial implementation of raiseException and test 2023-05-19 00:17:39 +02:00
Dale Glass
cd02b22bd7 Don't crash in uncaughtException() if there isn't an exception 2023-05-19 00:17:39 +02:00
Dale Glass
cb0c62024d Throw the right exception class, and add the thrown value to it 2023-05-19 00:17:39 +02:00
Dale Glass
bb74c2ecc9 Allow accessing engine exceptions from ScriptManager 2023-05-19 00:17:39 +02:00
Dale Glass
de02da5fda Register more metatypes -- more work needed 2023-05-19 00:17:39 +02:00
Dale Glass
b1e2a94d71 Deduplicate QDebug output 2023-05-19 00:17:39 +02:00
Dale Glass
8d6270392d Make ScriptEngine a QObject instead of the derived class
Fix signal -- only needs to be in ScriptEngine
2023-05-19 00:17:39 +02:00
Dale Glass
67e7a7375a Further exception work on V8
* Get rid of maybeEmitUncaughtException
* Mostly get rid of makeError
* Introduce exception hierarchy, change exceptions to shared_ptr
* Simplify exception throwing code
2023-05-19 00:17:39 +02:00
Dale Glass
c0e62c5cc2 Initial exception handling
Make exception handling use the new ScriptException class.
Add exception signal
Throw exceptions in script evaluation
Remove references to ScriptManager from ScriptEngine
2023-05-19 00:17:39 +02:00
2bcd1106d1 Fixed ScriptObjectV8Proxy access after delete 2023-05-19 00:17:39 +02:00
27554da415 Addeed V8 getters/setters to ScriptVariantV8Proxy, fixed animation scripting 2023-05-19 00:17:39 +02:00
4e91765a3f Reverted change that broke AnimationObjec scripting interface 2023-05-19 00:17:38 +02:00
3be4fdc33d Fixed deadlock in updating animation state handlers 2023-05-19 00:17:38 +02:00
cae1e1195d V8 QObject pointer handling changes 2023-05-19 00:17:38 +02:00
5e5003ff03 Fixed crash on standing up from sit script 2023-05-19 00:17:38 +02:00
8e718262bd Fixed object containing UniquePersistent 2023-05-19 00:17:38 +02:00
acc658ee80 Fixed deadlock in Create App 2023-05-19 00:17:38 +02:00
ae7d229d0e Fix copyright headers 2023-05-19 00:17:38 +02:00
Dale Glass
02a0e33e95 Add NETWORKLESS_TEST_SCRIPT type to NetworkManager.
This is a slightly hacky way to make ScriptManager work without any
networking, and minimize the number of dependencies needed to run
a test.
2023-05-19 00:17:38 +02:00
12f239b18c Fix V8 memory leak and persistend handle problems 2023-05-19 00:17:38 +02:00
Dale Glass
84fd17cb66 Review fixes 2023-05-19 00:17:38 +02:00
Dale Glass
0f46fb9b4d Add a ScriptManagerScriptingInterface.cpp, will be useful later. 2023-05-19 00:17:38 +02:00
Dale Glass
a13723990e More Doxygen for ScriptEngine 2023-05-19 00:17:38 +02:00
Dale Glass
36cba56325 A bit more documentation 2023-05-19 00:17:38 +02:00
Dale Glass
4d70155e59 Create ScriptManagerScriptingInterface to move off the scripting API into its own class
Add a lot of documentation
2023-05-19 00:17:38 +02:00
Dale Glass
e35aa8046d Add more Doxygen docs
Doesn't work right in ScriptManager, looks like a conflict with JSDoc
2023-05-19 00:17:38 +02:00
887ebd5365 Removed deadlock in signal proxy disconnect again 2023-05-19 00:17:38 +02:00
d25e5491eb Fixed V8 crash with Create App 2023-05-19 00:17:38 +02:00
b554fc70ea Added script timers performance debugging 2023-05-19 00:17:38 +02:00
faf9b75487 Added signal time and call count debugging 2023-05-19 00:17:38 +02:00
1ad1aee11f Minor scripting-related fixes 2023-05-19 00:17:38 +02:00
5cf32a968c V8 fixes 2023-05-19 00:17:37 +02:00
f65e72c8f2 Listing objects and their properties on API debugger now works 2023-05-19 00:17:37 +02:00
37cc62d082 Fix problem with sit script 2023-05-19 00:17:37 +02:00
5809576577 Fixed Create App 2023-05-19 00:17:37 +02:00
c3417b807c Increased thread safety in V8 2023-05-19 00:17:37 +02:00
57a2dccc6a V8 bugfixes 2023-05-19 00:17:37 +02:00
89f29ce5ca Safer demarshal functions with no void pointers 2023-05-19 00:17:37 +02:00
acbec55b70 Further work on V8 2023-05-19 00:17:37 +02:00
b786ffccd5 Added more debug info to crash with signals 2023-05-19 00:17:37 +02:00
3e692a60b4 V8 fixes 2023-05-19 00:17:37 +02:00
3a5b927979 Functions connected to signals now use context that was active during connecting 2023-05-19 00:17:37 +02:00
044cd506a6 Script engine thread safety improvements 2023-05-19 00:17:37 +02:00
6bd8a8d503 V8 threading safetyu improvements 2023-05-19 00:17:37 +02:00
5099e68b56 V8 fixes, including calls and signals 2023-05-19 00:17:37 +02:00
a7b1fdcae6 Fixed convertJSObjectToVariant 2023-05-19 00:17:37 +02:00
539c2812c3 Fixed Window.location 2023-05-19 00:17:37 +02:00
66a87def43 Fixed script array to QVariant conversion 2023-05-19 00:17:37 +02:00
cb4dc4c7e8 Fixed location JS API 2023-05-19 00:17:37 +02:00
4f4c8931a9 V8 fixes, incl. enum API objects fix 2023-05-19 00:17:37 +02:00
4cfde4bcc1 Switched off animation handlers for now, because they deadlocked with V8 2023-05-19 00:17:37 +02:00
de91769e2f Fixed some V8 crashes 2023-05-19 00:17:37 +02:00
3f1a7605a5 Fixed build warnings 2023-05-19 00:17:37 +02:00
1550049b0c Fixed script value iterator and connect functionality 2023-05-19 00:17:37 +02:00
e786fd4864 Fixed Script.require 2023-05-19 00:17:37 +02:00
386242d9c7 Fixed adding properties to methods 2023-05-19 00:17:37 +02:00
076349a488 Re-enabled script module cache creation 2023-05-19 00:17:37 +02:00
Dale Glass
2960cc0284 Add missing override 2023-05-19 00:17:36 +02:00
Dale Glass
ac7ebe2888 Add hasProperty for checking whether a property exists 2023-05-19 00:17:36 +02:00
5f2c13da52 Added debug function to list object members 2023-05-19 00:17:36 +02:00
ed968e1ebd Further work on evaluateInClosure 2023-05-19 00:17:36 +02:00
70d4a43009 Fixed evaluateInClosure and other V8 stuff 2023-05-19 00:17:36 +02:00
cc20ced1ca Some V8 debuging messages 2023-05-19 00:17:36 +02:00
da458ccef9 Fixed getting current script name 2023-05-19 00:17:36 +02:00
6301d23c48 Fixed object deletion event, temporarily disabled watchdog log commands to make reading logs easier 2023-05-19 00:17:36 +02:00
0d454eb6e8 V8 fixes, including making debug console work 2023-05-19 00:17:36 +02:00
97137c7b13 More fixes for V8 2023-05-19 00:17:36 +02:00
2f9f78fb87 Fixed setting properties of ScriptObjectV8Proxy 2023-05-19 00:17:36 +02:00
0b8958204f Fixed vector math, added simple test for it 2023-05-19 00:17:36 +02:00
e680b5dc72 Fixed method calls 2023-05-19 00:17:36 +02:00
Dale Glass
640cee0360 Reduce V8 stack size to 256K. Otherwise the interface can be crashed with a stack overflow in a script. 2023-05-19 00:17:36 +02:00
be3d1713a8 Fixed C++ function calls for V8 2023-05-19 00:17:36 +02:00
abfcbb7588 Added V8 Locker for moving script engine to a new thread 2023-05-19 00:17:36 +02:00
827ddf5958 Added simple compile test function 2023-05-19 00:17:36 +02:00
Dale Glass
1a4eb3ac62 Keep return script value 2023-05-19 00:17:36 +02:00
Dale Glass
e5217c44f0 Build fixes 2023-05-19 00:17:36 +02:00
58a221541f Script engine new function fixes 2023-05-19 00:17:36 +02:00
a4c6930a50 Added context scopes 2023-05-19 00:17:36 +02:00
2b06c09318 Add V8 handle scopes 2023-05-19 00:17:36 +02:00
b4d21c38c3 Updated script isolation files 2023-05-19 00:17:36 +02:00
7e9ad39b32 Initial V8 support, not working yet 2023-05-19 00:17:36 +02:00
df507a741b Initial cmake files for V8 2023-05-19 00:17:36 +02:00
74a3c514d2 Replaced withReadLock with resultWithReadLock in ScriptSignalQtProxy::findConnection 2023-05-19 00:17:35 +02:00
586bd7ffca Fixes for code review 2023-05-19 00:17:35 +02:00
e9bfdd49e8 Fix build error on Windows 2023-05-19 00:17:35 +02:00
979e9ff113 Added scoring system for determining overloaded function to call 2023-05-19 00:17:35 +02:00
8304a0c500 Fixed clearTimeout behavior when called with expired timer 2023-05-19 00:17:35 +02:00
e9984c72f0 Added QTimer* script data type and some nullptr checks 2023-05-19 00:17:35 +02:00
80e5f2430f Fixed simplifiedNametag 2023-05-19 00:17:35 +02:00
716a02495e Fix build error on MacOS 2023-05-19 00:17:35 +02:00
7a84f7ee4d Fix for crash on deleting caches 2023-05-19 00:17:35 +02:00
b00c1ae91b Fixes to scripting-related warnings (lambdas) 2023-05-19 00:17:35 +02:00
6f32173025 Fixes to most scripting-related warnings 2023-05-19 00:17:35 +02:00
a14c6444f1 Forgot to add ResourceScriptingInterface.cpp before 2023-05-19 00:17:35 +02:00
5a9b0ccfb0 Replaced regular mutex with a read write one to improve performance 2023-05-19 00:17:35 +02:00
ad57a5e6fd Fixed enums in scripting engine 2023-05-19 00:17:35 +02:00
0a3ec92031 Type registeration fixes for scripting engine 2023-05-19 00:17:35 +02:00
50a6a63cc3 Fixes to problems with meta-types 2023-05-19 00:17:35 +02:00
33c8607e15 Proper handling of enum classes for scripting 2023-05-19 00:17:35 +02:00
95434a26a8 Attempt to debug broken enums in scripting 2023-05-19 00:17:35 +02:00
ece2b8096b Fixed list item removal during access bug 2023-05-19 00:17:35 +02:00
4d61d4fe67 Disallowed incorrect Vec3 to float cast in script engine 2023-05-19 00:17:35 +02:00
c78ec80539 Fixed build error after rebase 2023-05-19 00:17:35 +02:00
Heather Anderson
9c6ffc3fc2 fixed missing #include required by new template blockingInvokeMethod functions 2023-05-19 00:17:35 +02:00
Heather Anderson
457728cee1 dropped KALILA global script attributes 2023-05-19 00:17:35 +02:00
Heather Anderson
9b87072a49 dropped unused meta declaration 2023-05-19 00:17:35 +02:00
Heather Anderson
306f3d07c9 remove requirement that ScriptManager::evaluate be meta-invokable 2023-05-19 00:17:35 +02:00
Heather Anderson
67260b92bd fix typo preventing methods from being discovered on scriptable objects when we're ignoring superclasses 2023-05-19 00:17:35 +02:00
Heather Anderson
a822110a62 identify the largest number of parameters any of our method overrides accept and discard script parameters beyond that count 2023-05-19 00:17:35 +02:00
Heather Anderson
0bce0668f7 minor tweaks in response to code review (very belated) and reported issues
- explicitly registering some enums with Qt at runtime (needed if they're function return values)
- replaced references to engine() with local variables if they already existed
2023-05-19 00:17:34 +02:00
Heather Anderson
55b5a2cd03 Continued tightening and testing of the scripting engine "glue" logic
- QObject wrappers will now be reused when asked to wrap the same QObject multiple times
- improved error reporting when we can't form a native call from script
- dropped support for having the existing QtScript logic handle Qt object transformations
- assuming that our code will handle all calls into native objects
- changing timer functions to use CTimer* publicly rather than casted QObject*
2023-05-19 00:17:34 +02:00
Heather Anderson
742fa225f2 not sure what would have broken this but... adding required windows dependencies for MIDI to operate 2023-05-19 00:17:34 +02:00
Heather Anderson
bc6eaf25dc first pass creating Qt <-> QtScript interface 2023-05-19 00:17:34 +02:00
Heather Anderson
bd04554150 changes from code review suggestions 2023-05-19 00:17:34 +02:00
Heather Anderson
70fbe76341 convert script engine variables from QSharedPointer to std::shared_ptr 2023-05-19 00:17:34 +02:00
Heather Anderson
82535cab90 more shifting around of ScriptEngineQtScript declaration 2023-05-19 00:17:34 +02:00
Heather Anderson
c9bf36e57b more simplification of ScriptEngineQtScript declarations 2023-05-19 00:17:34 +02:00
Heather Anderson
bd4a035ffb significant cleanup of ScriptEngineQtScript (which isn't exposed to the scripting engine and shouldn't be @jsdoc'ed) 2023-05-19 00:17:34 +02:00
Heather Anderson
ef16b83362 patch review and removal of unnecessary differences 2023-05-19 00:17:34 +02:00
Heather Anderson
86348b315e finished coding and smoketested ScriptContextQtAgent (required to get Scriptable functional for its users) 2023-05-19 00:17:34 +02:00
Heather Anderson
d868143da0 hopefully resolves the last reported link error on macos 2023-05-19 00:17:34 +02:00
Heather Anderson
fb93e39f66 more code review using github compiler runs (hopefully the macos build will link with this) 2023-05-19 00:17:34 +02:00
Heather Anderson
227e899189 more code review using github compiler runs 2023-05-19 00:17:34 +02:00
Heather Anderson
16c2d76efa more debugging using github compiler runs 2023-05-19 00:17:34 +02:00
Heather Anderson
23edfa3747 more changes in response to build log on other compilers 2023-05-19 00:17:34 +02:00
Heather Anderson
23776abce3 changes in response to build log on other compilers 2023-05-19 00:17:34 +02:00
Heather Anderson
8581022a53 rework ScriptValue to act like a stack variable rather than a pointer 2023-05-19 00:17:34 +02:00
Heather Anderson
f209c5124d early smoketesting 2023-05-19 00:17:34 +02:00
Heather Anderson
5f2b2c90a2 added custom type support 2023-05-19 00:17:34 +02:00
Heather Anderson
45ef458af4 dropping dependencies from networking to script-engine by moving EntityScriptClient and LocationScriptingInterface 2023-05-19 00:17:33 +02:00
Heather Anderson
7964f06990 moving EntityItemID from script-engine to shared 2023-05-19 00:17:33 +02:00
Heather Anderson
665ea521e8 shifting classes around and adding static initializers to resolve dependencies on scripting-engine (and drop dependencies from scripting-engine) 2023-05-19 00:17:33 +02:00
Heather Anderson
1f4f458942 adding basic script-engine documentation 2023-05-19 00:17:33 +02:00
Heather Anderson
2dd9d784a9 working to clean up the QtScript implementation and move towards completion of the proxy interface 2023-05-19 00:17:33 +02:00
Heather Anderson
1e018dbc64 isolate calls to the QtScript libraries to an interface we control 2023-05-19 00:17:33 +02:00
Heather Anderson
713b29ee41 ensure all #include's to QtScript are labeled as such (easier to find) 2023-05-19 00:17:33 +02:00
Dale Glass
7d08df3f82 Fix build on Fedora.
Fix portfile license handling.
Fix tbb choking on Qt's 'emit' macro.
2023-05-16 18:56:33 +02:00
Dale Glass
0a2d733c39 Fix unique_ptr new[]/delete mismatch
This is likely a crash fix
2023-05-05 23:59:09 +02:00
Dale Glass
03a20b9b94 Fix the build on GCC 13.0
This adds #include <cstdlib> in a couple places. It also fixes a huge
amount of warnings due to "concept" becoming a keyword in C++20
2023-04-27 00:42:25 +02:00
90efffa2fb
Merge pull request from daleglass-overte/allow-fullscreen-display-selection
Allow fullscreen display selection
2023-04-23 21:07:40 +02:00
dcddf08d24
Merge pull request from JulianGro/increase_log_size
Increase max log size
2023-04-15 00:35:24 +02:00
f5f2134b92
Merge pull request from JulianGro/executable
Remove executable permission from a bunch of files
2023-03-23 02:41:14 +01:00
8b973bdfa3 Remove executable permission from a bunch of files 2023-03-14 00:02:33 +01:00
40cdeec4d9 Fix "Invalid token at start of a preprocessor expression" 2023-03-12 16:36:14 +01:00
88a0d6217e Throw warning if audio devices list is empty instead of debug message. 2023-03-12 16:35:55 +01:00
67a9b82236 Increase max log size from 512 KiB to 10 MiB.
Lower max amount of log files from 100 to 20.
2023-03-11 19:24:23 +01:00
56de0f8d56 Fix material colors for glTF
Co-authored-by: Julian Groß <julian.g@posteo.de>
2023-01-11 14:43:23 +01:00
Dale Glass
bd1fc19bac
Update libraries/ui/src/ScreenName.h
Co-authored-by: Julian Groß  <julian.g@posteo.de>
2023-01-07 20:49:36 +01:00
Dale Glass
8e7b99811e
Update libraries/ui/src/ScreenName.cpp
Co-authored-by: Julian Groß  <julian.g@posteo.de>
2023-01-07 20:49:30 +01:00
Dale Glass
1cf3756c84 Move screen naming to UI library, and improve naming 2023-01-07 19:35:52 +01:00
Dale Glass
de36c716c8 Try to make screen descriptions include more info 2023-01-06 20:35:57 +01:00
Dale Glass
8884988336 Add an option to choose which screen to use for full screen mode 2023-01-06 17:32:06 +01:00
f1d7421698 Workaround for Nvidia driver bug 2022-12-23 20:25:10 +01:00
Dale Glass
61fa164791
Merge pull request from JulianGro/fbx_blender
Implement initial Blender FBX metallic support
2022-12-10 21:10:02 +01:00
Dale Glass
26fd8839a6
Merge pull request from daleglass-overte/fix-uninitialized-blendtime
Fix "may be used uninitialized" warning for blendtime
2022-12-10 21:09:47 +01:00
20e673e364 Fixed weight comparison 2022-12-10 19:51:11 +01:00
088da60116 Added epsilon for dimensions of sphere in SphereCollapse 2022-12-10 17:07:31 +01:00
a5d12fc97d Made ExtractionMode::SphereCollapse fail more gracefully in case of incorrect data 2022-12-10 14:33:34 +01:00
Dale Glass
81b2af88ae Clear _meshStates after warning, not before.
Fixes 
2022-12-03 00:51:06 +01:00
Dale Glass
b5c5c9ad3e Fix "may be used uninitialized" warning for blendtime 2022-12-03 00:33:22 +01:00
Dale Glass
9a80e696ed Fix warnings generated when building tests 2022-11-27 19:51:58 +01:00
Dale Glass
dd0439e40d Make the GLTF serializer count all other errors it detects 2022-11-26 14:49:54 +01:00
Dale Glass
cd132246e6 Fix crash with models from ReadyPlayerMe by adding extra validation.
This also adds test code for the GLTF loader.
2022-11-26 14:36:37 +01:00
Dale Glass
9a828077bd Add Overte e.V. copyright 2022-11-01 20:49:00 +01:00
Dale Glass
7d3b45753c Comment moved to header 2022-11-01 17:16:14 +01:00
Dale Glass
20548b7b24 Fix mysterious UUID issue
Turned out to be a remainant of previous code that stopped working
correctly due to the changes
2022-11-01 17:15:50 +01:00
Dale Glass
24d4f87341 Improve logging system termination. Send a signal and wait until done. 2022-11-01 17:15:16 +01:00
Dale Glass
d722650806 Don't forward a change to QSetting if the setting didn't change
This considerably reduces the number of disk writes
2022-11-01 17:14:10 +01:00
Dale Glass
f7ab2be173 Unimportant changes
Signals were made non-references for debugging, but that shouldn't
actually matter since Qt copies the parameters anyway.
2022-11-01 17:13:30 +01:00
Dale Glass
51e1df5e4c Improve logging, v3 2022-11-01 17:08:08 +01:00
Dale Glass
06d7b89455 Improve logging, forgotten commit 2022-11-01 17:07:02 +01:00
Dale Glass
b540c426c1 Use logging categories 2022-11-01 17:06:33 +01:00
Dale Glass
0e50b51a63 Improve documentation 2022-11-01 17:01:16 +01:00
Dale Glass
cdc15d7821 Improve settings system, by moving all writes to a thread
This should complete what was started in the HiFi days but didn't quite succeed.

Setting::Manager is now thread safe, and delegates all settings writes to a thread
that nothing waits on, which should ensure that settings don't degrade performance
even on slow storage devices.

Functions that weren't thread safe were removed from Setting::Manager, and it was
reduced to a key/value store.

Functions that modify state like beginGroup were implemented in the Settings class
instead, which should be created only in the context where it's needed. It will
forward all changes to the manager.

A few QSettings functions were left unimplemented because they're not used in
the code. They may be implemented later if there's a need.
2022-10-23 23:25:42 +02:00
Dale Glass
e960829112 Fix test for the master branch 2022-10-23 16:02:37 +02:00
Dale Glass
0896807ca5 Slight cleanup of tests, use friend class to avoid exposing test functions 2022-10-23 13:24:56 +02:00
Dale Glass
b5d9a4dbba Make test class a friend 2022-10-23 13:24:56 +02:00
Dale Glass
334317b175 Test suite for settings system
Proof of concept still. Adds a test-specific function in Setting::Manager.
2022-10-23 13:24:56 +02:00
a0c98d1c72 Implement initial Blender FBX metallic support 2022-10-14 18:48:31 +02:00
88046506c3 Renamed Metaverse Server to Directory Server/Services 2022-09-08 22:19:55 +02:00
614c6927b6 Replace non-existent HiFi content S3 URLs with placeholders 2022-09-08 22:19:54 +02:00
bea8baeead Use redirected documentation URL 2022-09-08 22:19:54 +02:00
7f0f1885ae Do not provide URLs that don't exist (anywhere). 2022-09-08 22:19:54 +02:00
34612ba92c Update OVERTE_CONTENT_CDN_URL 2022-09-08 22:19:54 +02:00
90b0b1eb45 Change identifier to org.overte 2022-09-08 22:18:53 +02:00
d2a768c2f0 Renamed environment variables 2022-09-08 22:18:50 +02:00
9b6d202a21 Rebranding and fixing URLs 2022-09-08 22:10:13 +02:00
5b12f42dd4 Fix voxel state machine 2022-09-02 18:39:39 +02:00
538a80c5ab Fix string to float conversion for systems using anything other than a period as decimal separator 2022-08-21 17:15:57 +02:00
89440e4a8e Fix apidocs example files. 2022-08-09 14:30:01 +02:00
e60dc098da
Update libraries/entities-renderer/src/RenderablePolyVoxEntityItem.cpp
Co-authored-by: Julian Groß  <julian.g@posteo.de>
2022-07-30 12:02:55 +02:00
42cd0ddfca
Update libraries/entities-renderer/src/RenderablePolyVoxEntityItem.cpp
Co-authored-by: Julian Groß  <julian.g@posteo.de>
2022-07-30 12:02:51 +02:00