Commit Graph

228 Commits

Author SHA1 Message Date
Alexander Bock
f024c25666 Add the ability to run as task file at startup. Add new model conversion task that requires an OpenGL context. Add ability to use FileVerifier and DirectoryVerifier on files that don't exist (#3612) 2025-04-29 09:50:29 +02:00
Alexander Bock
b554187d76 Improve performance of setPropertyValue function (#3579)
* Cache full property URIs
  * Multithreaded handling

---------

Co-authored-by: Emma Broman <emma.broman@liu.se>
2025-04-15 17:43:57 +02:00
Alexander Bock
fc9b2ab091 Increase the compilation speed (#3545)
- Remove toStringConversion function and move json_helper include out of numericalproperty.inl
  - Optimizing some header files
  - Remove duplicate Lua functions from properties. 
  - Move List,Option,Selection,String, and TriggerProperty into misc folder
  - Move lua_helper include out of inline file
  - Add lua_helper to the precompiled header
  - Declare property functions as final. No longer have OptionProperty derive from IntProperty
  - Remove Dictionary header from properties
2025-03-14 11:22:40 +01:00
Alexander Bock
820e90eab4 Happy new year 2025-01-14 16:21:08 +01:00
Alexander Bock
56a9d6ae8c Add the ability to query RAM and VRAM usage (#3427) 2024-09-28 13:19:29 +02:00
Ylva Selling
b347659510 Merge branch 'master' into issue/2645
# Conflicts:
#	src/documentation/documentationengine.cpp
#	src/properties/propertyowner.cpp
#	src/scripting/scriptengine.cpp
#	src/util/factorymanager.cpp
2024-03-25 11:14:09 +01:00
Alexander Bock
fff6f8a627 General pass for code cleanup 2024-03-08 00:36:54 +01:00
Alexander Bock
b77e03dce2 Some general cleanup 2024-03-04 13:03:40 +01:00
Ylva Selling
1ceb3d1f5a Merge remote-tracking branch 'origin/master' into issue/2645 2024-03-04 10:55:49 +01:00
Alexander Bock
7a2efc66d6 Simplify profile loading and handling of the loading screen 2024-02-28 00:19:06 +01:00
Ylva Selling
373f4ca924 Move documentation function from openspace engine to the documentation engine 2024-02-23 13:56:38 +01:00
Alexander Bock
6e29d898cf Update copyright header 2024-02-06 15:53:24 +01:00
Alexander Bock
7db7c40841 Doxygen style overhaul (#2954)
Reformatting the existing Doxygen comments to be unified
2023-11-20 23:39:17 +01:00
Alexander Bock
eeb536c9e1 Add the ability to set individual commandline options at the expense of a generic Lua script
Note breaking change: Previously `--config` specified one or more Lua scripts that were executed to update the configuration state, now the `--config` sets the path to the window configuration instead
2023-11-07 16:19:59 +01:00
Joakim Kilby
ca4b6d2ce2 Fix viewport & window issues (#2630)
* Add support for multiple windows & viewports
With correct rendering of both Scene and Overlays/GUI.
GUI is restricted to either the first window or any other windows tagged
with "GUI", overlays are drawn on all windows/viewports.

Closes #2542 and #1645
2023-05-17 22:02:47 +02:00
Emma Broman
554373eb3e Fading of propertyowners through GUI, and more owners with fade property (#2557)
* Add property in OpenSpaceEngine for fading duration when enabling / disabling

* Add interface for fadeable components and apply to renderable

* Make layers a fadeable component

* Make globelabels a fadeable component

* Make labelscomponent a fadeable, and give it an enabled property

* Make screenspace renderables fadeable components

* Introduce concept of parent fadeables, to fade out subowners with parent

* Make rings fadeable as well

---------

Co-authored-by: Alexander Bock <alexander.bock@liu.se>
2023-04-06 12:49:49 +02:00
Alexander Bock
f1e2765da9 Add support for multiple occurrances of -c commandline argument 2023-01-26 21:08:37 +01:00
Alexander Bock
4f4764209f Happy new year 2023-01-02 11:19:33 +01:00
Emma Broman
53f6c8cbeb Add property to disable all mouse input in OpenSpace engine (#2361)
Solves problem with double inputs when using touch interaction
2022-12-16 14:07:22 +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
Emma Broman
0cc5704b6a Add isGuiWindow check for mouse and keyboard callbacks
Fix interaction problems when hovering/clicking with the mouse in a non-GUI window, when having a setup with more than one window (e.g. the single_gui.json setup)

Previously, clicking with the mouse in the rendering window without the GUI also triggered mouse clicks in all the other windows, including the GUI windows. This was disturbing for interaction in the single_gui setup

Now, the GUI modules check to see if the clicked window is actually an interaction window
2022-08-05 11:41:10 +02:00
Alexander Bock
2f58e8ec8e Remove some more warnings 2022-07-22 14:27:45 +02:00
Ylva Selling
0fa317d96f Fixes to comments on pull request 2022-05-17 11:40:19 -04:00
Ylva Selling
e1bda38529 Make imGUI listen to OpenSpaceEngine properties for visibility for properties and for scene graph nodes 2022-05-12 12:11:00 -04:00
Ylva Selling
0824b59d77 Move properties for visibility from CefWebGui to OpenSpaceEngine 2022-05-12 10:11:25 -04:00
Ylva Selling
9d583dafe9 Make Engine a Property Owner 2022-05-12 10:10:14 -04: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
Emma Broman
d0fcec569c Address stability problems for camera paths and make them more useful in general
* Change spline curve parameter interval from [0,1] to [0,nSegments], for slightly increased precision
* Use linear paths whenever precision isn't enough/paths are too long (and traverse linear paths differently, to make them less depending on the distance)
* Remove OrbitalNavigator.LinearFlight and instead add "Zoom to" helper functions (closes #1837 )
* Add check to prevent triggering awkward short paths, for example when flying to the current target or to the same geo position twice
* Refactor speed code and handle speed when path is shorter than start+closeup distance
* Add easing to speed dampening
* Add topic for engine mode (to be used for UI later)
* Cleaner log when creating paths (some previous info messages are now debug messages)

Related PR: OpenSpace/OpenSpace-WebGuiFrontend#70
2022-02-25 08:49:19 +01:00
Emma Broman
91b0581d39 Introduce engine modes to handle Camera path and session recording transitions
* Clarifies which system is control over time and camera at what time
* Fixes #1845
* Prevent invalid switching between session recoring and camera path playback
* Some cleanup, mosly of SessionRecording and NavigationHandler. Also, remove ExternInteraction and some other unused/nonexisting functions
2022-02-03 16:08:21 +01: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
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
a4d84d8703 Code review changes on new profile initialization 2021-09-16 23:11:02 -06:00
GPayne
51f6c9d45b Rearranged profile initializations and verified that all init correctly 2021-09-12 21:05:00 -06:00
GPayne
194741d136 Reverted to combining assets into combined init followed by post-init 2021-08-25 00:02:45 -06:00
GPayne
4016180b8c Replaced engine init single asset call with separate profile conversions 2021-08-22 22:48:44 -06:00
Alexander Bock
a69b636dea Global sweep to cleanup the handling of floating point numbers and glm default initialization 2021-06-16 23:09:49 +02:00
Alexander Bock
dfc42e9467 Rename createSingeColorImage -> createSingleColorImage 2021-03-22 23:17:42 +01:00
Micah
2158dd585c creating user directories if not existing; 2021-03-04 16:00:34 -05:00
Alexander Bock
548d673e8b Add drag and drop support for images and assets (#1497) 2021-02-11 13:43:36 +01:00
Emma Broman
b10e598cd3 Cleanup and improve test 2021-02-04 13:25:17 +01:00
Emma Broman
3f63f92128 Add test cases for the create single color image lua function 2021-02-04 13:25:17 +01:00
Alexander Bock
7004c02b86 Happy new year 2021-01-02 15:26:51 +01:00
Alexander Bock
15e6b5519f Making the documentation generation a bit more performant
Outsource the file writing to a second thread to start the rendering earlier
2020-08-21 14:10:33 +02:00
Alexander Bock
4c9555425b Cleanup of asset handling and move more functionality to the Profile 2020-06-18 23:09:26 +02:00
Alexander Bock
433d96bbb4 SGCT compile fix
First pass for pull request
2020-06-11 00:24:58 +02:00
GPayne
0f06f9d233 Merge branch 'master' into feature/profiles 2020-05-14 19:31:19 -06:00
GPayne
dfb61097b2 Finished testing new save-settings-to-profile feature 2020-05-14 13:20:05 -06:00
Alexander Bock
3b427bfd15 Cleaning up window delegate 2020-05-10 15:17:51 +02:00
GPayne
1fbb9e8acf Completed code for detecting and storing changes made since startup 2020-04-23 12:06:34 -06:00