General CMake cleanup/overhaul
* Enable precompiled headers for all projects
* Move specifications itto separate CMakeLists files
* Add openspace-core as a subdirectory
* Move handle_modules functionality into modules/CMakeLists.txt
* Move handleapplications logic into apps/CMakeLists.txt
* Introduce openspace-module-collection interface library to simplify inclusion of modules in applications
* Turn module initialization into a two-step process to adapt to the new minimal dependency scenario
* Compile time speedup
* Remove circular dependencies between modules and core preventing multithreaded compilation on MSVC
* Build Spice multithreaded and as static library
* Remove dependency from core to module-webbrowser
* Remove unused dependency from kameleon
* Remove additional unnecessary dependencies
* Cleanup volume/kameleon/kameleonvolume modules
* Fix visibility issues. Restrict include paths
* Compile kameleon in parallel
* Other cleanup
* Only copy CEF files from one target (hard-coded to OpenSpace right now)
* Remove unused instrumentation code
* Remove the ability to render AABB for globes as it caused a circular dependency between GlobeBrowsing and Debugging
* Removing compiler and cppcheck warnings
* Turn almost all includes into non-system includes
* Don't warn on deprecrated copy
* Updated submodules
* Cleanup
* CMake cleanups
* Update current year
* Update copyright header
* Use script to return list of all modules
* Update credits, license and ghoul
* Make height map fallback layer work again
* Add documentation to joystick button bindings
* Removed grouped property headers
* Add new version number constant generated by CMake
* Make Joystick deadzone work properly
* Change the startup date on Earth to today
* Fix key modifier handling
* Add debugging indices for TreeNodeDebugging
* Fix script schedule for OsirisRex
* Do not open Mission schedule automatically
* Upload default projection texture automatically
* General code cleanup
* Fix check_style_guide warnings
* Remove .clang-format
* MacOS compile fixes
* Clang analyzer fixes
* Switch openspace.cfg file from a Dictionary-based loading to a variable based loading
* Change ConfigurationManager to not use Dictionary anymore, but a struct with explicit configuration values instead
* Add initializeGL and deinitializeGL methods to OpenSpaceModule Call releaseAll from ProgramObjectManager in deinitializeGL to guard against errors when deinitializing assets
* Change removeProgramObject function in RenderEngine to take a non-owning pointer instead of a reference to a unique pointer to make it compatible with the ProgramObjectManager
Update Ghoul repository
* Using ProgramObjectManager in more modules to reduce the number of programs compiled at startup
* Introduced guiName to PropertyOwner
* Added requirement that PropertyOwner::identifier may not contain whitespaces
* Changed Name to Identifier in asset and scene files
* Added new PropertyOwner to RenderEngine that owns the ScreenSpaceRenderables
* Moved Name and GuiPath into GUI group
* Added user-facing names to layer groups
* Rename OnScreenGui module to ImGui
* Support multiple external module folders (closes#31)
* Cleaning up CMake files
* Restructure application specification
* Add parameter for library mode to all modules
* Add functions to handle global variable state
* Misc/remove warnings (#383)
* Increase build timeout and do a clean rebuild every commit
* Simplest possible PBO implementation.
* Add PBO class
* TileLoadJob owns raw tile data
* Working on a soluton to cache textures and reuse them
* PBO and cached textures working for one texture type. Color textures.
* Threadpool for tile requests uses LRU cache as queue
* Remove framesUntilRequestFlush
* Clean up
* Clean up
* Use prioritizing concurrent job manager
* Use TileTextureInitData to initialize RawTileDataReader.
* Class TextureContainer owns the textures to use for tiles.
* Using TileTextureInitData to determine if new caches need to be created.
* Remove WriteDataDescription
* Remove TileDataLayout
* Rendering many different layer types again
* TileProviderByLevel gives layergroup id to tile providers
* Comment away use of PBO
* Erase unfinished requests to make room for new ones
* Enable choice of PBO or not.
* Enable resetting of asynctiledataprovider
* Add the ability to use PBO and also load to CPU
* Update ghoul
* Solve culling issue.
* Texture pointer of Tile is now a raw pointer. Currently break single image tile provider and text tile provider.
* Add gpudata
* Move fetching of shader preprocessing data to LayerManager
* No comparisons to determine shader recompilation.
* Show the tile cache size in the GUI
* Clean up and comment.
* Solve bug where float is interpreted as NaN
* Enable ability to blend between layers again
* Fix single image provider
* Fix windows build error
* Fix OSX compile issue.
* Some clean up
* Showing correct texture data size
* Enable use of text tile providers again. No backgroupd image path however.
* Change cache size from GUI
* Clean up
* Solve osx compilation error.
* Update ghoul
* Make it possible to switch between PBO and not during runtime.
* Enable resetting of tile datasets
* change function module in moduleengine to identify module by name
* MemoryAwareTileCache is no longer a singleton
* Update ownership of properties for globe browsing
* Logging info about resetting tile reader.
* Logging info
* Fix requested changes
* Fix some compile warnings.
* Fix compilation warnings
* Add ability to blend values with blend parameter. Also define settings through lua dict.
* Fix some comments on pull request.
* Change formatting
* Change formatting
* Change formatting
* Fix pull request comments.
* Those are details
* Make Mercury great again.
* Make Earth great again.
* Solve conflict
* Test to sometimes use valueblending and sometimes not
* Not always use value blending
* Update ghoul
* Change from auto to explicit type.
* Update test for LRU Cache
* Include algorithm.