Gaia Sky Changelog

What's new in Gaia Sky 3.6.0-3

Mar 15, 2024
  • Bug Fixes:
  • Back-buffer scale initialization when config file is resetted.

New in Gaia Sky 3.6.0-2 (Mar 14, 2024)

  • Bug Fixes:
  • Camcorder record and play button inconsistent states.
  • State handling in the camcorder.
  • Sleep(seconds) call also respects the camcorder FPS setting during recording.
  • Rename some API calls, deprecate old versions.
  • Add companion calls for camera orientation and position transitions.
  • Orbit coordinate not working when time is before the orbit start.
  • Features:
  • Annotate camera files with frame rate so that playback can adjust it automatically.

New in Gaia Sky 3.6.0 (Mar 12, 2024)

  • Bug Fixes:
  • Check leap years in date dialog.
  • Prevent NaNs in some camera operations.
  • Clean up test scripts a bit.
  • StartRecordingCameraPath(String filename) does not use the filename correctly.
  • Build System:
  • Update dependency library versions.
  • Features:
  • Add 'textureAttribute' to particle sets, so that textures are selected with respect to the value of an attribute.
  • Use local dataset descriptors to construct catalog infos, when they are not explicitly set.
  • Enable local data information in the '+ info' window. This displays the local data on an object. In particle and star groups, the extra attributes are also offered.
  • Enable extra arguments of type string for star and particle sets.
  • Rename 'star systems' group to 'exoplanets & extrasolar systems'. Add icons to group title in dataset manager.
  • Add time transition API call and test script.
  • Add support for multiple key sets bound to actions in hotkey tooltip.
  • Keyframes and camera path file saving no longer overwrites existing files. Instead, it generates a new unique file name based on the given one.
  • Support comma- as well as whitespace-separated values for camera and keyframes files. Default to comma-separated values for writing.
  • Add support for OptFlowCam (Piotrowski 2024) method to convert keyframes into camera path files. Gaia Sky calls the local python3 interpreter to process the keyframe files, so a local python3 installation (with numpy) needs to be in place for it to work.
  • Reorganize keyframes window layout for better use of space.
  • Add support for B-splines, additionally to Catmull-Rom splines, as a method for interpolating positions between keyframes.
  • Add API call to get the window coordinates of an object, in pixels.
  • Add API calls to do camera transitions only in position and orientation.
  • Add different durations for the transitions in position and orientation in the API call.
  • Add smooth interpolation methods to cameraTransition() calls. The new methods can use either a logistic sigmoid or a logit function. Smoothing factor is configurable via a parameter.

New in Gaia Sky 3.5.9 (Feb 19, 2024)

  • Bug Fixes:
  • Remove support for cloud SVT shadows, as this necessitates the cloud SVT and the diffuse SVT to be exactly the same (same depth, same available tiles, etc.), and this is not usually the case.
  • Concurrency error in procedural generation progress bar update actions.
  • Present filter results in dataset manager in expanded panes.
  • Prevent the creation of multiple dataset preferences window for the same dataset.
  • Prevent NPE crash during the creation of the error dialog. Part of #765.
  • Prevent null pointer when updating star sets. Fixes #766.
  • Typo in French translation.
  • Appimage actually includes unpacked JRE distribution correctly.
  • Build System:
  • Add pgp signature to build process instead of checksums.
  • Features:
  • Do not force safe mode on Macs powered by apple silicon anymore.
  • Add support for arbitrary affine transformations to datasets, and add controls to create and edit them in the datasets pane.
  • Improve layout of the filters window by moving the 'add' button to the top and adding a scroll pane in the content.
  • Improve default window skin by adding some padding and a better sprite.
  • Rename dataset preferences to dataset visual settings. It now contains some sliders to modify the point size and the min/max solid angles. It does not contain filters or dataset information anymore, as those were extracted to their own dialogs.
  • Separate filters from dataset preferences into their own button/window in datasets pane.
  • Add affine transformations to all datasets (particle group, star group, variable star group, billboard group, orbit elements group). These transformations are applied in the shaders so that they can be updated on the fly. The billboard group object has been moved inside the generic catalog archetype; the Milky Way appears as a dataset now.
  • Add min/max particle solid angle size and number of labels to particle dataset load dialog.
  • Add support for additional texture(s) in raymarching shaders.

New in Gaia Sky 3.5.8-3 (Jan 29, 2024)

  • Bug Fixes:
  • Make sure a focus' star ancestor exists before trying to get its parenthood in the octree.

New in Gaia Sky 3.5.8-2 (Jan 29, 2024)

  • Bug Fixes:
  • Visual settings reset operation implemented in one place only.
  • Number of reported layers by OpenXR driver can be 0, otherwise app does not start. Fixes #763.

New in Gaia Sky 3.5.7-3 (Nov 29, 2023)

  • Bug Fixes:
  • Columns corresponding to the same UCD maintain the order of appearance in the source table when used.
  • Use concurrent hash set in 'selecting' list in the OpenXR input listener to prevent concurrent modification errors.
  • Resizing log window does not resize contents. Fixes #749.
  • Prevent getting name from second closest if it is invalid. Fixes #750.
  • Use logical keys instead of key codes by converting GDX's codes to GLFW, which uses the logical keyboard layout. Fixes #748.
  • Rename makefile, update build script to detect /opt/gaiasky installation.
  • Use default mappings file if the configured one does not exist.

New in Gaia Sky 3.5.7-2 (Nov 21, 2023)

  • Bug Fixes:
  • Restore octree drawing functionality.
  • Always initialize star group sorting data (not only if 'numLabels' = 0), otherwise the system may crash, for it is used elsewhere for other purposes.
  • Check active list in star set exists before using.
  • Free XR events after using them.
  • Make sure that a mesh exists before disposing.
  • Rename scene::star::group::numLabel configuration property to scene::star::group::numLabels.
  • Build System:
  • Update gradle wrapper script files and jar.
  • Features:
  • Add script to generate gitstats from repository.
  • Display stars with missing radial velocity information as 'N/A' instead of 0. This requires a re-generation of the catalogs.
  • Add oblateness to sphere parameters.
  • Artificially increase the number of labels setting in star groups of compact octrees (fewer than 3 nodes).
  • Enable numLabels attribute for star set objects in order to control the number of labels rendered for a given star set.

New in Gaia Sky 3.5.7 (Nov 7, 2023)

  • Features:
  • Add surface exploration mode for planets, where the camera moves relative to the position of the pointer when close to a planet or moon.
  • Implement smooth transition between SSR-based reflections and cubemap-based reflections.
  • Add floating-point completion rates to billboard datasets.
  • Add Debian build files. Add Makefile. Add createDebian task to gradle build script.
  • Updated Bulgarian translation
  • Bug Fixes:
  • Recursive tile lookup in sparse virtual textures module does not work correctly.
  • Crash when enabling 'Others' component type at startup in VR.
  • Sizing of datasets scroll pane with expand/collapse groups is incorrect in some instances.
  • Add free space check before downloads, and clean up properly after a failed extraction operation. Fixes #744.
  • Autoscroll to target when cycling through UI elements with gamepad left stick. Selection and action with gamepad in dataset manager window.
  • Zero-length keyframed path crashes the 'normalize times' action. Fixes #741.
  • Add missing, untranslated strings to I18N files. Fixes #740.
  • Start and dataset manager buttons do not scale horizontally with content.
  • Ascending node parameter in rotation component does not apply correctly. Bump source version to 3.5.7, for new data is needed.
  • Prevent SVT level overflows, and prompt for restart when tile cache size is modified in preferences.
  • Remove custom amount of vertical scroll in scroll panes. Scrolling should now be much easier.
  • Build System:
  • Upgrade to LibGDX 1.12.1 and LWJGL 3.3.3.
  • Style:
  • Add missing deprecated tags to deprecated items.
  • Merge Requests:
  • Merge branch 'RacerBG-bg-update'

