Commit Graph

99 Commits

Author SHA1 Message Date
Alexander Bock
0e72a2cb0d Add rendering for mouse interaction (#3781) 2025-09-07 15:36:46 +02:00
Alexander Bock
19e9e2c1fb Adapt to new compile option style and fix warnings (#3773) 2025-08-12 14:19:45 +02:00
Alexander Bock
7692e83340 Add some analyzer suggestions 2025-04-30 08:47:34 +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
Emma Broman
eb3bd4395a Add Lua function openspace.navigation.setFocus(identifier, shouldRetarget, shouldResetVelocities) (#3534)
* Add support to set focus with reset-velocities setting from Lua

* Update Lua function name and add documentation

* Rename functions that actually update the anchor/aim nodes, to reduce confusion

* Apply suggestions from code review

Co-authored-by: Alexander Bock <alexander.bock@liu.se>

* Apply suggestions from code review

Co-authored-by: Ylva Selling <ylva.selling@gmail.com>

---------

Co-authored-by: Alexander Bock <alexander.bock@liu.se>
Co-authored-by: Ylva Selling <ylva.selling@gmail.com>
2025-02-27 13:20:22 +01:00
Alexander Bock
820e90eab4 Happy new year 2025-01-14 16:21:08 +01:00
Alexander Bock
438d6e3ddd SessionRecording and KeyframeRecording redesign (#3399) 2024-10-21 15:06:40 +02:00
Malin E
9582d81fb6 Sync out the anchor node, issue 2854 (#3398)
* Sync out anchor node to all connected clients

* Remove warning in case anchor node is nullptr

* Always sync out the anchor node to nodes
2024-10-09 10:39:13 +02:00
Alexander Bock
e24cff1d19 Handle warnings and coding style adaptations 2024-09-12 16:30:09 +02:00
Emma Broman
09a40f62dc Rename goToGeo -> jumpToGeo (#3296)
* Remove unused bool argument in globebrowsing functions
* Refactor some globe browsing functions
* Start updating goToGeo function to fade instead of just jump
* Add choice for whtehr to use default or arrival height when flying to a geo2
* Update / add docs for fly-to and go-to functions
* Rename function and add deprecated version of `goToGeo`
2024-06-04 16:18:03 +02:00
Emma Broman
a82af895d7 Issue/3016 - Settings for jumpTo (#3080)
* Add script for jumpTo scene graph node and navigation state

* Add property to control how long the fading takes (navigation handler)

* Update GUI hash

---------

Co-authored-by: Alexander Bock <alexander.bock@liu.se>
2024-04-04 10:20:24 +02:00
Emma Broman
d2f5dd43a5 Include timestamp in navigation state (#3078)
* Add optional timestamp to navigation state

* add option to include timetamp when setting/loading navigation state

* Don't require file extension when loading navstate

for symmetry with save function

* Update Navstate docs

* Apply suggestions from code review

Co-authored-by: Alexander Bock <alexander.bock@liu.se>

---------

Co-authored-by: Alexander Bock <alexander.bock@liu.se>
2024-03-21 20:48:57 +01:00
Alexander Bock
534f92c485 Second linting pass and adding .clang_tidy file (#3128) 2024-03-18 22:46:17 +01:00
Alexander Bock
2759c00e4b Pass through the code to address clang-tidy linting (#3083) 2024-03-17 00:58:50 +01:00
Alexander Bock
2fbcb0544e NavigationState handling (#3023)
* Change the navigation state format from Lua to JSON.  Add the ability to set the navigation state in the profile editor based on a file
2024-02-25 01:09:32 +01:00
Alexander Bock
6e29d898cf Update copyright header 2024-02-06 15:53:24 +01:00
Emma Broman
af5ebd7731 Issue/2949 - Fix for camera transition events (#2982)
* Fix variable name typo

* Update transitions to not care about which sphere we were previously in

* Also handle when anchor node changes

* Remove log messages used for testing, and unused variable

* Update src/navigation/navigationhandler.cpp

Co-authored-by: Alexander Bock <alexander.bock@liu.se>

---------

Co-authored-by: Alexander Bock <alexander.bock@liu.se>
2023-12-20 08:28:34 +01:00
Emma Broman
8a1b6aceb2 Keep track of aim from navigations state when creating a camera path (#2981) 2023-12-20 08:28:21 +01:00
Emma Broman
9c77a12269 Issue/2665 - Show timer for how long time left in camera path (#2980)
* Add a camera path topic and compute remaining time in path

* Remove unused parameter in function

* Include speed scale in estimation of time the path will take

* Includes cleanup and address review comments

* Round instead of ceil, to make countdown reach 0 in most cases

* Update GUI hash
2023-12-20 08:28:07 +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
4ee078502b Doxygen (#2953)
* Update Doxygen and add new CSS file
* Remove Doxygen warnings
2023-11-19 16:35:14 +01:00
Emma Broman
aae4d04c43 Add documentation for camera path instruction dictionary
used as input for `openspace.pathnavigation.createPath`
2023-11-15 16:00:36 +01:00
Alexander Bock
06a7c692c5 Add special handling for a number of properties in the DashboardItemPropertyValue (closes #2899) 2023-10-19 11:21:28 +02:00
Emma Broman
7bfedbdf12 Feature - OrbitalNavigator Setting - Orbit Around Up (#2874)
* Hack to try to get desired behavior (for testing)

* Add properties to control axes of rotation and whether rotation aorund up should be enabled

* Generalze orbit function to just use an angle instead of speed and deltatime

* Move speed scale computation to a separate function

* Refactor horizontal translation code a bit

* Refactor speed computation for idel behavior

* Refactor/clean up orbit code

* Add property docs

* Add some safety checks

* Apply suggestions from code review

Co-authored-by: Alexander Bock <alexander.bock@liu.se>

* More updates based on code review

---------

Co-authored-by: Alexander Bock <alexander.bock@liu.se>
2023-09-11 10:44:12 +02:00
Emma Broman
f591938f01 Add options to disable roll and zoom in OrbitalNavigator (#2866) 2023-08-29 09:12:02 +02:00
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
Malin E
c0a1dc7e79 Dont allow axis flipping for propertry axis 2023-05-17 10:50:35 +02:00
Malin E
6ce55400d1 Enable reversing of movement for joystick axes 2023-05-17 10:14:47 +02:00
Micah Acinapura
5a9bb529f3 Feature/night sky items (#2613)
* added night sky items and camera event
---------

Co-authored-by: Alexander Bock <alexander.bock@liu.se>
2023-04-16 17:29:48 -04:00
Malin E
4bda27dcdf Start to address PR comments 2023-04-13 13:30:16 +02:00
Malin E
96f7ac1d69 Some small clean up 2023-03-28 10:17:04 +02:00
Malin E
99d52ce144 Merge branch 'master' into feature/min-max-distance
* Solve conflicts
2023-03-27 15:43:22 +02:00
Alexander Bock
ddcbe85b51 Add events when paths are started or finished (closes #1834) 2023-03-11 17:20:20 +01:00
Alexander Bock
6fa589c880 Adding option for constant velocity flight (closes #2150)
Using adapted code from James H
2023-03-11 00:16:54 +01:00
Alexander Bock
1aef976911 Show error message when trying to save navigation state to an invalid file path (closes #2508) 2023-03-07 00:05:31 +01:00
Alexander Bock
a711591c09 Update Doxygen (#2537)
* Modernizing Doxygen
* Remove warnings for Doxygen
2023-03-06 23:41:24 +01:00
Emma Broman
3ffb29b9be Add option to invert idle behavior (fixes #2379)
Both through separate property and by allowing negative speed factor
2023-02-27 16:06:15 +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
ac228c9c87 Add a new dashboard item that shows the state of input devices (closes #2415) 2023-01-21 18:29:17 +01:00
Malin E
c10361d81e Undo misstake 2023-01-12 15:20:00 +01:00
Malin E
c5d2e75854 Some clean up 2023-01-12 14:33:39 +01:00
Malin E
a59ae2661d Slider adjustment for max distance property 2023-01-12 11:48:04 +01:00
Malin E
8ed9d083cb Adjust camera position if outside the max distance limit 2023-01-12 11:01:32 +01:00
Malin E
659dab821c Add property to limit zoom out distance in OrbitalNavigator 2023-01-11 17:36:19 +01:00
Malin E
a990e1679b Add lua function to set minimum allowed distance for the OrbitalNavigator 2023-01-11 16:40:57 +01:00
Alexander Bock
4f4764209f Happy new year 2023-01-02 11:19:33 +01:00
Alexander Bock
524b78f5d2 Add the ability to disablee keybindings (closes #2238) 2022-10-14 11:24:44 +02:00
Emma Broman
06a22c2592 Fix problem with camera path not finishing properly on skipToEnd 2022-10-07 09:17:58 +02:00
Emma Broman
8192292229 Move findNodeNearTarget function from path to pathnavigator
To reduce conflicts between wisdome installation branch and master
2022-10-06 22:25:27 +02:00
Emma Broman
5a970ee6e0 Add a function to skip immediately to the end of a playing camera path 2022-10-06 22:13:06 +02:00