Commit Graph

212 Commits

Author SHA1 Message Date
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
Alexander Bock
0dc2fc9430 Make OpenSpace work with the new SGCT version 2020-04-10 17:38:18 +02:00
GPayne
6253a5cf2e First pass on tracking changed properties/assets since initialization 2020-03-22 20:59:15 -06:00
Alexander Bock
d8e9db76a3 Update the copyright header to 2020 2020-02-10 21:51:01 +01:00
GPayne
f682352b53 Merging with master 2020-01-27 09:14:35 -07:00
Mikael Pettersson
4e75b161db Feature/internal touchhandling (#1038)
* Removal of dead code and compiler warnings

* Added basic internal touch

This commit only adds the description-shell of the touch implementation

* Added callbacks and first WIP of internal touch

Makes use of the TouchInput/TouchInputs class in the TouchModule.
Internally we cache the TouchInputs as an input deque and utilizes it
for motion-vectors.
This commit has bugs and issues, which will be worked upon.

* Happy new year!

Bumped year on branch-local files

* Improvements to internal touch

Almost reached feature-parity with tuio-handled touch events

- Added most of the touch-logic to touchinteraction
- Added helper functions to new TouchInput/TouchInputs classes

* Naming changes to touch interface

* Translate TUIO to TouchInput

This commit translates TUIO messages to an internal TouchInput structure
while still trying to keep feature parity.
Removed TUIO-dependencies from many files.
Changed behavior on tuioear to lock-swap its content.

* Minor cleanup and fixes

- Should fix touch roll
- Simplified some functions

* Build fix

* Use internal touch in webgui

- Added consume-logic to touch callbacks
- Constrained touch-input to either webgui or 3D application as mouse is
  - This fixes some flaws with previous implementation,
    such as ghost inputs

- Initialize touchmodule through init-functions rather than constructor

* Cleanup of comments

* Simplified touch classes

Added timestamp through constructor meaning no more sprinkled timestamps
Renamed TouchInputs to TouchInputHolder for clarity
Added helper functions to the Holder to see if it holds an input
Remade addInput as tryAddInput which return true on successful insertion
+ other cleanup

* Code style cleanup and tweaks

Removed avoidable zero-comparison for code clarity
Cleanup of code style

* Added comments to DirectInputSolver

Clarifying the use of the DirectInputSolver.

* Changes for coding style
Change SGCT version to make it checkout-able

* Clarify magic bitmask

* const -> constexpr const for magic bitmasks

Co-authored-by: Alexander Bock <mail@alexanderbock.eu>
2020-01-13 08:27:13 +01:00
GPayne
1ac68f8236 Fixed profile parser so it gets the profile input file first 2020-01-10 15:22:26 -07:00
Alexander Bock
0426367572 Allow the user to abort the loading screen through ESC (closes #668) 2019-07-30 15:22:31 +02:00
Alexander Bock
d0c04cfc6b Various code cleanup 2019-06-18 10:47:15 +02:00
Micah Acinapura
1149a61dce resurrecting consolidated documentation (#897)
* Resurrecting consolidated documentation, lots to improve still but better then before
2019-06-03 06:19:45 -06:00
Emil Axelsson
c08805745b Feature/check latest version (#876)
* Log latest version information
2019-05-20 16:13:56 -06:00
Alexander Bock
bb3db7ada7 Feature/jenkins fix (#816)
* Cleanup
* CMake cleanups
* Update current year
* Update copyright header
* Use script to return list of all modules
* Update credits, license and ghoul
2019-03-24 11:19:39 +01:00
Emil Axelsson
f60371bdbc Pass on modifier keys to CEF for mouse events (#790)
* Update sgct
* Pass on modifier keys to CEF for mouse events
2019-02-04 15:14:51 +01:00
Emil Axelsson
1632c09af3 Coordinate Axes
* Add coordinate axes renderable
 * Add debug helper
 * Add example asset
 * Fix bug with dynamic loading of assets. (#763)
2018-11-13 08:09:14 -05:00
Alexander Bock
f630944fd8 Feature/minvr (#744)
* Move SGCT external library from ext/sgct to apps/OpenSpace/ext/sgct
 * Remove all GLFW dependencies from openspace-core
 * Add MinVR dependency
 * Add new executable OpenSpace-MinVR that uses MinVR instead of SGCT
2018-10-29 22:10:35 -04:00
Alexander Bock
c03ddf76cc Remove external control callback 2018-09-17 15:13:54 -04:00
Alexander Bock
f429959bba Register path tokens before the sgct configuration is loaded 2018-09-02 12:08:50 -04:00