Commit Graph

404 Commits

Author SHA1 Message Date
Alexander Bock d360f2ae59 Address Visual Studio analyzer warnings 2022-04-12 00:58:11 +02:00
Alexander Bock 6eba57730f Dynamic DPI scaling (#1980)
* DPI scaling
 1. Add the ability to query the operating system's DPI scaling values
 2. Expose those values through a new Lua function
 3. Add an asset that sets the CEF gui and the Dashboard font sizes and placements based on the DPI scaling
 4. Add that new asset into the base_blank asset
* Add message when including the dpiscaling
2022-04-08 13:28:18 +02:00
Alexander Bock 73292ee54c Rename 'slave' to 'client' in the remaining code 2022-04-05 23:10:49 +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
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
Alexander Bock cbe2e6cdcf Set the default window size to 66% of the primary window size (closes #1883) 2022-02-17 17:55:43 +01:00
Emma Broman f45b782234 Remove all remaining virtual property related code 2022-02-10 14:28:15 +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 2222d3d9e0 Update SGCT to enable taking screenshots of individual windows 2022-01-07 12:00:00 +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 284c68f952 Finished support for modules and markInterestingNodes 2021-09-08 09:21:56 -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
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
Alexander Bock dfca605d63 Add the optional ability to print a stacktrace with an OpenGL error (closes #1700) 2021-07-30 15:37:03 +02:00
Alexander Bock c4bddacfeb Remove nonfunctioning ABufferRenderer from RenderEngine 2021-07-30 12:01:07 +02:00
Alexander Bock b1f10b1b70 Add the ability to specify RenderEngine font sizes in the configuration file (closes #1653) 2021-06-17 15:39:16 +02: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 ccdc5a5dc3 Feature/filesystem cleanup (#1587)
* Adapting to the changes in Ghoul
* First step of moving filesystem functions to std
* Remove persistence flag from cachemanager
2021-05-16 20:26:49 +02:00
Alexander Bock 4c80577d4b Rename PerSceneCache to PerProfileCache and make it work again (closes #1577)
Breaking change in openspace.cfg file:   PerSceneCache -> PerProfileCache
2021-05-05 16:14:00 +02:00
Alexander Bock 0d82e1848f Feature/configuration codegen (#1544)
Convert configuration document over to codegen
2021-03-23 15:22:29 +01: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 ad8af3ffeb Feature/CMake (#1443)
General CMake cleanup/overhaul
* Enable precompiled headers for all projects
* Move specifications itto separate CMakeLists files
  * Add openspace-core as a subdirectory
  * Move handle_modules functionality into modules/CMakeLists.txt
  * Move handleapplications logic into apps/CMakeLists.txt
* Introduce openspace-module-collection interface library to simplify inclusion of modules in applications
* Turn module initialization into a two-step process to adapt to the new minimal dependency scenario
* Compile time speedup
  * Remove circular dependencies between modules and core preventing multithreaded compilation on MSVC
  * Build Spice multithreaded and as static library
  * Remove dependency from core to module-webbrowser
  * Remove unused dependency from kameleon
  * Remove additional unnecessary dependencies
  * Cleanup volume/kameleon/kameleonvolume modules
  * Fix visibility issues. Restrict include paths
  * Compile kameleon in parallel
* Other cleanup
  * Only copy CEF files from one target (hard-coded to OpenSpace right now)
  * Remove unused instrumentation code
  * Remove the ability to render AABB for globes as it caused a circular dependency between GlobeBrowsing and Debugging
  * Removing compiler and cppcheck warnings
  * Turn almost all includes into non-system includes
  * Don't warn on deprecrated copy
* Updated submodules
2020-12-28 18:26:57 +01:00
Alexander Bock 51470c0a0d Issue/1355 (#1424)
* Move glfw init after macOS window is ready
* MacOS fixes for BigSur
* Compile fixs
* Rename hirise.asset since linux filenames are case-sensitive
* Modified globals DataStorage method to make Linux and Mac happy
* Switched to unsecure http URLs for satellites due to httprequest problem
* Keep the QApplication around on Mac because of some reason otherwise the keyboard handler crashes
* Add comment explaining the madness
* Apply same techniques to the globalscallback file

Co-authored-by: Micah Acinapura <micahnyc@gmail.com>
Co-authored-by: Gene Payne <payne.gene@gmail.com>
2020-12-07 23:41:20 +01:00
Alexander Bock 8d7300a242 Add the ability to change the screenshot folder at runtime (#1172) 2020-11-16 14:22:56 +01:00
Alexander Bock efffc25ce0 Feature/globals handling (#1352)
* Cleaner handling of global state
* Prevent Lua memory corruption (closes #982)
* Initialize glfw first thing to prevent weird joystick loading bug during startup
2020-10-21 22:30:05 +02:00
Alexander Bock 77907fc7df Rename ProfilesReadOnly -> ReadOnlyProfiles 2020-10-13 16:22:05 +02:00
Gene Payne 5d5bfd340b Added configuration file bypass launcher key option 2020-10-02 15:49:27 -06:00
Gene Payne 5e02bcd17c Formatting, layout and keybinding improvements 2020-09-27 15:46:13 -06:00
Gene Payne caee77881c Launcher works with all types of SGCT/Profile settings plus commandline 2020-09-24 15:07:53 -06: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 b78d1dd033 Merge branch 'master' into feature/memory-allocations
# Conflicts:
#	include/openspace/scene/scenegraphnode.h
#	modules/imgui/include/gui.h
2020-08-05 19:06:04 +02:00
Alexander Bock 6e9db78f40 Remove performance measurements that have been supersceded by using Tracy 2020-08-05 18:28:08 +02:00
Alexander Bock e783807d66 Next step towards enabling a managed memory version of templatefactory 2020-08-04 21:56:39 +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
Alexander Bock 498d125547 Merge pull request #1146 from OpenSpace/feature/sgct
Merging the changes to make the new SGCT version the default one
2020-05-04 10:48:48 +02:00