Commit Graph

341 Commits

Author SHA1 Message Date
Emma Broman
c949a9892c Issue/2227 - Option to just specify a scene graph node in profile editor camera dialog (#2699)
* Add profile edit to start camera at a given scene graph node

* Restructure some navigation code to allow computing camera pose from node

* Delay computation of camera pose for node spec as well... And give NodeInfo a more extensive name (The objects may move during the frame, making the computed pose invalid)

* Update to make scene graph node first option in editor

* Add some description to each tab in the camera dialog

* Add operator== for CameraGoToNode struct to make the unit tests compile

* Add version handling for new profile version

* Add option to specify an optional height

* Update current version constant, for old test cases to go through successfully

* Add some test files

Note that apparently, the profile loading does not check the values of the individual fields, just existence, and type. So added two test cases that are not currently checked.

---------

Co-authored-by: Alexander Bock <mail@alexanderbock.eu>
2023-05-24 11:22:41 +02:00
Ylva Selling
d6ddd86a35 Rewrite asset json function to nlohmann::json 2023-04-26 17:30:51 -04:00
Ylva Selling
9a1e6b8002 Remove old json functions 2023-04-26 16:58:55 -04:00
Ylva Selling
d267bc0dad Remove documentation generator 2023-04-25 16:44:10 -04:00
Ylva Selling
948fdd024b Remove generateJson function from the DocumentationGenerator and move sortJson function to json_helper 2023-04-25 16:32:04 -04:00
Ylva Selling
3ff6169771 Merge remote-tracking branch 'origin/master' into feature/documentation-overhaul
# Conflicts:
#	src/scripting/scriptengine.cpp
2023-04-12 17:37:28 -04:00
Emma Broman
4de3713107 Add a central function to create an identifier from string, and also expose it through Lua 2023-04-03 11:40:19 +02:00
Gene Payne
00c8543306 Switch to std::list for adding & removing assets in deterministic order (#2543) 2023-03-17 16:07:17 -06:00
Alexander Bock
a711591c09 Update Doxygen (#2537)
* Modernizing Doxygen
* Remove warnings for Doxygen
2023-03-06 23:41:24 +01:00
Ylva Selling
c645fa81b6 Merge remote-tracking branch 'origin/master' into feature/documentation-overhaul
# Conflicts:
#	src/properties/propertyowner.cpp
#	src/scripting/scriptengine.cpp
2023-03-02 11:28:33 -05:00
Alexander Bock
35a92b6e4d Add the ability to start a profile paused (closes #2228). Bump profile version to 1.2 2023-02-27 18:03:35 +01:00
Emma Broman
352c9dd5ec Touch module code cleanup (#2465)
* Remove unused feature that allowed us to "pick" nodes using touch (it didn't really work and had some nasty hardcoded and costly implementation). Fixes Touch interaction picking refactor #1041

* General refactoring of code and removing redundant code

* Make touch markers prettier (change default color and smoothen edges)

* Add module property to control which renderable types are "directly touchable"

* Add SGN property to control which individual nodes are "directly touchable" ("SupportsDirectInteraction")

* Fix stuttering when zooming in closer than the orbitalnavigator allows
2023-02-14 13:55:24 +01:00
Alexander Bock
26d5ed0a08 Add the ability to pass a script to the setPropertyValue function that is called after interpolation has finished 2023-01-22 14:45:56 +01:00
Alexander Bock
2926250be9 Add function to return a list of all tags 2023-01-21 21:02:02 +01:00
Alexander Bock
59a8a006ee Correctly deinitialize scenegraph nodes that are added at runtime 2023-01-21 16:52:14 +01:00
Ylva Selling
38fee89eec Use nlohmann::json for all documentation.
The printout is verified to be the same as before, except for 1) some escape characters which are no longer necessary and 2) strings that contained arrays have now become arrays in the json
2023-01-10 17:20:20 -05:00
Alexander Bock
4f4764209f Happy new year 2023-01-02 11:19:33 +01:00
Alexander Bock
6249fa6d89 Collection of a number of changes (#2286)
* Cleanup Property code
* Remove NOLINT statements
* Return Property class types as string_view
* Remove getStringValue function
* Simplify string value retrieval
* Ensure that image paths in the ImageSequenceTileProvider are sorted (closes #2205)
* Some cleanup of OpenSpaceEngine
* Cleanup documentation
* Some more cleanup of engine classes
* Some more cleanup
* Update SGCT repository
* Use new Jenkins node identifiers as the old method broke with update
2022-10-30 12:54:14 +01:00
Alexander Bock
811c4a3138 Add the ability to pass a boolean value into the require function that gets passed into the loaded asset as a enabled property (#2187)
* Add the ability to pass a boolean value into the require function that gets passed into the loaded asset as a `enabled` property
2022-08-02 13:12:07 +02:00
Alexander Bock
9cc4c595a8 Code Cleanup (#2191)
* constexpr const -> constexpr
* const char* -> std::string_view
2022-07-25 15:57:45 +02:00
Alexander Bock
9b1143f02f Ubuntu 22.04 and GCC11 fixes (#2163)
* Update CEF version
* Update Ghoul
* Update SGCT
* Update codegen
* Remove warnings happening on Ubuntu 22.04 with GCC 11
* AppleClang warning fixes
* Compile fix for Ubuntu and MacOS
* Add Qt 6.2.3 to the CMAKE_PREFIX_PATH
2022-06-28 00:46:01 +02:00
Gene Payne
4f5b2fdb0d Issue/2121 : SessionRecording wildcard and syntax improvements 2022-06-23 17:47:54 -06:00
Alexander Bock
4697290298 Fixing the Jenkins build 2022-04-12 21:11:01 +02:00
Alexander Bock
d360f2ae59 Address Visual Studio analyzer warnings 2022-04-12 00:58:11 +02:00
Alexander Bock
c206da4a98 Coding style adaptations 2022-04-10 23:25:37 +02:00
Alexander Bock
21babb88c0 Remove unused Rotation constructor 2022-04-06 01:12:50 +02:00
Alexander Bock
3844df20c9 Feature/codegen lua (#1906)
Adapting Lua functions to new codegen functionality
Improve the documentation itself
Add some styling to generated documentation
Have parameter names for Lua-defined Lua function documentation

Co-authored-by: Emma Broman <emma.broman@liu.se>
2022-03-21 09:05:37 +01:00
Alexander Bock
a7841ce405 Working unit tests (#1882)
* Enable all unit tests in Jenkins (closes #1666)
* Fix issue with Profile where the version number is not updated if the profile does not contain keybindings
* Fix issue with script schedule that would cause a crash when only one script is scheduled
* Fix test for colorimage, use correct path to unit test executable for non-windows platforms
* Provide stable class names for vector and matrix verifiers
2022-02-10 01:06:41 +01:00
Micah Acinapura
56460f818e Feature/asset meta update part2 (#1855)
* changes to asset/loader/meta to support adding nodes created at runtime

* update assets meta.

* update tle helper and gui to work with changes

* fixes #1840

* group titan trail and atmosphere with globe

* license for magnetosphere

Co-authored-by: ElonOlsson <olssonelon@gmail.com>
2022-01-31 15:58:41 -05:00
Alexander Bock
d7d279ea16 Happy new year 2022-01-01 12:32:55 +01:00
Alexander Bock
debcb43ade Feature/assets (#1784)
General overhaul of the Asset loading system
2021-12-19 18:04:01 +01:00
Emma Broman
bc306c6f1b Fix globe transformations not updating from height map if simulation time paused (#1766) 2021-10-12 08:37:25 +02:00
Alexander Bock
76dd45e5ce Event System (#1741)
* Add implementation of the EventEngine to handle global event chains
* Add properties to SceneGraphNodes to determine two distance radii for camera-based events
2021-10-11 21:53:00 +02:00
GPayne
a2a8f93ba5 Moved string bracket trim function to ghoul library 2021-10-07 16:10:00 -06:00
GPayne
c36ea36a43 Code review changes 2021-10-07 00:26:29 -06:00
GPayne
80546313fd Fixed handling of strings with quotes or brackets, and better table push 2021-10-03 21:03:32 -06:00
GPayne
9464530cdd Changes to get lua table entries working using variant type 2021-10-01 16:44:20 -06:00
GPayne
450b101cd5 Adding support for lua table as a possible profile properties value 2021-09-28 20:35:53 -06:00
GPayne
a4d84d8703 Code review changes on new profile initialization 2021-09-16 23:11:02 -06:00
GPayne
5b63fff944 Merge branch 'master' into feature/profileOverScene 2021-09-12 21:11:12 -06:00
GPayne
51f6c9d45b Rearranged profile initializations and verified that all init correctly 2021-09-12 21:05:00 -06:00
GPayne
284c68f952 Finished support for modules and markInterestingNodes 2021-09-08 09:21:56 -06:00
GPayne
cd50c3e4cf Working non-assetized initializations for profile sections besides modules and interesting nodes 2021-09-07 21:55:44 -06:00
GPayne
4016180b8c Replaced engine init single asset call with separate profile conversions 2021-08-22 22:48:44 -06:00
Alexander Bock
db472030de GCC warnings (#1725) 2021-08-21 11:42:44 +02:00
GPayne
52e4f75b32 Separate profile conversion to assets into sections 2021-08-20 15:56:41 -06:00
Alexander Bock
34985f64a6 Feature/keybindings (#1708)
* Add action manager to handle actions in replacement of keyboard shortcuts
* Implement new Action concept
* Remove the shortcutscomponent as it is no longer needed
* Update profile version from 1.0 to 1.1
* Add action dialog
* Restructure of key specification in keys.h
* Remove solid field-of-view keybind from the newhorizons profile as the setting no longer exists
2021-08-18 10:58:20 +02:00
Emma Broman
bfe25c311b Merge branch 'master' into thesis/2019/camera-paths
# Conflicts:
#	src/rendering/abufferrenderer.cpp
2021-08-09 15:21:08 +02:00
GPayne
14af0e5a93 Time manager uses simulated application time during playback-with-frames 2021-07-11 14:43:54 -06:00
Emma Broman
77bdfaefd6 Move camera path code into core and refactor navigation code a bit 2021-06-23 09:12:36 +02:00