Commit Graph

5929 Commits

Author SHA1 Message Date
Alexander Bock
bf2fee7d71 Submodule updates (#3586)
Update submodules and also provide compatibility with CMake 4.0.

  - assimp: `v5.4.1` -> `v5.4.3`
  - catch: `v3.5.3` -> `3.8.0`
  - date: `master` -> `v3.0.3`
  - freetype2: `v2.10.4` -> `v2.13.3`. Also change to freetypes original Git server
  - glbindings: `v3.3.0` -> `v3.4.0`
  - glm: `master` -> `v1.0.2`
  - scnlib: `v4.0.1` -> `v2.0.2`
  - soloud: `master` -> `master`
  - tinyxml: `master` -> `v11.0.0`
  - tracy: `v0.10.1` -> `v0.11.0`
2025-03-31 22:30:31 +02:00
Alexander Bock
e93ad7910f Rename propertyowner and gui to geographic overlays (#2883)
Breaking change
2025-03-24 17:12:47 +01:00
Alexander Bock
28d0a778d5 Add proper motion of stars (#3561) 2025-03-20 09:55:19 +01:00
Alexander Bock
edd123197f Give the GeoJSON component in the RenderableGlobe a better name (closes #2883) 2025-03-19 13:31:13 +01:00
Alexander Bock
2e191b6bd2 Second merge fix 2025-03-17 11:42:57 +01:00
Alexander Bock
ab84ca7ad6 Fix merge issue 2025-03-17 11:37:32 +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
0e815559d2 Improve the error message for FixedRotation (closes #2445) 2025-03-10 14:56:59 +01:00
Alexander Bock
9b5c7b3080 Fix merge error 2025-03-10 14:31:04 +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
b6d380d84c Add new class TimelineScale (#3536) 2025-03-06 13:06:19 +01:00
Roxeena
737976a8d2 Enable depth for RenderableSphericalGrid 2025-03-06 11:44:37 +01:00
Alexander Bock
25f7a2f1e4 Fix assertion failures in the ImGUI UI code 2025-03-04 11:43:44 +01:00
Alexander Bock
501fab40e8 Make the "Clear Projections" in the ProjectionComponent actually a button 2025-03-04 09:42:55 +01:00
David Wagner
cb66065445 Add a "time offset" option to the SpiceRotation and SpiceTranslation (#3544)
Lets SpiceTranslation and SpiceRotation compute the transformation with a given time offset compared to the simulation time (or fixed date if one is configured)
2025-03-03 10:17:20 +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
3c811a488f Add a new DashboardItem to show the camera orientation (#3542) 2025-02-28 16:50:33 +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
Ylva Selling
3c3efd9598 Documentation fix broken codegen links 2025-02-24 11:23:36 +01:00
Alexander Bock
5152a7a6e0 General code spring cleaning (#3525) 2025-02-22 15:28:14 +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
Alexander Bock
d21d1e4dcf Add the ability to disable accelerated rendering for CEF. Disable it for AMD cards as it causes a crash (#2488) 2025-02-17 18:25:14 +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
David Wagner
3d57d3d65a Fixes for some "elapsed time" dashboard bugs (#3520)
- Expose the FormatString property (closes #3519). Contrary to other properties, it wasn't accessible through the scripting API.
  - Fix the time simplification logic (closes #3515). If the lowest required time unit's value was zero, all time units where displayed regardless of what the user required. Fix this by using a "less than" comparison rather than an equality comparison.
  - Fix string truncation (closes #3516). The time string truncation was off by one, causing the trailing unit name to be truncated e.g. (minutes -> minute).
2025-02-14 16:38:25 +01:00
Alexander Bock
1a03cb52a1 Add missing documentation entries for DashboardItemElapsedTime and DashboardItemInputState (closes #3514) 2025-02-14 14:30:07 +01:00
Emma Broman
7f4bf73993 Cleanup and add some more examples (#3506)
* Remove duplicated node line example

* Update `ScreenSpaceBrowser` example to new format

* Add screenspace image examples

* Add docs and examples for `RenderableGrid`

* Add docs and examples for `RenderableRadialGrid` + create 10 grid segments per default

* Add docs and examples for `RenderableSphericalGrid`

* Remove the old, combined, grid example

* Apply suggestions from code review

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

---------

Co-authored-by: Alexander Bock <alexander.bock@liu.se>
2025-02-11 09:37:57 +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
b93c284551 Make the audio module adhere to the correct include ordering 2025-02-10 17:46:49 +01:00
Alexander Bock
08cfe384c5 Undo the previous change and use HorizonsTextFile again 2025-02-10 17:45:59 +01:00
Alexander Bock
b631c1c688 Make ScreenSpaceImageLocal not finding an image an error instead of a warning 2025-02-06 16:30:46 +01:00
Alexander Bock
b8e5fab5f5 Prevent crash when moving a layer to the top of a list that only has two entries (closes #3414) 2025-02-06 13:02:02 +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
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
8a567245e5 Use the correct period lengths for Neptune and Uranus
Can do that now as we have an increased-range default SPICE kernel
2025-02-03 19:50:29 +01:00
Alexander Bock
098a41b8bf Show node ID in frame information overlay 2025-02-03 19:17:27 +01:00
Emma Broman
3d3580fa65 Polish and docs for RenderableDistanceLabel and docs for RenderableNodeLine (#3485)
* Update add add documentation for `RenderableDistanceLabel`

* Move distancelabel to `base` module and remove now empty `vislab` module

* Add examples for `RenderableNodeLine` and `RenderableDistanceLabel`

* Fix faultily formatted documentation ID for `RenderableNodeLine`

* Make `RenderableDistanceLabel` unit use units from distanceconversion file

And simplify how the different names for a unit are specified

* Use new distanceUnitList() function for other classes that uses the units

* Change default unit to correct option according to documentation

* Make the text property readonly for `RenderableDistanceLabel`

* Add property to specify the precision of the number

distance label precision to docs

* Add examples with different units and descriptors

* Add docs description to `RenderableNodeLine`

* Update name in one of the examples

* Remove redundant switch cases

* Apply suggestions from code review

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

---------

Co-authored-by: Ylva Selling <ylva.selling@gmail.com>
2025-01-29 16:11:47 +01:00
Roxeena
ad0e5b92dc Clean up _lua.inl include style 2025-01-28 10:45:57 +01:00
Emma Broman
d4c4c92a5e Docs for RenderableConstellationLines and RenderableConstellationBounds (#3481)
* Update some of the base documentation to make more sense on the docs page

* Add description for `RenderableConstellationBounds`

* Add description for `RenderableConstellationLines` and names file and labels details

* Remove redundant info from description

* Apply suggestions from code review

Co-authored-by: Ylva Selling <ylva.selling@gmail.com>
Co-authored-by: Malin E <malin.ejdbo@gmail.com>

* Update constellation bound documentation based on review comments

* Update docs about labels for constellation lines as well

---------

Co-authored-by: Ylva Selling <ylva.selling@gmail.com>
Co-authored-by: Malin E <malin.ejdbo@gmail.com>
2025-01-20 15:58:37 +01:00
Emma Broman
7401f5145e Automatically reload texture for RenderableSphereImageLocal when file changes (#3500)
* Use `TextureComponent` for `RenderableSphereImageLocal`

Cleans up code and makes texture reload automatically if the file changes

* Move a faultily located include
2025-01-20 15:58:01 +01:00
Alexander Bock
5771427bd9 Add the ability to specify longitude and latitude subdivisions in RenderableSphericalGrid (closes #3494) 2025-01-20 11:26:38 +01:00
Emma Broman
c4cf883ec9 Docs and examples for RenderableDisc (#3482)
* Add description and update GUI property values

* Add examples with a single color

* Remove old example file

* Rename ellipse example and remove width

* Apply suggestions from code review

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

* Address review comments

* Also update renerable description

---------

Co-authored-by: Ylva Selling <ylva.selling@gmail.com>
2025-01-17 14:16:01 +01:00
Emma Broman
0dbc331ebf Docs and examples for RenderableBoxGrid (#3479)
* Add boxgrid examples

* Add description about the box grid renderable for the docs page

* change phrasing in example assets slightly

* Apply suggestions from code review

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

* Remove labels support for `RenderableBoxGrid`

---------

Co-authored-by: Ylva Selling <ylva.selling@gmail.com>
2025-01-17 13:50:40 +01:00
Emma Broman
e643e8d653 Make debug plane a ScreenSpaceRenderable and add documentation (#3483)
* Add screenspace version of debug plane, and an example

* Remove the old renderable

* Apply suggestions from code review

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

---------

Co-authored-by: Alexander Bock <alexander.bock@liu.se>
2025-01-17 13:47:37 +01:00
Emma Broman
16aa150f10 Polish RenderableCartesianAxes - documentation, examples, and make fading work correctly (#3478)
* Make `RenderableCartesianAxes` fade and fix opacity setting

* Update existing documentation of cartesian axes

* Add example with custom colros and parent node

* Apply suggestions from code review

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

* Include earth asset instead of using string identifer

---------

Co-authored-by: Alexander Bock <alexander.bock@liu.se>
2025-01-17 13:18:45 +01:00