Skip to content

0.14.0

Compare
Choose a tag to compare
@alexanderbock alexanderbock released this 11 Oct 19:10
· 5517 commits to master since this release

Breaking changes

  • Renamed property owner identifier from renderable to Renderable. For instance, the property Scene.EarthTrail.renderable.Enabled is now called Scene.EarthTrail.Renderable.Enabled, and likewise for all other items in the scene graph

Features

  • Added session recording feature

This feature enables the recording of camera movements and user interface interactions. When playing a recording back later, all camera movements and state changes are occurring at the same times when they did during the initial recording. The recording will start at the same in-game time and speed in which OpenSpace was when the recording was done. Recordings can be shared between computers as long as they are played back on the same scene or otherwise strange behavior might occur. There is a user interface to control the recording and there are Lua scripts available to start and stop the recording and playback openspace.sessionRecording.startPlayback(), openspace.sessionRecording.stopPlayback(), openspace.sessionRecording.startRecording(<filename>), openspace.sessionRecording.stopRecording(), and others

  • Added support for the new web-based user interface based on Chromium Embedded Framework for MacOS
  • Added a new rendering methods for rendering star catalogues that improves the visual quality and provides future support for point-spread function based rendering methods. Additionally, it adds the capability to inspect other data values that are available in SPECK files and map these to colors
  • Added an Anchor&Aim feature that enhances the previous Focus Node concept. While it is still possible to focus the camera on a single object as before and have all camera movements occur relative to that object, it is not possible to aim at a second object which then stays fixed on the screen
  • Added the ability to change the field of view for the main rendering window at run-time. Please be aware that this feature might have unintended consequences if multiple rendering windows with different field of views are shown on the same computer
  • Added an indicator showing the number of enabled layers for a globe and prevent the user from enabling too many layers simultaneously. If too many layers are enabled, the last layer will be automatically disabled
  • Added the ability to rescale Web UI during run-time
  • Added the ability to position screen space objects in 3D space so that they are culled correctly. Also added a more intuitive positioning method useful for flat screen displays as well as planetariums
  • Added a heuristic that sometimes filters out ESRI's "No data available yet" tiles and uses available lower resoltion tiles instead. This does not seem to work in all cases, and when it does not work, the "No data available yet" tile will show up as before
  • Added the support for temporarily modifying mouse sensitivity when zooming. The Z key will increase the mouse sensitivity while it is pressed down by a factor of 8, the X key will decrease the mouse sensitivity while it is pressed down by a factor of 2
  • Added shortcut to disable rendering on master node (Alt+R)
  • Introduced global and master rotation that modify the location of screen space items
  • Added a feature that will check for a new released version at program start and provide information to the user in the lower right part of the screen and it will also enter a line into the log file
  • Added more statistics for the dashboard framerate items showing the extremes, standard deviation, etc

UI Improvements

  • Added a panel for controlling the new session recording feature

To record a playback feature, you enter a filename and hit the Record button. If you want to edit the recording afterwards, enable the Text file format. The recording is stored in the recording directory by default, which can be changed in the openspace.cfg. To play back a recording either select it in the dropdown menu or enter the name of the recording file in the text file and press Play

  • Easy access settings panel for Renderables.

Each scene graph node in the Scene menu now has a wrench icon next to it which will cause a panel for that scene graph node to pop out and be separately available until it is closed by the user. Additionally, the top of the Scene menu now always contains the settings for the current focus node. If this element is popped out, it will dynamically update if the current focus node changes

  • Quick Enable feature for Renderables and Globe layers. All renderable objects and layers on globes now have a checkbox with which the object can be quickly enabled or disabled without needing to open the submenu
  • Visual indicator for enabled globe layers. If a globe layer is enabled, its text will be rendered in green; if it is not enabled, the text is white
  • Sorting of Elements. All elements in the UI are now correctly sorted; either by adhering to the GUI sorting as specified in an asset file, or sorting the planets by the their distance from the Sun
  • Improved scene menu search to make it possible to better search for objects that contain multiple words
  • Scene pane saves state between uses. When closing the Scene menu, the state of the tree will now be saved and not be closed when the menu is brought up again
  • Improved display of scene shortcuts. The list of available shortcuts are not presented in a more cohesive way to make them easier to access
  • Visual improvement of fonts rendering.

API

  • Updated GDAL version to 2.4.1
  • Finding configuration file now starts from the bin folder and continues upwards, rather than the current working directory as before
  • Add asset.filePath to asset API which contains the full path to the currently evaluated asset, enabling more useful error messages
  • Added the ability to query the OpenSpace documentation via the networking API
  • Added the ability to pass arguments to Lua scripts via JSON through the networking API
  • Added the ability to transport return values from Lua scripts back to the networking API clients
  • Added the ability to remove scenegraph nodes based on regular expressions

Content

  • Added a new WMS layer for Mars containing >500 local HiRISE patches, served by ESRI
  • Added a new scene showing the trajectory of Apollo 8, and adding many new features to the various Apollo landing sites
  • Added a new scene containing the Insight lander. The scene contains a model of the lander, its trajectory during entry into the Marsian atmosphere and the eventual landing. The model changes throughout the different phases of the landing by showing, for example, the separation of the heat shield and the deployment of the parachute
  • Added new feature to show planetary surface labels. Every major object in the Solar System, except for Earth, now has planetary labels that can be shown interactively. The labels are taken from the database of USGS
  • Added a scene showing the Gaia mission using a new and experimental multiscale renderer. The dataset that is automatically synchronized at startup only contains a few million stars for which the radial velocity is available.
  • Added grids for showing light days, light months, light years, and more. These grids can be used to show the increasing scale when leaving the solar system
  • Added the trails of the Pioneer 11 and 12 missions as they were leaving the solar system
  • Added new SPICE kernels to the Juno scene to complete its coverage
  • Added Apogee and Galah gaia subsets rendered with the new star rendering method, howing the metal abundances in a subset of stars close to the Sun
  • Small fixes to the Messenger scene
  • Added WMS layer for Enceladus, Titan, and Europa
  • Added a spherical grid representing the Oort cloud

Content Creation

  • Introducing a new base asset/scene that should not be directly loaded, but that can serve as a base for all other scenes. This scene sets up default keybindings, loads the common content of the solar system and the digital universe, loads the Web UI, and configures globe browsing customizations
  • Added the ability to create custom focus nodes on planetary surfaces from Lua that can serve as a focus node for specific surface positions, such as Mars HiRISE patches, landing locations on the Moon, and others
  • Added a new Translation lcass that uses longitude/latitude information to position an object on a globe
  • Added Lua function to query property identifiers
  • Added example assets for some components

Bugfixes

  • Fixed issue in which scene graph transformations were applied in the wrong order leading to strange results
  • Fix for a bug where the resolution of the globe layers would decrease when enabling a layer on some graphic cards
  • Fixed an issue where the loading screen would not show percentages when downloading files
  • Fixed an issue where the time notifier in the UI is not updated if the scene is paused
  • Fix for a bug where temporal WMS datasets would not be cached correctly
  • Fix a bug where the H key would not correctly show the trails again after hiding them
  • Correctly sort scene items in the Web UI
  • Fixed issues preventing multiple properties from being set simultaneously from a Lua script
  • Fix for bug where the global black-out would not work correctly
  • Only show screenspace renderables on non-UI windows

Optimizations

  • Increased rendering speed of Web UI
  • Slightly improved the rendering speed of globerendering
  • Slightly improved the rendering speed of the stars