summaryrefslogtreecommitdiffstats
path: root/src/Runtime/Source/engine
Commit message (Collapse)AuthorAgeFilesLines
* Add methods to create/delete multiple elements/materials at onceMiikka Heikkinen2019-05-172-24/+29
| | | | | | | | | | Also modified the notification signals to notify multiple creations with a single signal. Task-number: QT3DS-3376 Change-Id: I75bc867601d3f7943733b451ddfad18fab9383ea Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Increment UIP versionMahmoud Badri2019-05-161-3/+0
| | | | | | | | | | | | - increment UIP version and show a warning if a UIP version is lower - remove 3 obsolete text shadow props - small update to checking for material container in the timeline - few cleanups Task-number: QT3DS-3366 Task-number: QT3DS-2903 Change-Id: Ib4d8c33e786001d0e5a18037a52303449630adf5 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Fix compiler error in Qt3DRuntimeView.cppAntti Määttä2019-05-161-4/+0
| | | | | | | | | Doesn't compile with latest 5.12 because the Q_OS_WINDOWS is not defined. Remove the include since it is not used. Change-Id: I9506bca4e9ae3ec140d4da878e8fafbf473a31d9 Reviewed-by: Kaj Grönholm <kaj.gronholm@qt.io> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Implement Q3DSSurfaceViewer::presentationReady in OpenGL RuntimeJanne Kangas2019-05-152-0/+4
| | | | | | | | | | | | | New signal fixes the issue where setAttribute calls triggered at presentationLoaded() were lost as the runtime overrode attribute values with initial values in UIP file. presentationReady signal is triggered when the initial property values are set, and setAttribute can be safely called to update properties. Task-id: QT3DS-3398 Change-Id: Id605ddeb92766da11e0280a276ffc5e36c57b931 Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Assume project fonts are in a subdirectory relative to project or presentationJari Karppinen2019-05-141-2/+4
| | | | | | | Task-number: QT3DS-3353 Change-Id: Iee9719c00b0da9d6e28b0baade9fd26b35f88d79 Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Add elementCreated signalMiikka Heikkinen2019-05-142-1/+4
| | | | | | | | | | Also unified elementCreated and materialCreated signals to include error string to indicate failure. Task-number: QT3DS-3418 Change-Id: I4b60b1e32594b2993a5a421ac1ce66d33b521a05 Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Add material creation to runtime C++ APIMiikka Heikkinen2019-05-142-0/+18
| | | | | | | | | | | | | | Materials can only be created into the material container, animatable materials are not supported. Elements using new created materials should not be created before Q3DSPresentation::materialCreated signal is received. Task-number: QT3DS-3377 Change-Id: I782f09094d5f7151d7e1dab28b76fbbfdfcb6066 Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Jari Karppinen <jari.karppinen@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Remove circular build dependencywip/qtifyJanne Kangas2019-05-092-5/+5
| | | | | | | | | Duplicate enum defined in studio3d module on runtime side to avoid including the entire class from studio3d. Task-id: QT3DS-3396 Change-Id: I193b34614a8bbf991f717f8302061298b56e451e Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Add deleteElement to C++ APIMiikka Heikkinen2019-05-073-4/+17
| | | | | | | | | Add possibility to delete elements that have been added with createElement. Task-number: QT3DS-3374 Change-Id: I701e565241d18294171cd63ef934083f627b89aa Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Add dynamic object creation to presentation C++ APIMiikka Heikkinen2019-05-073-13/+32
| | | | | | | | | | | | A new model element can be dynamically created into the scene. The slide and properties of the element can be specified at creation time. A material element is automatically created for each added model. The material is specified with a custom "material" property in the list of creation properties. Task-number: QT3DS-3209 Change-Id: I52b0e929023092110820405473a9399b67a305cd Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Add simple performance viewAntti Määttä2019-05-072-5/+25
| | | | | | | | | The F7 button in the viewer now shows the render statistics as well as the layer profiling timers. Task-number: QT3DS-3211 Change-Id: I9553b9c522a9d16efd53b17c1f10538294b2b834 Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Move CRenderString to foundation and rename to Qt3DSStringPasi Keränen2019-05-061-4/+6
| | | | | | | | | | | | | CRenderString is no longer just the runtimerenderer or renderer. It is aimed to replace all the various string types and then pave the way for moving to QString from unified string class base. Better place for this class is in the foundation. Task-number: QT3DS-3370 Change-Id: I50c25aadddd39fba48451544509894c3e7ac89fc Reviewed-by: Jari Karppinen <jari.karppinen@qt.io> Reviewed-by: Antti Määttä <antti.maatta@qt.io> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Convert CRenderString to be QString basedPasi Keränen2019-05-031-2/+3
| | | | | | | | | Replaces QString as the implementation class of CRenderString instead of std::basic_string Task-number: QT3DS-3370 Change-Id: Ie1b9068bfdbf0ce05659f1ae83fe9243acdf7eee Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Implement dynamic loading of slide resourcesAntti Määttä2019-05-035-88/+123
| | | | | | | | | | | | | | | Implements loading of textures and images during runtime instead of load time. - Images which are not part of any slide are loaded at load time - Master slide images are always loaded at load time - Images used in a slide are loaded when the slide is entered - Images are unloaded when slide is exited and any other slide does not use them Task-number: QT3DS-3208 Change-Id: I7a827a5e828908efd2b104fe25374c66958319d2 Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Remove CTegraApplication to reduce intermediary classesAntti Määttä2019-05-025-280/+88
| | | | | | | | Use the INDDView in the ViewerApp directly. Change-Id: If502dd51d4ea87fc96d892cb9255df42b06fa4f3 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io> Reviewed-by: Pasi Keränen <pasi.keranen@qt.io>
* Support alpha channel initial workMahmoud Badri2019-05-022-47/+77
| | | | | | | | | | | In this initial work, all (almost) color properties are converted into a new type (float4) to support an alpha channel. Alpha channel option is shown in the color dialog for Layer and Scene background properties only. The following is remaining: - Scene background alpha doesn't work in the editor (works in the viewer RT1) Task-number: QT3DS-3128 Change-Id: Ib5540ebc8e2ff68709473451e4a92bf66ddb8ad2 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Add customSignalEmittedAntti Määttä2019-04-302-0/+3
| | | | | | | Task-number: QT3DS-3215 Change-Id: If36cca0d864b8c2fa7fd6ec499ace678ecaa206a Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Remove unused codePasi Keränen2019-04-291-87/+2
| | | | | | | | | Remove stateapplication (Architect integration) code. Remove perflog code. Task-number: QT3DS-3331 Change-Id: I208cce7551b3d332fb7905ae7cd4151c883b3728 Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Fix crash in editor when using qml streamAntti Määttä2019-04-242-0/+11
| | | | | | | | | | | | | | | | | | | | The crash occurs due to stack overflow due to recursive subpresentation initialization in runtime codes. This happens because the qml subpresentation has the same id as the presentation filename, which is assigned to default initial id from the presentation filename. When the layer, which is using the qml subpresentation, is initialized in the runtime, it gets the uip presentation instead of the qml subpresentation. The same begins to happen recursively. Add the ability to change the initial presentation id from the surface viewer api, which is used to render the subpresentations in the editor so that it gets valid id instead of the id from filename. Task-number: QT3DS-3345 Change-Id: I45f3a8ce9b5dc030f120baa1a8aed6c284ea7e3c Reviewed-by: Jere Tuliniemi <jere.tuliniemi@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io> Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
* Implement datainput getter API for OpenGL runtimeJanne Kangas2019-04-162-6/+50
| | | | | | | | | Partially implements RT2 feature parity for datainput getters. (Min/max property is not exposed to QML side.) Task-id: QT3DS-3258 Change-Id: I9cce3e98289c3cac8d2c774bb53eb75f445b6e17 Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Add distance field rendering to OpenGL runtimeJere Tuliniemi2019-04-162-1/+11
| | | | | | | | | | | | | | The old text rendering remains in the background and is used to render clipped text, since that feature is not yet implemented for distance field fonts. Building the runtime with Qt version older than 5.12.2 also causes a fallback to the old text rendering. Depth pass rendering also needs to be redone in the future to avoid another full render pass. Task-number: QT3DS-3210 Change-Id: Ib7666c437d23ae25e1872682f010df3721476a14 Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Flatten OpenGL source directory hierarchyPasi Keränen2019-04-1516-0/+6419
Flatten Source,Include and PrivateInclude directories away. Replace camelcase directory names with lowercase names. Remove random Qt3DS prefixes from directory names. Task-number: QT3DS-16 Change-Id: I5b23349232c760afa9a8efcc5e8945ee19d2e31a Reviewed-by: Pasi Keränen <pasi.keranen@qt.io>