56ebe09998
V8 fixes, including making debug console work
2023-01-09 20:53:31 +01:00
2ec7ffeaff
More fixes for V8
2023-01-09 20:53:31 +01:00
037011b2fe
Fixed setting properties of ScriptObjectV8Proxy
2023-01-09 20:53:31 +01:00
4e4e695ca4
Fixed vector math, added simple test for it
2023-01-09 20:53:31 +01:00
a6de0f06d7
Fixed method calls
2023-01-09 20:53:31 +01:00
Dale Glass
d2effdf420
Reduce V8 stack size to 256K. Otherwise the interface can be crashed with a stack overflow in a script.
2023-01-09 20:53:31 +01:00
639e14fd94
Fixed C++ function calls for V8
2023-01-09 20:51:03 +01:00
bce869e456
Added V8 Locker for moving script engine to a new thread
2023-01-09 20:51:03 +01:00
4a18ca733b
Added simple compile test function
2023-01-09 20:51:03 +01:00
Dale Glass
473a412e36
Keep return script value
2023-01-09 20:51:03 +01:00
Dale Glass
58eb72325c
Build fixes
2023-01-09 20:51:03 +01:00
cb1044ed6a
Script engine new function fixes
2023-01-09 20:51:03 +01:00
bcac3dbe55
Added context scopes
2023-01-09 20:51:03 +01:00
281874e32f
Add V8 handle scopes
2023-01-09 20:51:03 +01:00
97459359de
Updated script isolation files
2023-01-09 20:51:03 +01:00
fcd63b9f35
Initial V8 support, not working yet
2023-01-09 20:51:02 +01:00
309dd30107
Initial cmake files for V8
2023-01-09 20:51:02 +01:00
199e179b11
Replaced withReadLock with resultWithReadLock in ScriptSignalQtProxy::findConnection
2023-01-09 20:51:02 +01:00
19e5b099fb
Fixes for code review
2023-01-09 20:51:02 +01:00
4a54a8025f
Fix build error on Windows
2023-01-09 20:51:02 +01:00
38e7b5a8d2
Added scoring system for determining overloaded function to call
2023-01-09 20:51:02 +01:00
a14a1d384f
Fixed clearTimeout behavior when called with expired timer
2023-01-09 20:51:02 +01:00
3f25799826
Added QTimer* script data type and some nullptr checks
2023-01-09 20:51:02 +01:00
aee6ac6b77
Fixed simplifiedNametag
2023-01-09 20:51:02 +01:00
9f3a79f597
Fix build error on MacOS
2023-01-09 20:51:02 +01:00
cd086b1ea5
Fix for crash on deleting caches
2023-01-09 20:51:02 +01:00
9276beae7e
Fixes to scripting-related warnings (lambdas)
2023-01-09 20:51:02 +01:00
1110aac9d9
Fixes to most scripting-related warnings
2023-01-09 20:51:02 +01:00
0e0c2695bf
Forgot to add ResourceScriptingInterface.cpp before
2023-01-09 20:51:02 +01:00
8ddfdacd2b
Replaced regular mutex with a read write one to improve performance
2023-01-09 20:51:02 +01:00
3405b14ece
Fixed enums in scripting engine
2023-01-09 20:51:02 +01:00
1f2042f826
Type registeration fixes for scripting engine
2023-01-09 20:51:02 +01:00
39fe4b619b
Fixes to problems with meta-types
2023-01-09 20:51:01 +01:00
d95aa44c5d
Proper handling of enum classes for scripting
2023-01-09 20:51:01 +01:00
4a9c64d3a7
Attempt to debug broken enums in scripting
2023-01-09 20:51:01 +01:00
454e26a91b
Fixed list item removal during access bug
2023-01-09 20:51:01 +01:00
bb13d1c028
Disallowed incorrect Vec3 to float cast in script engine
2023-01-09 20:51:01 +01:00
79f9ebf77e
Fixed build error after rebase
2023-01-09 20:51:01 +01:00
Heather Anderson
9d345b9434
fixed missing #include required by new template blockingInvokeMethod functions
2023-01-09 20:51:01 +01:00
Heather Anderson
03a97e5f36
dropped KALILA global script attributes
2023-01-09 20:51:01 +01:00
Heather Anderson
2becb4d662
dropped unused meta declaration
2023-01-09 20:51:01 +01:00
Heather Anderson
6d324ded2f
remove requirement that ScriptManager::evaluate be meta-invokable
2023-01-09 20:51:01 +01:00
Heather Anderson
99f828d623
fix typo preventing methods from being discovered on scriptable objects when we're ignoring superclasses
2023-01-09 20:51:01 +01:00
Heather Anderson
72517798d6
identify the largest number of parameters any of our method overrides accept and discard script parameters beyond that count
2023-01-09 20:51:01 +01:00
Heather Anderson
3a6638f839
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-01-09 20:51:01 +01:00
Heather Anderson
c5cb959713
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-01-09 20:51:01 +01:00
Heather Anderson
8020d87ba5
not sure what would have broken this but... adding required windows dependencies for MIDI to operate
2023-01-09 20:51:01 +01:00
Heather Anderson
f2f681e1a0
first pass creating Qt <-> QtScript interface
2023-01-09 20:51:01 +01:00
Heather Anderson
8ae9d485a1
changes from code review suggestions
2023-01-09 20:51:01 +01:00
Heather Anderson
da860c41bf
convert script engine variables from QSharedPointer to std::shared_ptr
2023-01-09 20:51:01 +01:00
Heather Anderson
d349ec3971
more shifting around of ScriptEngineQtScript declaration
2023-01-09 20:51:01 +01:00
Heather Anderson
37946493de
more simplification of ScriptEngineQtScript declarations
2023-01-09 20:51:01 +01:00
Heather Anderson
414ae02514
significant cleanup of ScriptEngineQtScript (which isn't exposed to the scripting engine and shouldn't be @jsdoc'ed)
2023-01-09 20:51:01 +01:00
Heather Anderson
06b0ebefac
patch review and removal of unnecessary differences
2023-01-09 20:51:00 +01:00
Heather Anderson
addcd08d1c
finished coding and smoketested ScriptContextQtAgent (required to get Scriptable functional for its users)
2023-01-09 20:51:00 +01:00
Heather Anderson
e86b7c0d74
hopefully resolves the last reported link error on macos
2023-01-09 20:51:00 +01:00
Heather Anderson
4d7c38cd7d
more code review using github compiler runs (hopefully the macos build will link with this)
2023-01-09 20:51:00 +01:00
Heather Anderson
fbbc0ffb19
more code review using github compiler runs
2023-01-09 20:51:00 +01:00
Heather Anderson
b5622cda90
more debugging using github compiler runs
2023-01-09 20:51:00 +01:00
Heather Anderson
43f0ff39cf
more changes in response to build log on other compilers
2023-01-09 20:51:00 +01:00
Heather Anderson
4554fb4b84
changes in response to build log on other compilers
2023-01-09 20:51:00 +01:00
Heather Anderson
d7cf4ab738
rework ScriptValue to act like a stack variable rather than a pointer
2023-01-09 20:50:57 +01:00
Heather Anderson
351ae373e9
early smoketesting
2023-01-09 20:49:28 +01:00
Heather Anderson
3d8a8273d5
added custom type support
2023-01-09 20:49:28 +01:00
Heather Anderson
84892c3e89
dropping dependencies from networking to script-engine by moving EntityScriptClient and LocationScriptingInterface
2023-01-09 20:49:27 +01:00
Heather Anderson
5181071a74
moving EntityItemID from script-engine to shared
2023-01-09 20:49:27 +01:00
Heather Anderson
3085f7b9bd
shifting classes around and adding static initializers to resolve dependencies on scripting-engine (and drop dependencies from scripting-engine)
2023-01-09 20:49:27 +01:00
Heather Anderson
060f29a0d4
adding basic script-engine documentation
2023-01-09 20:49:27 +01:00
Heather Anderson
79d339609f
working to clean up the QtScript implementation and move towards completion of the proxy interface
2023-01-09 20:49:27 +01:00
Heather Anderson
d06093ae16
isolate calls to the QtScript libraries to an interface we control
2023-01-09 20:49:15 +01:00
Heather Anderson
a66d3a4fcb
ensure all #include's to QtScript are labeled as such (easier to find)
2023-01-09 20:36:43 +01:00
f1d7421698
Workaround for Nvidia driver bug
2022-12-23 20:25:10 +01:00
Dale Glass
61fa164791
Merge pull request #221 from JulianGro/fbx_blender
...
Implement initial Blender FBX metallic support
2022-12-10 21:10:02 +01:00
Dale Glass
26fd8839a6
Merge pull request #269 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 #257
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