* Make GlobeRotation and GlobeTranslation work for non-globes and move them to the base module
* Move ellipsoid and geodetic classes into the core
* Allow more things to take scene graph nodes instead of RenderableGlobes
* Move goToGeo and related Lua functions into the core
* Move more functions from the pathnavigation namespace into the navigation namespace
---------
Co-authored-by: Emma Broman <emma.broman@liu.se>
- 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
* 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
* Add settings to Renderable to control whether the renderbin is updated based on Opacity
* Remove duplicate RenderBin specification for RenderableSphere
* Remove unnecessary RenderBin specifications of Lagrange points
* Don't automatically update the renderbin for RenderableLabel and RenderablePlane
* Remove extra `setRenderBinFromOpacity` from RenderableSpheres
* Move information about whether a renderable should be updated when disabled
* Some cleanup of Renderable class
* Don't update the renderbin automatically if the user specified the renderbin manually
* Add property in OpenSpaceEngine for fading duration when enabling / disabling
* Add interface for fadeable components and apply to renderable
* Make layers a fadeable component
* Make globelabels a fadeable component
* Make labelscomponent a fadeable, and give it an enabled property
* Make screenspace renderables fadeable components
* Introduce concept of parent fadeables, to fade out subowners with parent
* Make rings fadeable as well
---------
Co-authored-by: Alexander Bock <alexander.bock@liu.se>
* 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
* Add the loading of a hash for wwt image files and automatically force a redownload of the files if the hash has changed
* Move the wwtdataimages location into the sync folder
* Some general code cleanup
* Some cleanup of the ImGUI code
* Reorder the panels
* Make StringPropertys work without losing value on context loss
* Add a new ImGui compoment that shows the status of the scene graph
* Add ability to render the bounding sphere as a debug option
* Separate boundingsphere and interactionspheres
* Correctly compute BoundingSpheres for more renderables (RenderablePlanesCloud, RenderableOrbitalKepler)
* Add the ability to automatically generate code to extract values out of a Dictionary (see https://github.com/openspace/codegen for more information on how to use this)
* Applied this technique to a large number of cases in the codebase
* Don't add _codegen files to the repository
Co-authored-by: Emma Broman <emma.broman@liu.se>
* 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
* Added functionality of saving out screenshots (with fixed FPS) from a recorded session during playback.
* Test of feature to request if all data is ready to be rendered, primary used in GlobeBrowsing. Need to go over how chunkTiles are set to OK (some are never OK..).
* Estimated having working request of checking if chunks with correct level have their color and height data loaded and ready to be rendered. Will re-enable frames saving and try making a movie.
* Created adaptive LOD factor based on available/unavailable tile data (such that we don't run a lot of iterations with asking for a pile of data that does not fit in the tile cache).
* Made it able to specify tile cache size in configurastion file. Renamed other Cache value to WMSCache, as we have the TileCache as well.
* Fix for when focus node has nor renderable, when checking for if dersired data has been loaded. Should probably check all renderable/planets anyway, not just a focus object.
* Fade fixes
* Clean up RenderableSphere. Add orientation properties.
* Sane defaults for Digital Universe
* Clean up New Horizons related code
* Add basic scene
* Add ability to initialize rotation as quaternion and mat3
* Adapt legacy code to new Renderable interface
* Cleanup
* CMake cleanups
* Update current year
* Update copyright header
* Use script to return list of all modules
* Update credits, license and ghoul