Commit Graph

4006 Commits

Author SHA1 Message Date
Alexander Bock
b1a8c82a1e Use central subdirectory function. Fix compile issue with Tracy 2025-03-24 15:10:34 +01:00
Alexander Bock
86dd037870 Window Configuration Generation (#3550)
* Use built-in toJSON converter instead of manually creating the string. Also removes the ability to create fisheye configuration files from the Lua script directly
2025-03-24 08:49:37 +01:00
David Wagner
9dcdf42df6 Add a 'reload' function to the AssetManager. Also make it vailable as a scripting API (#3543) 2025-03-22 14:49:52 +01:00
Alexander Bock
5008aa7cd7 Adding documentation and examples (#3541)
- Make the SourceType and DestinationType parameters required in the DashboardItemAngle
  - Shift the "UTC" string in the DashboardDate from the FormatString to the TimeFormat
  - Make the SourceType and DestinationType parameters for the DashboardItemDistance required
  - Add new "Deltatime" option to the DashboardItemFramerate.  Add examples for the DashboardItemFramerate
  - Fix issue where the inputstate would not update if no option was selected
  - Automatically disable simplification if a unit is requested in the asset for a DashboardItemSimulationIncrement or DashboardItemVelocity
2025-03-14 11:25:26 +01: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
7328a94fb1 TimeFrame specification and status (#3553)
* Makes Translation/Scale/Rotation all able to have a TimeFrame, not just the SpiceRotation.  Add read-only BoolProperty to the TimeFrame that indicates whether the current time is a in the timeframe

---------

Co-authored-by: Emma Broman <emma.broman@liu.se>
2025-03-10 13:53:32 +01:00
Alexander Bock
7905f5b63f Add the ability to the backend to specify a background color and a text color for actions (#3551) 2025-03-03 13:17:57 +01:00
Michael Zingale
12de9d8697 Add a cast from json to std::string for the anchor in the Horizonsdialog(#3548)
This fixes compilation with GCC 14.2.1
2025-03-03 09:59:57 +01:00
Alexander Bock
cc395ce340 Update C++ version to 23, add new warnings and the fix them 2025-03-01 15:49:38 +01:00
Alexander Bock
cd8924ed22 Remove compiler warnings on Clang/GCC (#3546) 2025-02-28 23:29:38 +01:00
Malin E
80b1061b26 Update time conversion to mirror distance conversion code (#3507) 2025-02-28 18:25:05 +01:00
Alexander Bock
9f77ca1daa Use composable Lua types in Property definitions. Allow OptionProperty to receive either indices or descriptions (#3524) 2025-02-27 15:42:54 +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
615773d32e Correctly set the minimum and maximum values for the enabled/disabled colors in the RenderEngine 2025-02-26 14:38:02 +01:00
Alexander Bock
fed3245a79 Improve the error message when providing an illformed DashboardItem 2025-02-25 09:01:33 +01:00
Alexander Bock
b13d9c74d2 Slow down the speedup of the camera rotation when pressing the Z key as it was too fast to navigate 2025-02-25 08:31:30 +01:00
Alexander Bock
61ed1f4c9b Launcher improvements (#3523)
- Adding support for subfolders in configurations and profiles
  - Disable the edit button if profile does not exist
  - Disable the Start button if the profile or window configuration does not exist
  - Change the layout of the Window Configuration editor
    - Explicitly specify which windows should have Overlay rendering and 3D rendering
    - Add keyboard shortcuts for adding and removing windows
  - Use a normal Save dialog for the profile editor instead of the renaming + Duplicate button
2025-02-24 16:19:42 +01:00
Ylva Selling
4d7e5c2cb5 Add error messages when documentations don't have identifiers and don't add them to the docs 2025-02-24 11:23:53 +01:00
Alexander Bock
5152a7a6e0 General code spring cleaning (#3525) 2025-02-22 15:28:14 +01:00
Alexander Bock
e0bc8289d9 Linux compile fix 2025-02-19 12:43:47 +01:00
Alexander Bock
8cb3ce8b94 Add the ability to limit-rate the dashboard updating (#3527)
Co-authored-by: Emma Broman <emma.broman@liu.se>
2025-02-18 16:49:47 +01:00
Andreas Engberg
a9beb476af added optional parameter to overwrite session recording file 2025-02-18 12:01:13 +01:00
Alexander Bock
588c4a6f86 Fixing assets that had problems loading (#3528)
- Correctly remove interpolating render program to prevent invalid shader access
 - Fix Apollo 11 location
 - Fix Apollo 17 location
 - Replace errors with warnings for Gala and Rime instruments for Juice
 - Correctly rely on the solarsystembarycenter asset in the Voyager/Pioneer asset
 - Use correct identifier for the Jupiter barycenter
 - NASA Treks assets
 - Slidedeck
 - Fix unloading of missions
 - No longer crash when loading and unloading image sequence assets
2025-02-17 14:08:53 +01:00
Emma Broman
1fbd5e827d Utilize new docs functionality in API scripts that are defined in Lua files (#3505)
* Fix a reference to a deprecated and renamed function in navigationstate docs

* Review documentation for scripts defined in .lua files

And utilize new markdown functionality

* Update renderable box grid size specs

So that it can have a size less than 1, and throws a specification error when the size is given as negative

* Fix some issues with the gaia filtering scripts

* Try adding param documentation to the lua script documentation

It works!

* Utiliize mroe markdown features in the updated documentations

* Add function parameter info and make small updated to gaia filtering functions

* Replace a long parameter info in description with `param` description

* Update usage examples

* Add example of how to create debug axes for the current SGN
2025-02-11 08:59:33 +01:00
Alexander Bock
bc4a137040 Add new property hint to determine if a scene graph node should focusable (#3508) 2025-02-10 17:57:31 +01:00
Alexander Bock
97f574ce8c Ramping the sensitivity change gradually (closes #3064) and applies the sensitivity to the rotation as well (closes #3065) 2025-02-06 16:11:21 +01:00
Alexander Bock
44a1cd2e7a Document the order in which transformations are applied 2025-02-06 12:44:19 +01:00
Alexander Bock
53e356e819 Remove the unused any alternatives of the property accessor functions 2025-02-06 10:23:00 +01:00
Alexander Bock
096363fd06 Make constructors explicit 2025-02-05 23:22:32 +01:00
Alexander Bock
a8949ec2b5 Harmonize various documentation identifiers 2025-02-05 22:03:55 +01:00
Alexander Bock
fc0e3959ac Add new types for Scale, Translation, and Rotation that combines multiple instances together 2025-02-05 21:56:41 +01:00
Alexander Bock
e57a67aa5d Enable the drag and drop of a folder, which will add all files contained within 2025-02-04 13:29:13 +01:00
Alexander Bock
ec5bfd48b4 Only render the Lua console on top of the module 2D calls, not the log and overlay 2025-02-04 13:28:49 +01:00
Alexander Bock
7079845cf2 Turn missing Horizons files from a warning to an error. Improve error message quality of OrVerifiers 2025-02-04 03:00:25 +01:00
Alexander Bock
efb7599b3d Reenable checking loading screen entries against the logo without the endless loop 2025-02-04 01:24:09 +01:00
Alexander Bock
ffbcbc413b Render overlays on top of module draw2D calls 2025-02-04 00:27:44 +01:00
Roxeena
ad0e5b92dc Clean up _lua.inl include style 2025-01-28 10:45:57 +01:00
Alexander Bock
ec717116f9 Don't update SceneGraph nodes unless they are fully initialiezed (closes #3498) 2025-01-20 11:56:10 +01:00
Emma Broman
7e6128d620 Add a description for the Renderable base class (#3486) 2025-01-17 13:50:07 +01:00
Alexander Bock
c01ce9b09d Add the ability to schedule scripts based on wallclock time (closes #1773) 2025-01-15 12:05:12 +01:00
Alexander Bock
6a1abf25d6 Timeout correctly when rendering the LoadingScreen with a very small window resolution (closes #3473) 2025-01-14 16:55:33 +01:00
Alexander Bock
3187425089 Add support for custom TriggerProperty (closes #3487) 2025-01-14 16:51:21 +01:00
Alexander Bock
0bc2c4a9ee Coding style fixes 2025-01-14 16:34:42 +01:00
Alexander Bock
820e90eab4 Happy new year 2025-01-14 16:21:08 +01:00
Ylva Selling
4bc33368f6 Make property uri validation work again 2024-11-15 16:56:55 +01:00
Ylva Selling
6ffaee0b45 Make uri validation work again 2024-11-15 16:39:32 +01:00
Emma Broman
417996565e Fix renderbin mode Parameters list to include new Sticker
So that Sticker bin can be set from an asset
2024-10-23 13:45:51 +02:00
Alexander Bock
438d6e3ddd SessionRecording and KeyframeRecording redesign (#3399) 2024-10-21 15:06:40 +02:00
Andreas Engberg
0fc9265837 Feature/assetvalidation (#3396)
# To run the script
Make sure to install the latest Python API version `openspace-api 0.1.2`
The script is located in `OpenSpace/support/assetvalidation`, the main script takes a few command line arguments

`--dir` - specify the OpenSpace directory 
`--filter` - optionally supply a regex string to filter which assets to validate
`--verbose` - flag to print debug info to log and also console (default off), if off only warnings and errors are logged
`--start` - flag to start OpenSpace as a subprocess (default on) if this is off it assumes OpenSpace is already running, useful if you want to run OpenSpace via Visual Studio for example. 
`--at` - specify an index to start at a specific asset

run eg: 
`python main.py --dir="C:/User/Desktop/OpenSpace" --filter="examples" --verbose=True --start=False --at=35`
2024-10-10 15:55:53 +02:00
Emma Broman
e3271670a7 Update comments in time_lua to new script documentation format (#3438)
* Update comments in time_lua to new script documentation format

* Fix some mistakes in formulation about how pausing works

* Add return value documentation
2024-10-10 11:51:12 +02:00