New in Gaia Sky 3.5.6-2 (Oct 24, 2023)

  • Bug Fixes:
  • Null pointer in context menu.
  • Prevent SVT library to use dFdx() and dFdy() in vertex shaders.
  • SVT detection shader still passing lights explicitly.
  • Shadow map camera direction with point lights.

New in Gaia Sky 3.5.6 (Oct 20, 2023)

  • Features:
  • Add film grain filter (disabled by default).
  • Set a maximum age for .part download files of 6 hours.
  • Improve recursive grid with travelling pulses and a noise mask.
  • Add 'animate' setting to recursive grid preferences to toggle animation on and off.
  • Add checkbox to control recursive grid animation.
  • Add initial notice about Gaia Sky contacting the server to get the dataset updates list.
  • Improve shader compilation error handling.
  • Enable elevation (height) representation without tessellation in a new 'regular' mode. This is the new default mode, as tessellation is a bit to taxing on old and integrated GPUs.
  • Discontinue parallax mapping elevation type; the new vertex displacement type supersedes it.
  • Add full support for point lights, and use them for stars.
  • True depth-tested close-by stars, also working with light glow enabled.
  • Bug Fixes:
  • Prevent creation of background blur object, as camera motion blur was disabled a few versions ago.
  • Use predicted position for tracking objects.
  • 'reload defaults' button in visual settings component actually sets the default value to the elevation multiplier slider.
  • New star shader in Intel GPUs.
  • Mouse coordinates collision with objects when back buffer scale != 1.
  • Build System:
  • Set -source to 16 in gradle build script to enable pattern matching in instanceof.
  • Code Refactoring:
  • Move GLSL snippet shader chunks to own directory assets/shader/snippet.
  • Rename shaders from 'normal' to 'pbr'.
  • Style:
  • Code style now formats Javadoc comments.

New in Gaia Sky 3.5.5-2 (Oct 4, 2023)

  • Bug Fixes:
  • crash fetching entity elevation due to the focus not being set yet.
  • Build System:
  • add check for revision >= 2 in release script.
  • automate creation of HTML downloads table and properly use 'pkgver' and 'pkgrel' fields in AUR package.

New in Gaia Sky 3.5.5-1 (Oct 3, 2023)

  • Features:
  • Update umbra and penumbra highlight colors.
  • Improve default pane background, touch up mini-map layout.
  • Add collapsible groups and per-group 'select all' and 'select none' controls to dataset manager.
  • Add transparency support (encoded in diffuse texture/color) to shadow maps.
  • Add support for scattering diffuse material properties in default and tessellation shaders.
  • Bug Fixes:
  • Regression where all actions were printed to stdout.
  • Unexpected and weird behaviour when spamming repeatedly left buttons in new UI.

New in Gaia Sky 3.5.5 (Sep 29, 2023)

  • Features:
  • Add new user interface which replaces the old controls window. The old controls window is still available (activate it in preferences window).
  • Add new 'play camera path' action, bound to alt+c by default.
  • Update default control pane key bindings (time, camera, visibility, etc.) to not use the Alt key.
  • Add better star close-up shader, and a new 'scene settings' section in preferences window with an option to render stars as spheres.
  • Prepare PBR shader to accept iridescence, transmission and thickness values.
  • Revamp shader include directive to accept different extensions and file references in angle brackets. All shader libraries moved to shader/lib.
  • Retire Gaia FOV camera modes.
  • Adjust default atmosphere exposure value.
  • Disable fading scrollbars everywhere.
  • Tune normal strength in tessellation shaders to map to elevation multiplier.
  • Bug Fixes:
  • Enable full shader file names in raymarching shaders.
  • Typo, 'user interface resetted' -> 'user interface reset'.
  • Restore height sampling functionality to prevent clipping through tessellated terrain.
  • Remove cinematic camera slow-down when close to the surface of a planet.
  • Scale tessellation quality using the body size to prevent severe slow-downs in smaller bodies.

New in Gaia Sky 3.5.4-1 (Sep 22, 2023)

  • Bug Fixes:
  • move action stuttering on some systems due to no input changes since last sync.
  • application title in loading screen squashes the logo.
  • Build System:
  • set bundled JRE version to 17 instead of 20; seemingly, there are non-negligible performance issues with the JRE 20 on some configurations.

New in Gaia Sky 3.5.4 (Sep 20, 2023)

  • Features:
  • Add square recursive grid style, additionally to the existing circular concentric rings.
  • Add diagonal lines at 30 and 60 degrees to the circular recursive grid.
  • Redesign time pane layout and widgets (warp slider, play/pause, information boxes, etc.) in controls window.
  • Upgrade internal version numbering to include a sequence number within the revision (major.minor.revision-sequence). It should be backwards compatible, but starting with this version, internal version numbers have at least 7 digits instead of 5.
  • Bump source version number.
  • Refactor separator UI elements.
  • Redesign loading screen to follow welcome screen style.

New in Gaia Sky 3.5.3 (Sep 14, 2023)

  • Bug Fixes:
  • Atmosphere object distance falloff.
  • Exit JVM process with a proper status code depending on application state.
  • Mismatch in bundled JRE versions in install4j script. Fixes #737.
  • Glitches and artifacts in atmosphere ground tessellation shader.
  • Base opacity applied to model bodies when rendered as billboards.
  • Update minimum required JRE in install4j script to 15. Fix version tag.
  • Use camrecorder target frame rate instead of frame output system one in keyframes.
  • Check keyboard focus state when polling cursors in main mouse/kdb listener. Fixes #733.
  • Raymarching event description.
  • Small improvements in UCD parser for IDs and magnitudes.
  • Do not preemptively check display resolution in macOS, as it usually runs a headless JVM.
  • Clean editing keyframe on deletion. Fixes #734.
  • Do not render keyframe lines/points when camcorder is playing. Fix index issue in path linear interpolator. Fixes #735.
  • Features:
  • New welcome screen title design and splash.
  • Add check for keyframe timings (t_kf * fps % 1 == 0) and respective notice.
  • Add new visibility type 'Keyframes', which controls the keyframe points and lines. Add new keyboard mapping SHIFT+K to toggle it.
  • Add tooltips to keyframe playback buttons.
  • Move onlyBody trajectory attribute to bodyRepresentation, which is an enum that enables the representation of only body, only orbit or both. The onlyBody attribute is still kept as a proxy. Rename pointColor to bodyColor in trajectories. pointColor is kept as an alias.
  • Skip back/fwd, step back/fwd, play/pause and timeline slider all work. Move keyframes logic and model to keyframe manager.
  • Add direct playback capability to keyframes. Still WIP.
  • Keyframe system to use new camera path object in export operation.
  • Move from buffered file-backed recording and playback to model-backed solutions for the camrecorder. This means that, during recording, the data is captured and stored in memory and persisted to disk when the recording finishes. During playback, the data is loaded to memory at once at the beginning and played from there.
  • Use quaternion spherical linear interpolation for the camera orientation when exporting keyframes. The old setting 'camrecorder > keyframe > orientation' is not used anymore.
  • Use quaternion interpolation for the camera transition methods in the scripting API implementation.

