Now allows geojson files with caps in the extension, as well as files with the .json extension.
Note that .json files will not be handled by drag-n-drop (we might want to use that extension for something else)
Add the option to add geojson components to globes, from geojson files. One geojson file creates one GeoJsonComponent, which in turn may contain multiple GlobeGeometryFeatures
Geojson is a format that supports points, lines, and polygons. In addition to the basic functionality, extra features have been added that will long-term allow rendering the geometry needed to represent KML files (another format for geospatial geometry data). Here are links to references for both formats:
Geojson: https://geojson.org/
KML: https://developers.google.com/kml/documentation/kmlreference
data/assets/examples/geojson includes some example files that I have used for testing. Any geojson file can also be added through drag-n-drop. Note however that you might need to change the AltitudeMode or HeightOffset properties for the feature to be visible.
Enables globe-browsing data to be cached using caching mrf's as it is loaded from the original dataset. Subsequent reads of tiles that have been cached do not query the original dataset but picks it up from the mrf data.
Supports anything that can be used a dataset for a gdal raster but raw images such as JPGs are explicitly disallowed as they lack necessary geotransform data.
Activated on a global scale by setting the following keys in openspace.cfg (ModuleConfigurations/GlobeBrowsing)
MRFCacheEnabled = true,
MRFCacheLocation = "<somepath>",
Settings can be overriden on a per-layer basis by adding the following entries to the layer entity of an asset
CacheSettings = { Enabled = true, Compression = "LERC", BlockSize = 512, Quality=25 },
The following per-layer settings are available and override the global module settings:
Enabled : enable/disable caching for this layer.
Compression: The compression algorithm to use for tile cache storage. (JPEG, PNG, or LERC)
BlockSize: Size of tiles in cache, should be a multiple of 2 although this is not required.
Quality: The quality setting of the JPEG compression (when used)
Note that heightlayers must use LERC compresison and this is the default unless overridden by a layer.
Adapting Lua functions to new codegen functionality
Improve the documentation itself
Add some styling to generated documentation
Have parameter names for Lua-defined Lua function documentation
Co-authored-by: Emma Broman <emma.broman@liu.se>
* Change spline curve parameter interval from [0,1] to [0,nSegments], for slightly increased precision
* Use linear paths whenever precision isn't enough/paths are too long (and traverse linear paths differently, to make them less depending on the distance)
* Remove OrbitalNavigator.LinearFlight and instead add "Zoom to" helper functions (closes#1837 )
* Add check to prevent triggering awkward short paths, for example when flying to the current target or to the same geo position twice
* Refactor speed code and handle speed when path is shorter than start+closeup distance
* Add easing to speed dampening
* Add topic for engine mode (to be used for UI later)
* Cleaner log when creating paths (some previous info messages are now debug messages)
Related PR: OpenSpace/OpenSpace-WebGuiFrontend#70
- Remove the asset_helper file and call the onInitialize and onDeinitialize functions directly
- Small compile fix on Windows
- Removes the need for the registerIdentifierWithMeta function by automatically doing that for all asset.export statements
- Allow the passing of either identifiers (as before) or entire tables to the removeSceneGraphNode, removeScreenSpaceRenderable, deleteLayer, removeAction, and export methods. In that case, the Identifier key from the table is extracted and used instead
* Cleaner handling of global state
* Prevent Lua memory corruption (closes#982)
* Initialize glfw first thing to prevent weird joystick loading bug during startup
* Replace setCameraState with setNavigationState + equivalents
* Add documentation and verification of NavigationState-related interfaces
* Documentation and verification fixes
* Change reference frame behavior
* Scene fixes
* Replace earthrise recording with navigation state and time
* Cleanup
* CMake cleanups
* Update current year
* Update copyright header
* Use script to return list of all modules
* Update credits, license and ghoul
Introduce the ability to navigate using an anchor and aim.
Example use: Set spacecraft as anchor and planet as aim to always look down at a planet, while followin the spacecraft in its orbit.
* Removal of ChunkRenderer, ChunkedLodGlobe, ChunkCuller, chunklevel evaluator, culling classes, layershadermanager, GpuLayer, GPUData, ChunkNode, Grid, BasicGrid, Chunk files, Angle, AABB classes, PointGlobe, Ellipsoid, TileSelector, tiledatatype, iodescription, simplerawtilerreader, rawtilereader
* Less dynamic allocation for SkirtedGrid, LayerManager, RenderableGlobe, TextureUnit
* Clean up memory management in RawTiles
* Code simplification
* Optimize shader uniform setting
* Introduce UniformCache
* Callback simplification
* Turn ChunkNode into a struct
* Use a MemoryPool to organize all ChunkNodes rather than use unique_ptr and the necessary memory allocation
* Collect draw calls
* Consolidate fragment shaders between local and global renderer
* Shader cleanup and optimization
* Update CMake to not include included shaders
* Integrate traversal function into the looping
* Replace std::queue with std::vector
* Merge TextureContainer into MemoryAwareTileCache
* Lazy computation of chunk bounding boxes
* Memory management of LayerGroup
* Remove class hierarchy from tileproviders (temporaltileprovider not working yet)
* Remove PBO classes
* Chunk status stored in Chunk
* Don't create a copy of the ChunkTilePile
* Enable culling by projected area on default
* Have raw tile reader return a Tile instead of a shared_ptr to a tile
* Start making GDAL mandatory
* Increase the default lod scale factor to 15
* Move global objects out of OpenSpaceEngine
* General cleanup of main.cpp
* Add default_joystick asset to all scenes
* No longer suppress mouse interaction on slave nodes
* Window delegate uses function pointers rather than subclassing
* Fix for false overwriting of ImGUI configuration file
* Change default color and tilt angle of fisheye rendering
* Restructured performance manager
* Simplify screenshot handling