Commit Graph

68 Commits

Author SHA1 Message Date
Adam Rohdin
4306387f69 Faster rendering for renderableOrbitalKepler (#3739)
* Faster rendering for renderableOrbitalKepler
- Computes relevant vertices on CPU rather than filtering all vertices on the GPU
- Removes geometry shader for trails rendering
- Changed GUI name of RenderingMode "Points+Trails" to "Points and Trails"
2025-07-09 11:33:27 +02:00
Alexander Bock
909d3a2ad1 Make ContiguousMode an AdvancedUser property 2025-07-08 17:26:09 +02:00
Alexander Bock
17b182cda3 Add new Kepler data reader for the IAU's Minor Planet Center database files (#3591) 2025-04-14 19:50:05 +02:00
Emma Broman
eb709b830c Small option property cleanup (#3577)
* Notify change listeners

I can't come up with a reason for why we would not want to do this

* Remove the Display Type for OptionProperty (only used in ImGui)

* Replace extra boolean with internal anonymous addOption function

* Tiny refactor

* removed dropdown on a couple of more places

* Update optionproperty.cpp

---------

Co-authored-by: ElonOlsson <olssonelon@gmail.com>
2025-04-02 09:28:11 +02: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
5152a7a6e0 General code spring cleaning (#3525) 2025-02-22 15:28:14 +01:00
Alexander Bock
820e90eab4 Happy new year 2025-01-14 16:21:08 +01:00
Alexander Bock
0707829c7b Reducing compiler warnings (#3341) 2024-06-28 14:16:06 +02:00
Arohdin
c8606c6095 Fix jittering issues for point rendered satellites 2024-06-12 17:19:12 +02:00
Adam Rohdin
945a9a5ca8 Optimization of point and trail rendering (#3287)
Better performance for `RenderableOrbitalKepler` when running `Trails`, `Points` or `Points+Trails`.
Trails optimized by culling non-visible line strips.
Points optimized by changing a lot of calculations from double to float.
2024-06-04 18:37:04 +02:00
Emma Broman
eb1cfec7bd Renderable property info walkthrough/cleanup (#3226)
A passover of all the Parameters descriptions and PropertyInfo descriptions of the renderables in the code base to make then more consistently and concisely formatted. Also fixed some small issues and added or updated descriptions.

* Start rephrasing propertyinfos for more consistency

* Update eclipse cone propertyinfos

* Update `RenderableFov` property infos and group colors in UI

* `RenderableGalaxy` and `RenderableGlobe`

* Update more descriptions

* Moore descriptions

* Update docs for `RenderableShadowCylinder` and add properties

* `RenderableSkyTarget`, and spheres (`ImageOnline` and `ImageLocal`)

* `RnederableSphericalGrid`, and update line width info of other types, for consistency

* `RenderableStars` and `RenderableTimeVaryingSphere`

* Update more propertyinfos

* Fix inconsistent mentioning of true/false

* change some phrasings for increased consistency

* Update Renderbin description to include Sticker bin and remove extra property

* Rename `OutlineWeight` -> `OutlineWidth`

* Extend description about enable depth test for models

* Clarify what relative values mean for `RenderableNodeArrow`

* Elaborate on `RenderableLabel` size property

---------

Co-authored-by: Alexander Bock <alexander.bock@liu.se>
Co-authored-by: Ylva Selling <ylva.selling@gmail.com>
Co-authored-by: Malin E <malin.ejdbo@gmail.com>
2024-05-20 09:24:40 +02:00
Emma Broman
8ba7f32125 Add view option to renderable orbital kepler outline color (closes #3242) 2024-05-03 08:56:11 +02:00
Alexander Bock
78b3b4fb2e Adding periods to the description texts 2024-04-23 22:33:17 +02:00
Adam Rohdin
392a521423 Fix for a lot of trail related stuff (#3193)
Fixes following issues: #625 , #1067 , #1212 , #1472 , #2072 , #2235, #2964
- Trails in `renderableTrailTrajectory` now goes through the spacecraft when using `AccurateTrailPositions`.
- Trail fading controls have been improved for classes using the `renderableTrail` class.
-  `renderableOrbitalKepler` (asteroids/satellites) can now be rendered as both trails and points (or both at once). Solution implements similar functionality/controls as `renderablePointCloud`.
- Default setting for SweepChunking has been changed from `true` to `false` (iterative calculations of `renderableTrailTrajectory`).
- Some fixes related to missing points or off-by-one errors related to trail rendering
2024-04-19 16:51:17 +02:00
Alexander Bock
3ba346a227 Remove fmt::format and replace with std::format 2024-03-24 20:19:14 +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
fff6f8a627 General pass for code cleanup 2024-03-08 00:36:54 +01:00
Alexander Bock
6e29d898cf Update copyright header 2024-02-06 15:53:24 +01:00
Alexander Bock
27608634b2 Remove warnings (#2999)
* Remove warnings for MSVC, GCC, and Clang 17
2024-01-18 09:58:20 +01:00
Adam Rohdin
c91f7f5a9b RenderableOrbitalKepler trail now the whole trail properly 2023-12-12 17:37:20 +01:00
Malin E
ce789fcd22 Feature/matrix maintenance (#2875)
* Split RenderableSphere class into a local and an online sphere

* Make the video sphere derive from the regular sphere

* Make RenderableTimeVaryingSphere derive from RenderableSphere

* Some clean up

* Add general functions for renderable matrix calculations

* Make RenderableSphere and Plane use them

* Fix an issue with the RenderablePlane shader

* Make one function that returns all three types of render matrices

* Make more Renderables use the general matric calculation function

* Make more Renderable use the general matrix function

* Simplify alternative transforms for matrix calculations

* Small clean-up

* Update RenderableModel (again) to use new transform functions

* Make calc all matrix function to return tuple

* Update some more places
2023-09-21 14:22:36 +02:00
Alexander Bock
7483b912e0 Update submodules to fix compilation error on newer Clang and GCC (#2890)
* Update submodules

* Update Ghoul
2023-09-13 09:51:30 +02:00
Adam Rohdin
7bcc7073fe Removed unused variable and changed pointer initialization 2023-06-01 08:40:11 +02:00
Adam Rohdin
6dcd3dfcdd Switched multiple OpenGL calls to single a call for better efficiency 2023-05-30 20:35:55 +02:00
Alexander Bock
ca916877b2 Adapt the visibility settings for all properties 2023-04-15 09:33:31 +02:00
Alexander Bock
7565a91196 Cleanup lambda expressions and directly address Fadeable properties when adding properties 2023-04-12 23:20:53 +02:00
Alexander Bock
79ad5776cc CMake cleanup (#2489)
* CMake Cleanup
* Warning suppression with CEF
* Use SGCT tinyxml in skybrowser for now
* Disable warnings about missing field initializers
2023-02-05 23:24:12 +01:00
Alexander Bock
a2a1554c9a Small cleanup of property documentation 2023-01-09 00:11:58 +01:00
Alexander Bock
4f4764209f Happy new year 2023-01-02 11:19:33 +01:00
Alexander Bock
44e5b17ec9 Global pass over the code to remove trailing spaces 2022-11-22 21:06:52 +01:00
Gene Payne
ae84f1b120 Renderable prop change updates buffers without reinitializing GL (#2241) 2022-09-20 15:40:12 -06:00
Alexander Bock
7bc9e99b87 Feature/satellites (#2185)
* Remove planet geometry and simplespheregeometry
* Only use a single TLE loading implementation
* Add caching to the satellite loader;  Add Lua function to load kepler file
* Fix RenderablePlanetProjection specification
* Add OMM loading funtion;  Remove mean motion from Kepler parameters
* Replace TLETranslation class with GPTranslation and support OMM files
* Support loading SMDB files in kepler functions
* Merge RenderableSatellites and RenderableSmallBody with RenderableOrbitalKepler
* Update submodules
* Adapt existing satellites to new OMM file type
* Remove TLE helper
* Remove SSSB shared file and adapt sssb assets
2022-08-02 13:11:50 +02:00
Alexander Bock
163ac4dcef Cleanup of mostly asset files
- Fixes for all files
 - constexpr cleanup
 - Cosmetic changes
 - Remove punctuation from the end of messages
2022-07-28 17:21:59 +02:00
Alexander Bock
c1252902c7 More Code Cleanup (#2192)
* Harmonizing ( and ) in function calls
* static const -> constexpr
* Fix compile issue
* Unify shader tab size
* Add _fs and _vs to shaders
* Harmonize spacing
2022-07-26 11:22:41 +02:00
Alexander Bock
9cc4c595a8 Code Cleanup (#2191)
* constexpr const -> constexpr
* const char* -> std::string_view
2022-07-25 15:57:45 +02:00
Emma Broman
89908d8890 Bring back the opacity of RenderableOrbitalKepler
And some other properties that seems to have been accidentally removed in 9e69300642
2022-05-04 11:35:56 +02:00
Alexander Bock
99d2bddf7c Address coding style and remove compiler warnings in many places 2022-04-11 18:31:45 +02:00
Alexander Bock
02adcf570e Add a hidden "Fade" property that modifies the effective opacity to enable other functionality (closes #1970) 2022-04-05 23:53:33 +02:00
Micah Acinapura
9e69300642 unified renderbin to renderable; adapted orbitalkepler to codegen; fi… (#1843)
* unified renderbin to renderable; adapted orbitalkepler to codegen; fixes 1842

* update for pr comments

* update for pr comments2
2022-02-17 10:58:32 -05:00
Alexander Bock
e8072495ec Feature/warnings (#1885)
Remove many warnings from MSVC, Clang, and GCC
2022-02-16 18:33:12 +01:00
Alexander Bock
d7d279ea16 Happy new year 2022-01-01 12:32:55 +01:00
Alexander Bock
63cbf270ee Adapt to changes in codegen that require specifying the identifier in the codegen::doc function 2021-05-25 23:10:12 +02:00
Alexander Bock
2aa540a112 Feature/interactionsphere (#1561)
* Add ability to render the bounding sphere as a debug option
* Separate boundingsphere and interactionspheres
* Correctly compute BoundingSpheres for more renderables (RenderablePlanesCloud, RenderableOrbitalKepler)
2021-04-26 13:13:36 +02:00
Emma Broman
29e77534c7 Make use of new verifiers (Color and File) (#1510)
* Use codegen for renderable discs

* Utilize color and file verifier

* Add missing property assignment in exoplanets module
2021-03-02 08:11:49 +01:00
Alexander Bock
cb5929972a Don't call RenderableOrbitalKeplers's initializeGL only once 2021-02-18 22:42:17 +01:00
Gene Payne
f4e7d01aa7 Fixes for Issue #1409 (#1501)
* Fixed renderablesmallbody selective rendering props to accept asset file settings

* Set to only show selective rendering log info msg if render size is 1

* Mirrored selective rendering behavior from smallbody to satellites

* Added property coupling of values to satellite/asteroid render settings for size, start index, upperlimit

* Fix for selective rendering with synced render settings

* Removed redundant property definitions for codegen compliance

* Improvements to documentation and handling values spec'd in asset file

* Fix for satellites: selective rendering settings specified from assets
2021-02-17 12:41:05 -07:00
Alexander Bock
7004c02b86 Happy new year 2021-01-02 15:26:51 +01:00
Alexander Bock
067c0f4b27 Introduction of new Dictionary class (#1446)
* Adapting to introduction of new Dictionary class in Ghoul
 * Mainly replacing usage of float instead of doubles as expected
 * Adjust to the lack of the hasKeyAndValue function
2021-01-02 15:07:11 +01:00
Alexander Bock
86bb19d81c Feature/warnings (#1425)
* Remove MSVC, GCC, Clang compiler warnings
* Remove cppcheck warnings
2020-12-07 23:43:05 +01:00