New in Gaia Sky 3.5.2 (Jul 26, 2023)

  • Bug Fixes/:
  • Exporting keyframes to camera path is missing the very last frame. Fixes #729.
  • Restore line rendering in keyframes, lost in a regression during the line refactoring campaign.
  • Only deactivate main mouse/kbd listener if the current dialog is modal.
  • Full-screen log item in translation files.
  • Visual layout and information structure in about window, system tab.
  • Apply patch provided by luzpaz fixing many typos in comments and strings. Fixes #726.
  • Features:
  • Improve keyframes window layout, with more space for keyframes and better sizing of keyframes table.
  • Default to full screen for small displays, and refactor display resolution fetching process.
  • Check AMD APU code name to detect Steam Deck.
  • Steam deck programmatic detection to default to full screen at startup.

New in Gaia Sky 3.5.1 (Jul 19, 2023)

  • Bug Fixes:
  • paths in Windows do not accept certain characters and are unsuitable to represent our bookmarks. Add specific BookmarkPath implementation that fixes this.
  • VR flag from --openvr to --openxr.

New in Gaia Sky 3.5.0 (Jul 17, 2023)

  • Bug Fixes:
  • Labels in shape objects not showing up, focusable shape objects not working.
  • Unchecked cast in focus check method.
  • Welcome screen Gaia Sky icon causing problems with macOS package.
  • Initialize screenshots and frame output post processor even if not initially active.
  • Documentation:
  • Add note concerning support for Apple M1/2 ARM.
  • Features:
  • Add support for reference system transformations to STIL data provider.
  • Add image format and quality to preferences dialog for screenshots and frame output system.
  • Add dark background to content frame in welcome screen.
  • Do not force-show dataset manager when no base data is found.

