summaryrefslogtreecommitdiffstats
path: root/src/runtime/Qt3DSQmlEngine.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Fix data inputs with delayed loadingv2.7.0-rc2Jere Tuliniemi2020-05-081-0/+13
| | | | | | | | | Initialize data inputs and outputs every time a presentation is loaded. Task-number: QT3DS-4105 Change-Id: If2e9a6d95cc40109cb48f4d4d8b5dc88f963fb74 Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io> Reviewed-by: Antti Määttä <antti.maatta@qt.io>
* Make sure GoToTime works also when triggered at simultaneous activationJanne Kangas2020-03-251-0/+2
| | | | | | | | | | | Queue goto time command and skip rollbacking the newly activated slide in the case we receive both goto time and goto slide commands. Instead, go to specified time after the slide has been reaactivated (entered). Task-id: QT3DS-4001 Change-Id: I2dd8d6ec3a42dcd65f40adb7920b34183c50b062 Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io> Reviewed-by: Antti Määttä <antti.maatta@qt.io>
* Remove evaluator type datainput dead codeJanne Kangas2020-02-211-161/+0
| | | | | | | Task-id: QT3DS-3912 Change-Id: I76415b68bbe145bcc308263228358f69cac89c3c Reviewed-by: Antti Määttä <antti.maatta@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Add size and format to textureid queryJanne Kangas2020-02-111-0/+34
| | | | | | | | | | | Returns texture size and format for layer and material textures. Add corresponding test. Task-id: QT3DS-4005 Change-Id: I773715712dc78cf511f6c4d0095f5491834df311 Reviewed-by: Antti Määttä <antti.maatta@qt.io> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Merge branch '2.6'Antti Kokko2020-02-101-1/+1
|\ | | | | | | Change-Id: If10420b5b0ab59abb5238e0dddf903b98d8ccbd3
| * Fix crash in autotestv2.6.02.6Antti Määttä2020-01-301-1/+1
| | | | | | | | | | | | Task-number: QT3DS-4053 Change-Id: Ie0723839c5c56f6978ec7a4a1258acf311d89d57 Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* | Fix delayed loading data input crashJere Tuliniemi2020-02-051-1/+1
|/ | | | | | Task-number: QT3DS-4056 Change-Id: I4513214fa20e2c4b0e7a137fa97c648a644e0757 Reviewed-by: Antti Määttä <antti.maatta@qt.io>
* Optimize element attribute name hashingAntti Määttä2020-01-221-72/+68
| | | | | | | Task-number: QT3DS-4041 Change-Id: I64ccd129b12053b057e5e992d89a05a2bc6cd33d Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Fix setting value for uninitialized attributesAntti Määttä2020-01-131-0/+1
| | | | | | | Task-number: QT3DS-4033 Change-Id: Idd1af454c066a359e85c384124e3f8fe8466f4f5 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Allow setting timeline value when element is about to activateAntti Määttä2019-11-201-1/+1
| | | | | | | | Task-number: QT3DS-4001 Change-Id: I9fbb1367999d2a3e3bea6520f9e59a820ef50c28 Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io> Reviewed-by: Jere Tuliniemi <jere.tuliniemi@qt.io> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Fix crash when retrieving a non-existent texture idJere Tuliniemi2019-11-201-2/+4
| | | | | | Task-number: QT3DS-4004 Change-Id: I2ce1af6e07ab18a835e21de5e92dc2ba6509229d Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Fix crash when queueing attributes with delayed loadingJere Tuliniemi2019-11-041-8/+10
| | | | | | | Task-number: QT3DS-3996 Change-Id: I24b96b4806cb24a92b199562d3f033ead47696d1 Reviewed-by: Antti Määttä <antti.maatta@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Provide texture ids through the C++ APIJere Tuliniemi2019-09-301-0/+23
| | | | | | | | | | | | | | Image, subpresentation and layer texture ids are now provided by the presentation via an element path. The cached layer texture id is also stabilized. Instead recreating it every frame, the last effect is just rendered to the premade texture. For each intermediate effect, a new texture is still created. Task-number: QT3DS-3959 Change-Id: I2ad2b81be9ae61373a0bfd963501823f012e9fcc Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Make visibility setting for elements in master slide persistentJanne Kangas2019-09-111-1/+12
| | | | | | | | | | | | | | Make datainput-driven visibility setting persistent over slide changes, for elements that are on master slide. This prevents slide initial value from overriding the user set visibility. Override takes place at first DI-driven visibility change. Change-Id: I799872ebd9834df9e74dd1e5e53a59c57e02255f Task-id: QT3DS-3925 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io> Reviewed-by: Antti Määttä <antti.maatta@qt.io> Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Fix component activation resetting user inputsJere Tuliniemi2019-08-211-12/+31
| | | | | | | | | | | | | | | | | | QT3DS-3778 is fixed by not rollbacking and executing the slide again when activated after deactivation. Thus, the component continues from the previous state. QT3DS-3767 is partly fixed by the same change, but attributes set prior to the first activation of the component are lost. This is fixed by storing the attribute changes and applying them after the first activation. Task-number: QT3DS-3778 Task-number: QT3DS-3767 Change-Id: I3917e66b56dd40a2804d6d74db38b2e21132187e Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io> Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Lazy load subpresentationsAntti Määttä2019-08-151-6/+6
| | | | | | | Task-number: QT3DS-3731 Change-Id: Ifa7bc5fd3452e0a89576f040c232468af04ed39d Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Make runtime initialization optionally not block QMLMiikka Heikkinen2019-08-131-16/+41
| | | | | | | | | | | | | | | | | Runtime initialization made non-blocking by offloading it to a worker thread. This causes various object thread affinities in runtime to be incorrect. This is relevant at least for the singaling, where having affinity to non-existing initialization thread would cause signals to not be delivered. To work around this issue, signal proxy thread affinitions and signal connections are set after initialization has completed. Similarly, behavior script QML engine initialization is deferred so that it can be done in correct thread. Task-number: QT3DS-3805 Change-Id: Ie8b64f4ecd93e4c422e369e625080652d67bde27 Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Add Vector4 support to QML engine data input initializationv2.4.0Jari Karppinen2019-06-251-0/+44
| | | | | | | | | Task-number: QT3DS-3704 Change-Id: I18ef605f6abbf92cfa6c00957e1616e755b0aef9 Reviewed-by: Antti Määttä <antti.maatta@qt.io> Reviewed-by: Pasi Keränen <pasi.keranen@qt.io> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Fix memory leak when adding data inputs to dynamic elementsv2.4.0-rcMiikka Heikkinen2019-06-241-36/+43
| | | | | | | | | | | | | Removed dataoutput matching for datainputs when dynamic elements were added as datainput targets. Since the dataoutputs are working only on the last added element/property for each dataoutput, allowing dynamic elements to change this would break any existing bindings. Task-number: QT3DS-3690 Change-Id: I63096f9f22f137dddb5133d986537f29906cc836 Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Jari Karppinen <jari.karppinen@qt.io> Reviewed-by: Janne Koskinen <janne.p.koskinen@qt.io>
* Fix eyeball using setAttributeAntti Määttä2019-06-171-2/+2
| | | | | | | | | | | Do not create dynamic property for the eyeball, but use the explicit set flag instead, which is also used by the slide system. Task-number: QT3DS-3655 Change-Id: I9390c8a9b8b20a55596b948d394a74aa66da98c6 Reviewed-by: Jari Karppinen <jari.karppinen@qt.io> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io> Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
* Remove reloadable texture callback when deleting materialMiikka Heikkinen2019-06-131-0/+4
| | | | | | | | | | | | | | | Callbacks would accumulate over time, leading to a memory leak and probably inefficiency as well, as unnecessary callbacks would be called. Task-number: QT3DS-3632 Change-Id: Ide6854e50df5eb9d4dfb9b61424f2922d99b85bf Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Jari Karppinen <jari.karppinen@qt.io> Reviewed-by: Pasi Keränen <pasi.keranen@qt.io>
* Remove datainput control bindings from map on deleteElementJanne Kangas2019-06-141-0/+29
| | | | | | | | | | | Update internal datainput control map when dynamically created elements are deleted. This avoids leaving invalid entries to performance-critical map lookups. Also fix typo in test code. Change-Id: I2b6490bf6de607d303fe0f94496b5b0cfff4c463 Task-id: QT3DS-3635 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Recycle autogenerated ids when creating new elementsMiikka Heikkinen2019-06-111-13/+56
| | | | | | | | | | | This will significantly reduce the stringtable bloat when creating and deleting elements. Task-number: QT3DS-3637 Change-Id: Iadca2c186ec6c144f528705669fc998b1cef669b Reviewed-by: Janne Kangas <janne.kangas@qt.io> Reviewed-by: Antti Määttä <antti.maatta@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Long live the slayer!Pasi Keränen2019-06-071-0/+2690
Initial commit of OpenGL Runtime to repository. Based on SHA1 61823aaccc6510699a54b34a2fe3f7523dab3b4e of qt3dstudio repository. Task-number: QT3DS-3600 Change-Id: Iaeb80237399f0e5656a19ebec9d1ab3a681d8832 Reviewed-by: Pasi Keränen <pasi.keranen@qt.io>