* 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>
glm::length => squared computation => we need the double precision in the computation. Got bounding sphere values of "inf" for a few large renderables (the DU grids)...
* RenderabeDUMeshes (And reimplement reading of vertex info from speck, to make it easier to compute sphere. The plan is to phase out this renderable anyways)
* RenderablePoints
* Grids: RenderableGrid, RenderableBoxGrid, RenderableRadialGrid & RenderableSphericalGrid
* RenderableGalaxy
* 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>
* Make sure we have examples for all grid types
* Fix problems with blending when rendering transparent grids
* Rename 'GridColor' to 'Color' for better consistenty among renderables
* Fix issue with resizing box grid
* Avoid problems with line width on Mac
* 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
* Cleaner handling of global state
* Prevent Lua memory corruption (closes#982)
* Initialize glfw first thing to prevent weird joystick loading bug during startup