New in Gaia Sky 3.5.0 RC 1 (Apr 27, 2023)

  • Features:
  • Add arbitrary warping mesh support to distort the final image according to a warping mesh file in PFM (portable float map) format.
  • Proper lens flare post-processing effect.
  • Replace lens flare checkbox with lens flare strength slider.
  • Enable choosing the lens flare type (pseudo lens flare, real lens flare) in the settings. Make new lens flare the default.
  • Increase chromatic aberration amount in pseudo lens flare effect.
  • Add maximum number of virtual texture tile load operations per frame to settings file, and increase its default value from 3 to 8. Use a deque instead of a queue for the tiles waiting to be loaded, and add the newly observed tiles to the head instead of the tail.
  • Move archetypes definition to JSON file to facilitate the automatic generation of documentation.
  • Move attribute map definition to JSON file, which contains the definitions of all the attributes per component, and also a description for each of them. The aim is to generate part of the data format documentation from this JSON file.
  • Add variations of API calls concerning positions using the distance units as an extra parameter.
  • Enable implementing body coordinates directly from Python scripts. Add new API calls and a full script example with data files.
  • Add chromatic aberration shader, together with a slider in the preferences window to disable it or control the amount.
  • Enable proper motion for single particles, fix issues with tracking.
  • Add (partial) support for glTF, binary glTF and embedded glTF.
  • Add support for ambient occlusion sampler (standalone and with metallic and roughness channels) in PBR normal and tessellation shaders.
  • Support 'standard' PBR attributes in OBJ loader.
  • Add (hidden) attribute "renderParticles" to star and particle sets to disable the rendering of particles and stars for that set.
  • Add aliases to label position for pc and Km, remove unnecessary operations from shape updater.
  • Add keyboard mapping and action to multiply the camera movement speed (mapped to 'Z' by default).
  • Add actions and key bindings to toggle the camera mode and the cinematic behaviour.
  • Support translation in Km with the 'translateKm' attribute.
  • Directly support archetype names in JSON data format, additionally to the legacy class names.
  • Enable affine transformation support for shape objects.
  • Add warp mesh file selector to preferences, to select the warping mesh for the new spherical mirror projection. Fix layout for file choosers in frame and screenshot locations.
  • Add support for the spherical mirror projection in planetarium mode.
  • Add upscale filter setting to preferences, add XBRZ upscale shader, filter and effect.
  • Expose upscale filter setting to UI via a select box in the preferences window.
  • Non user-prompted events (download fail, checkum error, etc.) create persistent notifications which need to be closed manually. Persistent notifications are accompanied with a close button to indicate they need to be closed manually.
  • Add parallax demo script.
  • Separate height scale from elevation multiplier in shaders. Decrease step of some sliders.
  • Enable arbitrary parameter map injection in data loaders.
  • Add ``fadeDistanceUp`` and ``fadeDistanceDown`` to trajectory objects to control the fading distances when a body is present.
  • Add animations to all UI elements, add animation time to settings.
  • Add in/out animations to gamepad GUI and maximize/minimize to debug and focus interfaces. Add animation time as a new setting in settings file. Promote date dialog to generic dialog.
  • Add size attribute to ray-marching effects, enable absolute predicted positions for ray-marching effects, instead of only a static position.
  • Add per-vertex colors (instead of per-segment) to polyline quadstrip renderer for smooth shading.
  • Add shortcut to settings in context menu.
  • More on input.
  • First OpenXR test, not working on Linux over SteamVR due to unsupported swapchain formats.
  • Add ambient level and color to individual models.
  • Add 'fixed angular size' support for star datasets. It renders all stars with a fixed angular size. In the case of variable stars, if a fixed angular size is set, the variability is expressed via the opacity.
  • Bug Fixes:
  • Slider texture filtering issue in green, blue, orange and red themes.
  • Star surface shader crash when motion blur is on.
  • Non-canonical OpenGL parameters in some configuration calls.
  • Headless mode crashes on start.
  • Star billboard and quad positions in stereo mode.
  • Absolute position method in particle set does not guard against null parameters. Fixes [#710](https://codeberg.org/gaiasky/gaiasky/issues/710).
  • Dataset manager layout, especially on low-resolution displays.
  • Move hardcoded billboard galaxy threshold to model initializer.
  • Single star rendering from afar, spherical position determination, graph update sequence for proper motion and other objects, bypass area and loc update when components are off, camera position lock for stars in star sets.
  • Several issues with single star rendering and magnitude initialization.
  • Add mechanism to automatically disable certain post-processing effects on certain render modes (e.g. light glow on panorama/planetarium mode).
  • Internal dataset loading operations out of order: move scene graph insertion before set-up.
  • Enable model-less shape objects for label-only use cases.
  • Removing objects with children only effectively removes the first children, leaving orphan objects in the scene graph which do not get updated but get added to the render lists.
  • Removal of an object from the graph does not remove its children.
  • Normals, bi-normals and tangents in icosphere creator.
  • Crash with static light models, file filter in dataset loader.
  • Cloud virtual textures not working due to missing shader attribute.
  • Crash loading wrongly constructed cluster file.
  • Trail attribute of orbits not always working. GPU non-trail orbits not working.
  • Code Refactoring:
  • Use solid angle component instead of hardcoded variables for star cluster thresholds.
  • Move 'forceLabel' attribute to Label component.
  • Build System:
  • Upgrade to Gradle 8.1.1.
  • Documentation:
  • Add package descriptions, refactor API interfaces to own packages.
  • Improve documentation of some API calls.
  • Update AppStream metadata file with proper id and screenshots.

New in Gaia Sky 3.4.2 (Mar 15, 2023)

  • Bug Fixes:
  • Labels in shape objects not showing up, focusable shape objects not working.
  • Unchecked cast in focus check method.
  • Welcome screen Gaia Sky icon causing problems with macOS package.
  • Initialize screenshots and frame output post processor even if not initially active.
  • Documentation:
  • Add note concerning support for Apple M1/2 ARM.
  • Features:
  • Add support for reference system transformations to STIL data provider.
  • Add image format and quality to preferences dialog for screenshots and frame output system.
  • Add dark background to content frame in welcome screen.
  • Do not force-show dataset manager when no base data is found.

New in Gaia Sky 3.4.0 (Feb 13, 2023)

  • Features:
  • Sparse virtual texture support.
  • Add initial support for the JPEG-XL (.jxl) image format.
  • Add filter box to dataset lists in the dataset manager.
  • Add 'clear' button to text fields to clear the contents at once.
  • Implement proper update mechanism for objects via JSON descriptors.
  • Bug Fixes:
  • Escape config file backup path in Windows.
  • VR controller paths in VR context. Fixes #702.
  • Build task including certs and other unneeded stuff.
  • Implement bilinear interpolation on SVT, make interpolation generic regardless of data structure used.
  • Skip only GB instead of GBA in RGB buffer readout in automatic tone mapping effect.
  • Error computing mean position in particle set when there are no particles.
  • Build System:
  • Upgrade build script to install4j 10.0.4.
  • Code Refactoring:
  • Move source version to settings.
  • Move light glow code to own render pass class.
  • Move shadow map code to own render pass class.
  • Documentation:
  • Flag Gaia Sky VR as alpha software.

New in Gaia Sky 3.3.2 (Dec 19, 2022)

  • Bug Fixes:
  • Stop intercepting data location in paths, implementation did not work for Windows when the original path contained '*', and it was useless anyway, as we always use fully-defined paths.
  • Avoid expanding dataset file paths in dataset manager to prevent horizontal overflow.
  • Features:
  • Improve drag rotation behaviour when very close to objects.

New in Gaia Sky 3.3.1 (Dec 13, 2022)

  • Bug Fixes:
  • Backup/restore perspective camera state before/after rendering off-screen frames and screenshots to avoid rendering artifacts whenever any of the cubemap-based modes (planetarium, panorama) is on.
  • Context menu crashes when no object is hit. Fixes #694.
  • Add 'gamepads detected' notification text to I18N files.
  • Screen resizing sets internal resolution state and is persisted on restart. Adjust automatic UI scaling algorithm.
  • Apply 'angle from zenith' in planetarium mode as camera rotation instead of as an effect parameter to enable 5-side optimization when aperture <= 180.
  • Reimplement automatic tone mapping algorithm and manager.
  • Refocusing on a star set does not always work.
  • Camera speed API call not mapping values correctly.
  • Add 'compiling shaders' message during loading process.
  • Bookmarks to stars not selecting the right objects.
  • Affine transformations applied correctly to mesh objects.
  • Build System:
  • Changelog creation script now does not produce a full change log for the whole history of the project anymore. It now gets the tag or tag range as input and the maintainer is supposed to update the CHANGELOG.md file manually. The changes are provided since a few releases ago in the release notes file.
  • Code Refactoring:
  • Move ambient light watcher from main Gaia Sky class to own inner class, remove unused event.
  • Guard GLSL libraries with #ifndef/#define preprocessor statements to prevent double definitions.
  • Change screenshots system from poll to reactive.
  • Rename controller GUI to gamepad GUI.
  • Move content of 'Gaia' tab to 'Data' tab in preferences window.
  • Documentation:
  • Improve contributing guidelines for translations.
  • Features:
  • Re-balance the weights for every axis-mapped action in main gamepad listener, resulting in a much smoother navigation with game controllers and joysticks.
  • Add sRGB color space support in preparation for migration to OpenXR. Activate it with the key graphics::useSRGB in the configuration file.
  • Add support for images in tip generator, include gamepad input images.
  • Complete Spanish translation to 100%.
  • Add star visual settings to gamepad GUI.
  • Add preliminary keyboard support for navigating UI menus and windows.
  • Add star glow factor control and API call to fine tune the amount of light irradiated by stars close to the camera.
  • Add screen mode button at the top-right of the welcome GUI.
  • Increase global font size and UI spacing.
  • Generic controller support in all UI windows.
  • Add gamepad support in dataset manager window.
  • Remove music component from controls window.
  • Activate lazy shader loading for all but the basic shader versions (SSR, motion blur, relativistic mode, gravitational waves).
  • Migration to new dataset structure, add data location cleaner utility at startup.
  • Add some extra room between dataset types to improve readability.
  • Support gzipped data descriptor files.
  • Introduce index of refraction for the celestial sphere when orthosphere view is on. Included as a slider in the experimental section of the GUI.

New in Gaia Sky 3.3.0 (Nov 11, 2022)

  • Bug Fixes:
  • Disable tessellation on macOS by default.
  • Most recent version determination in version checker.
  • Remove unnecessary spacing in layout of focus info interface.
  • Trajectory size determination algorithm not accurate, breaks when adding points close to the origin.
  • Add model size attribute to compute solid angle for model objects more accurately.
  • Correctly query graphics device for resolution and apply scaling.
  • Toggling SSR and motion blur does not update depth state in some shaders.
  • Double definitions in shader libraries.
  • Render constellation boundaries as closed polygons in order to avoid artifacts.
  • Index errors in keybaord in controller GUI.
  • Back-buffer scale is now applied correctly (and only once), works with external view.
  • Remove angle from zenith from cubemap renderer in planetarium, use shader-based solution.
  • Prevent rendering titles if panorama mode is on.
  • Initialize position from coordinates object during initialization phase.
  • Land at location never returns. Fixes #674. #674
  • Set foucs with FocusView object type. Fixes #671. #671
  • Provide a correct index mapping for arbitrary attributes with string values.
  • Particle size of interactively loaded point cloud datasets.
  • Vertically flip UV coordinates of two-faced billboard to correct texture orientation.
  • Vertically flip UV coordinates of two-faced billboard to correct texture orientation.
  • Regression in billboard group rendering. Fixes #663. #663
  • Update coordinates in invisible only when present. Fixes #662. #662
  • Prevent runtime error due to non-invertible matrix in spacecraft entity.
  • Diffuse color contribution calculated incorrectly when nLights > 1 in normal shaders.
  • Diffuse color contribution calculated incorrectly when nLights > 1 in normal shaders.
  • Names in star groups can now be localized, fix focus name in panel.
  • Names in star groups can now be localized, fix focus name in panel.
  • Translate strings of filters, shapes, datasets and minimap. Fixes #403. #403
  • Moon orbits are recomputed more often.
  • Filters crash with instanced star renderers.
  • Modal windows made not collapsible by default.
  • Hotkey tooltip backgrounds.
  • Jump in Pluto's orbit due to deviation between full periods.
  • Highlight 'all visible' setting in quad-based star renderers.
  • Frame sequence number synchronized, value updated when opening preferences.
  • Use view angle instead of view angle apparent in go to object API call.
  • Increase number of vertices of minimap shape renderer, fixes crash in heliosphere minimap.
  • Typo in Jupiter English translation file, add meshes to data descriptor file.
  • Break link in dataset manager if too long.
  • Make sure direction and up vectors are orthogonal in camera transition call.
  • Increase size star point buffer when needed.
  • Null-check satellite attitude before getting quaternion. Fixes #402. #402
  • Empty tips may crash Gaia Sky at startup.
  • 'add scene graph object' event missing source object. Fixes #400. #400
  • Remove phase of pi radians in default-model orbital elements.
  • Regression with libgdx 1.11.0 that caused vertical tooltips.
  • Null-check settings in crash reporter.
  • Workaround for libgdx backslash bug in asset manager. Fixes #398. #398
  • Hide system cursor correctly with GLFW until libgdx 1.10.1 is released.
  • Use minimum widht for debug interface to prevent dynamic resizing depending on content.
  • Build System:
  • Update changelog template repository to codeberg.
  • Upgrade gradle wrapper version to 7.5.1.
  • Update gitlab references to codeberg, when possible. Use codeberg API for version checking.
  • Update gitlab references to codeberg, when possible. Use codeberg API for version checking.
  • Remove gitlab CI file.
  • Remove gitlab CI file.
  • Move namespace from 'gitlab.com/langurmonkey' to 'gitlab.com/gaiasky'.
  • Docs project no longer a submodule.
  • Add aarch64 JRE to macOS bundle for M1 machines. Move to macOS single bundle archive from deprecated old single bundle.
  • Force safe graphics mode on M1 macOS.
  • Upgrade to libgdx 1.11.0 and LWJGL 3.3.1 --- this adds M1 Mac support.
  • Use default GC (G1) in favor of Shenandoah (only LTS).
  • Code Refactoring:
  • Move render lists to java collections.
  • Flatten object hierarchy by removing some classes, merging their functionality upwards.
  • Abstract attitude loading system, remove gaia class, use heliotropic satellite.
  • Add I18nFormatter to reformat i18n files.
  • Flatten object hierarchy by removing some classes, merging their functionality upwards.
  • Abstract attitude loading system, remove gaia class, use heliotropic satellite.
  • Add I18nFormatter to reformat i18n files.
  • Add I18nFormatter to reformat i18n files.
  • Add I18nFormatter to reformat i18n files.
  • Flatten object hierarchy by removing some classes, merging their functionality upwards.
  • Add I18nFormatter to reformat i18n files.
  • Add I18nFormatter to reformat i18n files.
  • Remove old date formatting infrastructure (desktop, html, mobile) in favor of a direct approach.
  • Abstract attitude loading system, remove gaia class, use heliotropic satellite.
  • Add I18nFormatter to reformat i18n files.
  • Add I18nFormatter to reformat i18n files.
  • Remove old date formatting infrastructure (desktop, html, mobile) in favor of a direct approach.
  • Add I18nFormatter to reformat i18n files.
  • Remove old date formatting infrastructure (desktop, html, mobile) in favor of a direct approach.
  • Remove useless number formatting infrastructure.
  • Remove old date formatting infrastructure (desktop, html, mobile) in favor of a direct approach.
  • Documentation:
  • Update in-app mastodon reference from cat to social, as it's in English.
  • Remove twitter link, add mastodon hashtag.
  • Typos and so.
  • Improve comments on color maps GLSL code.
  • Add new panorama orthographic projection to API javadocs.
  • Remove wrong license (leftover from old copy-paste) in fisheye fragment shader code.
  • Add contributor
  • Update repository pointers to codeberg.
  • Features:
  • Enable minimizing focus info interface, fix debug interface layout.
  • Key bindings file versioning. If the key bindings file starts with the line #v[version], that version is compared to the default one and overwritten when necessary. That makes updating key bindings much easier.
  • Add new camera mode, orthosphere view, which includes the regular and the cross-eye orthosphere projections.
  • Add cross-eye view of the orthographic projection of the celestial sphere
  • Recompute UI scale at startup when starting with default config file. Fix particle set size when rendered as points, fix star scaling issue.
  • Add back-buffer scale API call.
  • Add repository to -v information.
  • Include "orthosphere" panorama mode -- orthospherical projection with both hemispheres overlaid to give a view of the celestial sphere from the outside.
  • Enable gamepad operation in welcome GUI.
  • Include orthographic projection in panorama mode. Includes both hemispheres on the screen, side by side. Can be cycled through with ctrl+shift+k.
  • Add support for KTX and ZKTX textures.
  • Add back-buffer scale controls to UI.
  • Add re-projection GUI drop-down in preferences window. Add setReprojectionMode() scripting API call.
  • Rename fisheye post-processing effect and shader to reprojection. Update cubemap projection from fisheye to azimuthal equidistant.
  • Add shaders for Lambert equal-area, orthographic and stereographic projections. none: update two showcase scripts to start simulation time automatically. none: update contrib.
  • Expose fisheye post-processing mode to configuration file and settings.
  • Change from thread to scheduled task to remove the mode change info pop-up.
  • Add mode change pop-up setting to enable or disable showing a pop-up with information when changing modes (panorama, planetarium, stereo, etc.).
  • Add GUI button to exit stereo mode.
  • Add new object type, 'cosmic locations', to mark the positions of interesting areas or regions.
  • Enable scene lights for shape objects when static light is off.
  • New model attribute 'blendMode', which defaults to 'alpha' but can also be set to 'additive' to control the object blending.
  • Add several new functions to enable setting the camera state from scripts.
  • Add time zone to settings. Time zone can be either UTC, or the system default. Update date dialog year limits, fix time component layout.
  • Raymarching effects work with ECS model.
  • Light glow effect now works with ECS model.
  • Expose post-processor properties as settings in configuration file.
  • Add zero-point to gamepad configuration.
  • Add zero-point to gamepad configuration.
  • Introduce gamepad support for spacecraft mode, remove 'gaia scene' camera mode (can be mimicked with focus mode), refactor input controllers, fix default SDL gamepad mappings file.
  • Introduce gamepad support for spacecraft mode, remove 'gaia scene' camera mode (can be mimicked with focus mode), refactor input controllers, fix default SDL gamepad mappings file.
  • Save configuration when closing dataset manager window.
  • Add popup notice when opening the keyframes window if component 'others' is not visible.
  • Add full screen bit depth and refresh rate to fully qualify selected full screen modes.
  • Improve layout and information of crash window.
  • Add notice when there are no datasets.
  • Style:
  • Mend variable names in about window to follow camel case.
  • Fix linter stylistic warnings in GUI and interfaces.

New in Gaia Sky 3.2.1 (Jun 21, 2022)

  • Bug Fixes:
  • Translate strings of filters, shapes, datasets and minimap.
  • Filters crash with instanced star renderers.
  • Moon orbits are recomputed more often.
  • Modal windows made not collapsible by default.
  • Hotkey tooltip backgrounds.
  • Jump in Pluto's orbit due to deviation between full periods.
  • Highlight 'all visible' setting in quad-based star renderers.
  • Frame sequence number synchronized, value updated when opening preferences.
  • Typo in Jupiter English translation file, add meshes to data descriptor file.
  • Increase number of vertices of minimap shape renderer, fixes crash in heliosphere minimap.
  • Break link in dataset manager if too long.
  • Build System:
  • Move namespace from 'gitlab.com/langurmonkey' to 'gitlab.com/gaiasky'.
  • Docs project no longer a submodule.
  • Features:
  • Save configuration when closing dataset manager window.
  • Use view angle instead of view angle apparent for goToObject() API call.

New in Gaia Sky 3.2.0 (Jun 7, 2022)

  • Bug Fixes:
  • Make sure direction and up vectors are orthogonal in camera transition call.
  • Increase size star point buffer when needed.
  • Null-check satellite attitude before getting quaternion. Fixes #402. #402
  • Empty tips may crash Gaia Sky at startup.
  • 'add scene graph object' event missing source object. Fixes #400. #400
  • Remove phase of pi radians in default-model orbital elements.
  • Regression with libgdx 1.11.0 that caused vertical tooltips.
  • Null-check settings in crash reporter.
  • Workaround for libgdx backslash bug in asset manager. Fixes #398. #398
  • Hide system cursor correctly with GLFW until libgdx 1.10.1 is released.
  • Use minimum width for debug interface to prevent dynamic resizing depending on content.
  • Correctly update label text when setting SliderPlus values.
  • Correctly shut down background worker and manager threads so that JVM can finish gently.
  • Add default values for orbit line and point colors.
  • Configure crash window size with same code as regular window.
  • Set argument of pericenter to zero when the epoch is not the reference epoch in the SSO converter for DR3.
  • Compute mu automatically if period is set in orbital elements.
  • Some data paths using forward slashes '/' instead of '' on Windows.
  • Big refactor that fixes the runtime activation and deactivation of both motion blur and ssr. Lots of little fixes and improvements to the render system.
  • Add VR offset to reflection view direction.
  • VR controller info positioning, settings crash.
  • Add null-checks for some OpenVR properties (required by Oculus 2). Add VR information in crash reporter. Fixes #393 (again). #393
  • Wrong scale factor in orbital elements-based orbits in VR
  • Update VRControllerRole values from ETrackedControllerRole from SteamVR spec. Fixes #393. #393
  • Broken setObjectVisibility() API call. Fixes #391. #391
  • Escape path before sending SAMP metadata. Fixes #392. #392
  • Regression adding bookmarks. Fixes #390. #390
  • Directional lights from stars still applied when stars are made invisible
  • Restrict the rendering of pointer guides and cross-hairs in stereo and cubemap modes.
  • Improve check box layout in preferences dialog
  • Focus info interface width jitters when moving in free mode on occasions
  • Gaia fov modes with triangle-based stars
  • Highlight dataset API call
  • Particle dataset loading default size limits when using tris
  • Issues with dataset loading via scripting
  • Improve error handling in dataset manager
  • Julian date algorithm
  • Prevent repeated entries in search suggestions
  • Dataset manager path handling on Windows
  • Initial VR GUI distance
  • Lighting bug when multiple stars cast a light on an object
  • Set encoding of i18n files to UTF-8, update formatting
  • Layout of version line table
  • Regression in apparent magnitude resource bundle key
  • Effective temperature array initialization bug in STIL loader
  • Regression in apparent magnitude resource bundle key
  • Effective temperature array initialization bug in STIL loader
  • Add notice whenever a default-data update is available. #384
  • Crosshair in cubemap, planetarium, stereo and VR modes
  • Remove usage of deprecated Java APIs
  • Do not add objects that already exist (have same names and same type) to scene graph
  • Cloud rendering artifacts
  • Reflections in tessellation shaders
  • Reflected cubemap orientation (was upside down)
  • Restore correct values on cancel in preferences dialog
  • Show warn message when trying to select object from invisible dataset in search dialog
  • Show warn message when trying to select object from invisible dataset in search dialog
  • Getting particle position no longer results in null pointer
  • Update directory permissions error message to make it easier to understand
  • Default style of headline and subhead messages, as well as their positioning
  • JSON output of REST API server
  • Reload data files when data path changes
  • Data manager misbehavior when data location path is a symlink
  • Rename old configuration files after conversion to new format
  • Time offset (6711 yr) in Moon's position lookup
  • Fix star clusters fade between model and billboard
  • Color picker listener stops working after first click #379
  • Build System:
  • Force safe graphics mode on M1 macOS.
  • Add aarch64 JRE to macOS bundle for M1 machines. Move to macOS single bundle archive from deprecated old single bundle.
  • Downgrade jamepad to 2.0.14.2 as the newer 2.0.20.0 does not work with ARM macs.
  • Upgrade to libgdx 1.11.0 and LWJGL 3.3.1 --- this adds M1 Mac support.
  • Use default GC (G1) in favor of Shenandoah (only LTS).
  • Remove run tasks, use '--args' gradle argument instead.
  • Sign Windows packages with self-sigend certificate.
  • Add Linux archive for itch.io.
  • Add Windows archive to install4j template for uploading to itch.io.
  • Update gradlew version
  • Update install4j script to latest version, use bundled JRE for .deb, upgrade to Java 17
  • Remove old run targets
  • Remove deprecated features from build files
  • Update gradle wrapper version to 7.3
  • Upgrade jackson library version
  • Remove gson dependency version
  • Java minimum version set to 15 in build script check
  • Automatically generate release notes during build
  • Update appimage JDK version to 16.0.2+7
  • Code Refactoring:
  • Flatten object hierarchy by removing some classes, merging their functionality upwards.
  • Abstract attitude loading system, remove gaia class, use heliotropic satellite.
  • Add I18nFormatter to reformat i18n files.
  • Remove useless number formatting infrastructure.
  • Remove old date formatting infrastructure (desktop, html, mobile) in favor of a direct approach.
  • Move update process to runnable, protect render lists from outer access.
  • Improve service thread implementation.
  • Move tips and funny texts to main bundle, add some dangling hardcoded strings to bundle, enable translation of keyboard keys.
  • Move all text from -v flag to i18n keys.
  • Remove some warnings, clean up code.
  • Rename some packages and move some code around.
  • Use bit mask instead of 64-bit integer as attributes mask so that we can register more than 64 attributes. Add proper 3-component specular color to materials. Add diffuse cubemaps for models and clouds. Fix a number of shader issues.
  • Rename u_environmentCubemap to u_diffuseCubemap in shaders.
  • Rename setting data::skyboxLocation to data::reflectionSkyboxLocation.
  • Remove unused id from components, fix skybox orientation.
  • Move double array to util package.
  • Old milky way renderer converted to general-purpose billboard group infrastructure to enable representation of any quad-based point data.
  • Remove unused and obsolete jython fix
  • Improve shader combination and lookup (from ssr branch)
  • Add source object to events by default
  • Documentation:
  • Update contributing document to reflect new objects file.
  • Features:
  • Add number of samples to orbit objects.
  • Add popup notice when opening the keyframes window if component 'others' is not visible.
  • Add full screen bit depth and refresh rate to fully qualify selected full screen modes.
  • Improve layout and information of crash window.
  • Add notice when there are no datasets.
  • Add cyrillic characters to main-font, font2d and font3d fonts.
  • New API call: setDatasetPointSizeMultiplier(String, Double).
  • Enable translation of object names, and add first translation files for most common objects like planets, constellations, etc.
  • Add scaffolding to translate welcome tips and funny sentences. Add Catalan translation for those.
  • Complete catalan translation file, add neat options to translation status utility.
  • Add buttons to launch preferences dialog and to quit at the bottom right of the welcome screen.
  • Add translation status code and task, update catalan translation file.
  • Add offline mode, activated in configuration file.
  • Add meshes as datasets, connect dataset visibility to per-object visibility controls for meshes.
  • Add specular, normal, emissive, metallic, roughness and height cubemap support to default and tessellation shaders.
  • Add cubemap diffuse texturing capability to models.
  • Implement the use of cubemaps in skyboxes. Fix cubemap reflection directions.
  • Asteroids get full dataset controls (except for colormaps) like highlighting, coloring and sizing.
  • Add catalog info goodies to asteroids catalogs.
  • Add asteroids/sso catalog types.
  • Expose SSR to preferences dialog, experimental section
  • Screen space reflections Merge branch 'ssr'
  • Add new red-blue anaglyph profile mode, additionally to the pre-existing red-cyan
  • Add proxy configuration directly in Gaia Sky's config file
  • Add dynamic resolution checkbox to preferences dialog
  • Finish dynamic resolution implementation with an arbitrary number of levels
  • Expand/collapse panes by clicking on title
  • Add collapsible entry and use it for datasets in datasets component
  • Add context menu to dataset items in dataset component
  • Add GUI control to edit object fade time [ms]
  • Improve layout and UX of datasets component
  • Add roughness texture and value to normal shader, enable mipmaps in skybox
  • Add popup notifications for certain important actions and events. These popup notifications can be closed by clicking on them, and they stay on screen for 8 seconds by default.
  • Additional API call to load star datasets
  • Save session log file to
  • Add API call to set label colors
  • Enable label colors for all objects. Always defaults to white
  • Add method to inject transformation matrix directly into orbit, add change of basis matrix creation utility
  • Allow spherical coordinates in StaticCoordinates, additional fixes
  • Add background thread count and pool size to debug information
  • New 'force label visibility' flag for model objects. This flag causes the label of the object to always be rendered, regardless of the solid angle and other constraints. The flag is controlled by new button at the top of the focus information pane (bottom-right) and via two new scripting API calls.
  • Simplify loading mechanism by joining catalog files with object files. No distinction is necessary anymore, for all of them work in the same way and are loaded by the same entities
  • Add file list and scroll pane to dataset information in dataset manager
  • Add pixel lighting shading to meshes
  • Updated the Bulgarian translation
  • Improve layout of welcome and loading GUIs
  • Redesign dataset manager. The old download manager/catalog selection duo is phased out in favor of the new dataset manager. This is more usable and less confusing, while allowing for parallel downloads.
  • Update splash
  • Add camera distance from Sun in the camera section of the focus information pane
  • Update welcome GUI background image
  • New non-constant-density fog shader which approximates physical fog much better than before
  • Add an arbitrary number of load progress bars
  • Enable loading internal JSON descriptor files from UI
  • Interactive procedural generation of planetary surfaces, clouds and atmospheres
  • Add interactive surface generation from the GUI
  • Interactive procedural generation of cloud and atmosphere components from the GUI
  • Add 'randomize all' function to totally randomize planet surfaces
  • Add shift to biome LUT, improve procedural generation
  • Generate normal map from elevation data if needed
  • Planet generation with elevation, diffuse and specular textures
  • Materials overhaul
  • Get Gaia Sky ready for star systems with proper orbits
  • Add --headless flag to run in headless mode (hidden window).
  • Add API calls to configure and take screenshots
  • Get Gaia Sky ready for star systems with proper orbits
  • Add --headless flag to run in headless mode (hidden window).
  • Add API calls to configure and take screenshots
  • Add individual size scale factor to star/particle group datasets
  • Improve mode switching dialogs with a few goodies and QOL updates
  • Implement mosaic cubemaps, quad-based star group renderer
  • Enable orbit trails in GPU VBO mode and remove the "orbit style" setting, for now the "GPU lines" line style setting uses VBOs
  • Add 'New directory' button to file chooser, fix event propagation with generic dialogs
  • Show release notes at startup after a version update
  • Convert provider parameters to dataset options for STIL provider
  • Add variability to close-up stars and star models
  • Add variable stars as a new dataset type
  • Add provider parameters to data providers
  • Improve CA,DE,ES translations
  • Improve bookmarks, add missing i18n keys Fixes #380 #380
  • Shapes (spheres, cones, cylinders, etc.) of arbitrary sizes can now be added around any object, with the possibility of tracking the object's size. This is an extension of #378 which includes many more options plus an API entry point
  • Add shapes around objects Fixes #378 #378
  • Add setting to select preferred units (ly/pc) #377
  • Add the possibility to track objects
  • Performance Improvements:
  • Separate UI reload from localized name updates.
  • Improve performance of orbital elements particles by treating them as whole groups in the CPU using new model object and renderer.
  • Initially size index hash maps to avoid resize operations
  • Style:
  • Consolidate normal shader vertex data into struct
  • Organize imports in whole codebase
  • Merge Requests:
  • Merge branch 'new-dataset-manager'
  • Merge branch 'points-triangles'

New in Gaia Sky 3.2.0 RC 1 (Dec 17, 2021)

  • Bug Fixes:
  • crosshair in cubemap, planetarium, stereo and VR modes
  • remove usage of deprecated Java APIs
  • do not add objects that already exist (have same names and same type) to scene graph
  • cloud rendering artifacts
  • reflections in tessellation shaders
  • reflected cubemap orientation (was upside down)
  • restore correct values on cancel in preferences dialog
  • show warn message when trying to select object from invisible dataset in search dialog
  • getting particle position no longer results in null pointer
  • update directory permissions error message to make it easier to understand
  • default style of headline and subhead messages, as well as their positioning
  • JSON output of REST API server
  • reload data files when data path changes
  • data manager misbehavior when data location path is a symlink
  • rename old configuration files after conversion to new format
  • time offset (6711 yr) in Moon's position lookup
  • fix star clusters fade between model and billboard
  • color picker listener stops working after first click #379
  • Build System:
  • remove old run targets
  • remove deprecated features from build files
  • update gradle wrapper version to 7.3
  • upgrade jackson library version
  • remove gson dependency version
  • Java minimum version set to 15 in build script check
  • automatically generate release notes during build
  • update appimage JDK version to 16.0.2+7
  • Features:
  • new non-constant-density fog shader which approximates physical fog much better than before
  • add an arbitrary number of load progress bars
  • enable loading internal JSON descriptor files from UI
  • interactive procedural generation of planetary surfaces, clouds and atmospheres
  • add interactive surface generation from the GUI
  • interactive procedural generation of cloud and atmosphere components from the GUI
  • add 'randomize all' function to totally randomize planet surfaces
  • add shift to biome LUT, improve procedural generation
  • generate normal map from elevation data if needed
  • planet generation with elevation, diffuse and specular textures
  • materials overhaul
  • get Gaia Sky ready for star systems with proper orbits
  • add --headless flag to run in headless mode (hidden window).
  • add API calls to configure and take screenshots
  • add individual size scale factor to star/particle group datasets
  • improve mode switching dialogs with a few goodies and QOL updates
  • implement mosaic cubemaps, quad-based star group renderer
  • enable orbit trails in GPU VBO mode and remove the "orbit style" setting, for now the "GPU lines" line style setting uses VBOs
  • add 'New directory' button to file chooser, fix event propagation with generic dialogs
  • show release notes at startup after a version update
  • convert provider parameters to dataset options for STIL provider
  • add variability to close-up stars and star models
  • add variable stars as a new dataset type
  • add provider parameters to data providers
  • imporove CA, DE, ES translations
  • improve bookmarks, add missing i18n keys Fixes #380 #380
  • shapes (spheres, cones, cylinders, etc.) of arbitrary sizes can now be added around any object, with the possibility of tracking the object's size. This is an extension of #378 which includes many more options plus an API entry point
  • add shapes around objects Fixes #378 #378
  • add setting to select preferred units (ly/pc) #377
  • add the possibility to track objects
  • Performance Improvements:
  • initially size index hash maps to avoid resize operations
  • Style:
  • consolidate normal shader vertex data into struct
  • organize imports in whole codebase
  • Merge Requests:
  • Merge branch 'points-triangles'

New in Gaia Sky 3.1.6 (Sep 22, 2021)

  • Bug Fixes:
  • VR GUI object initialization -- consolidate init() signature

New in Gaia Sky 3.1.5 (Sep 22, 2021)

  • Bug Fixes:
  • pointer guides use wrong shader program and render incorrectly
  • concurrent camera state modification issue resulting in camera jumps and skips when capturing still frames -- regression introduced with arbitrary precision module in 3.1.0
  • order of repositories in build file
  • frame output target FPS not persisted correctly
  • add notice when location log is empty
  • individual visibility in asteroids and other orbital elements-based objects
  • preferences dialog catalog selection tab
  • manipulate visibility of stars with proper names
  • bug in goToObject() camera direction
  • star offset in star groups #375
  • some tweaks to VR mode, fix crashes
  • Build System:
  • remove gradle plugin portal from repositories
  • Code Refactoring:
  • API change: unparkRunnable() is now deprecated in favor of removeRunnable()
  • remove all statics from global resources
  • encapsulate global resources
  • remove generics from IAttribute, remove static model from star groups
  • multiple internal initialization changes
  • Documentation:
  • update URLs in file
  • Features:
  • change value of screenshot mode from 'redraw' to 'advanced' both in the API call setFrameOutputMode() and in the config file
  • improve welcome screen button icons
  • add a filter textbox to per-object visibility window
  • add collapsible groups to catalog selection window
  • add mouse-over behavior for most UI elements
  • add hover over feature to buttons in skins
  • new YAML based configuration system to replace java properties file

New in Gaia Sky 3.1.4 (Jul 2, 2021)

  • Bug Fixes:
  • tone mapping persistence issue #374
  • unify internal delta time across all modules
  • regression in getObjectPosition() since 3.1.0 #372
  • camera direction precision issue in focus mode
  • Build System:
  • update AUR JRE dependency
  • use externally built JDK for Appimage #361
  • remove JSAMP, add as dependency
  • remove Gson dependency
  • update dependency versions
  • fix CI JDK dependency
  • Documentation:
  • update JDK requirement in README.md from 11 to 15
  • Features:
  • non-blocking task-based search suggestions
  • allow spaceships of multiple sizes
  • add multiple spaceships to spacecraft mode

New in Gaia Sky 3.1.2 (Jun 22, 2021)

  • Bug Fixes:
  • broken visibility of datasets (star/particle groups) #369
  • enable more than one light glow effect at a time
  • set logging level of STIL and jsamp to WARN #367
  • Build System:
  • fix git-chglog configuration so that merge requests are correctly captured
  • Features:
  • add apparent magnitude from camera #368

New in Gaia Sky 2.1.0 (Sep 14, 2018)

  • This release sees the completion of the download manager hinted at in the previous version. The decoupling of the base application from the data is now complete. You will notice that the download packages are now much smaller than they used to be, as they contain only the compiled sources and the libraries.
  • The first time you start version 2.1.0 you will be welcomed by the download manager window. Use it to get the data packages you want to load. The base-data package is required and you must download it before being able to run the program.

New in Gaia Sky 2.0.2 (Jul 6, 2018)

  • This time around we release a new version with only a handful of new features:
  • New pane to manage datasets It is now possible to mute and even remove star catalogs or SAMP tables individually
  • Cloud textures separated from regular surface textures They are loaded asynchronously
  • Added gamma correction slider
  • Added label size slider
  • Rearranged graphics options from Lighting pane to Settings dialog Old Lighting pane is now called Visual settings

New in Gaia Sky 2.0.1 (Jun 14, 2018)

  • Version 2.0.1 comes with the galaxy maps done by @galaxy_map and a new levels-of-detail structure which improves the general visual aspect of the catalogue from any point of view.
  • A more comprehensive list of changes can be found here.

New in Gaia Sky 2.0.0 (Apr 25, 2018)

  • Performance improvements all around
  • Rewritten streaming loader from scratch
  • Added proper motions
  • Constellations made to work with proper motions and with streaming loaders
  • Added MWSC star clusters
  • Added arbitrary meshes (isosurfaces of hot OB stars based on TGAS data)
  • Added asteroids
  • Added support for relativistic effects code paths
  • Added cylindrical and Hammer projections to panorama mode
  • Added hue and saturation levels
  • Added lots of new scripting functions
  • Minimaps (TAB key)
  • Tons of bug fixes and closed issues
  • Added support for emissive colors and textures
  • Added GPU-based line renderer
  • Added support for SAMP
  • Added dataset chooser (optionally at startup)
  • Memory mapped files for streaming loader
  • Removed old android/html infrastructure

New in Gaia Sky 1.5.0 (Aug 2, 2017)

  • This time around we've had a slightly longer development cycle so Gaia Sky 1.5.0 'Jumbo Summer Release' is here with a ton of new features, enhancements and bug fixes. Most importantly, we have essentially refactored the way star catalogs are handled, so that we can now stream data from disk when it is needed. Also, we've been working hard to make better use of the GPU and we are proud to announce that we've increased the performance fourfold while being able to display many more objects on screen at once.
  • Here is the list of the most important enhancements:
  • Implemented particle groups and star groups to optimize GPU usage
  • Added on-demand streaming of data for LOD (levels of detail) datasets
  • Particle/star groups integration with LOD
  • Enabled additive blending by default
  • New parallel view stereoscopic profile
  • GUI refactoring to enable proper HiDPI support
  • GUI animations
  • Added French and Slovene languages
  • Proper motion vectors color coded by direction and mangitude
  • Debug info greatly improved
  • Added Oort cloud
  • Added Nearby Galaxies Catalog (NBG)
  • Added some SDSS objects
  • Added Saturn moons
  • Added Pluto
  • Enabled high accuracy positions as an option
  • Implemented land on and land at coordinates functions and exposed them in GUI
  • New target mode In free camera which scales velocity according to distance to closest object
  • Implemented proper controller/gamepad mapping system
  • Added invert Y axis option
  • Reimplemented spacecraft camera mode from the ground up
  • Network checker made asynchronous
  • Some components' initializations moved to go through the asset manager
  • Added non cinematic camera mode, which is now the default
  • And here a list of the most important closed bugs and issues:
  • Fixed lots of bugs in scripting interface
  • Fixed eye separation in spacecraft+stereo mode
  • Fixed random crashes at startup
  • Scale point primitives by ratio
  • Fixed Milky Way texture misalignment
  • Fixed controller input in non-cinematic mode
  • Fixed quad line renderer artifacts
  • Fixed label flickering
  • Greatly improved octant detection
  • Config file version check

New in Gaia Sky 1.0.4 (May 29, 2017)

  • Gaia Sky is ready again for its pre-Christmas release. Lots of bug fixes made it into this release, and also a few improvements. We took some time to check the open issues and actually fixed most of the most pressing ones.
  • Here is a comprehensive list of the changes:
  • TGAS catalog loading time reduced.
  • Preferences dialog scales properly in HiDPI screens.
  • Multiple component types per object. This means that when we hide a type of object, its orbits/labels/extra info will also be hidden. This paves the way for the addition of more asteroid objects.
  • Milky Way panorama mapped to sphere (equirectangular projection) and callibrated correctly.
  • Added option to automatically save frames to file when camera file is playing.
  • Fixed crosshair resizing issues.
  • Fixed very bad memory leak in the frame output system.
  • Light glow sampling spiral adapts to fov angle.
  • Many more bug fixes.

New in Gaia Sky 1.0.3 (May 29, 2017)

  • Yet another bug fix release. This time around we have fixed the following:
  • Gaia field of view camera did not work properly due to a problem with the isInView function and its uses.
  • Fixed tutorial and scripts. Now they are up to date and working.
  • Some other minor stuff.

New in Gaia Sky 1.0.2 (May 29, 2017)

  • Some unwanted files made it into tag 1.0.1 by mistake, making the installers larger than necessary. This release fixes this issue and adds an extra high resolution image of the Milky Way in high quality graphics mode.

New in Gaia Sky 1.0.1 (May 29, 2017)

  • New features:
  • New spacecraft camera mode -- Game on!
  • New lens glow effect
  • Added brightness and contrast controls
  • Improved search functionality
  • Updated textures
  • Added optional crosshair in focus mode
  • Implemented 360° mode for 360 VR videos and panormas. See here
  • Fixed bugs:
  • Configuration dialog appears at the center of focused screen
  • Fixed stereoscopic mode for large distances/eye separations
  • Fixed resizing and fullscreen toggle
  • Fixed vector pool null pointer when multithreading is on
  • Fixed connection to archive for DR1 sources
  • Lots of other minor issues