In this post, I’m mirroring the Gaia Sky 3 tutorial I wrote for the official Gaia Sky documentation to use as a rough script for the workshop given in a splinter session of the 2021 DPAC consortium online meeting held on March 17 and 18, 2021. You can find the original page here.
This article is best viewed in light mode: lights on!
It’s been a while since I last talked about new Gaia Sky releases. Today I’m doing a recap of the last four releases, starting with
3.0.0. This very verison came out with Gaia eDR3 on Dec 3, 2020. It was a big jump for Gaia Sky, as it introduced a plethora of new features and QOL improvements along with lots of bug fixes and little tweaks. This post goes over the latest versions from
3.0.3, and reflects on what they brought to the table.
Jump to the analysis for each of the versions directly:
A while ago Erwan Leroy, a VFX professional and trainer, contacted me with some questions regarding the catalogs in Gaia Sky. Basically, he was trying to decode the binary format used in Gaia Sky to load the stars using a Python script. Of course, my documentation was lacking in that very aspect, so I walked him through the format and then improved the docs.
Today, he has come back to me to share his results.
Today we are releasing a brand new version (
2.2.0) of Gaia Sky with several major changes and new features. To sum up, github reports 1071 changed files, with 81672 additions and 31763 deletions. Gitlab displays a “Too many changes to show” banner, as their cap is at a 1000 files. This makes it by far the largest release ever, followed by version
1.5.0 in the summer of 2017.
Gaia Sky has a quite powerful Python scripting system which has gotten a revamp lately. The system exposes an API which can be used from Python scripts to interact with an instance of Gaia Sky running in the same machine (so far). But to understand where we are, we need to know where do we come from.
During the last months I have been working on a QOL improvement for Gaia Sky video production. Currently, Gaia Sky offers a couple of ways to persist and reproduce camera behaviours: scripting and camera paths.
Scripting offers a high level API which allows for the interaction and manipulation of the internal state. Conceptually, a running script is no different from a regular user. A script runs in its own thread and, like a user, interacts with Gaia Sky’s core through the event manager, a message-passing entity which encapsulates the core functionality.