Liftoff 1.3.0 Milestone Update
Thanks to our vibrant community, Liftoff FPV Drone Racing has been a continuously developing project. Since its first release in 2015, we've been expanding, updating and fine-tuning the game to your liking. All this time, we've managed to work on the car while doing top speed on the highway. Obviously, there was bound to be a point where we needed to make a pitstop, change the oil, replace the tires, and give the whole thing a good inspection.
The 1.3 update is all about that. Though it may not always be visible at first glance, the technological foundations of the game have been majorly updated: to better fit modern hardware, to improve the experience for everyone wherever possible, and - importantly - to once again be ready for future improvements!
Below is the epic story of this update, but if you just want to know what to expect, feel free to skip to the change list below.
Waiting for the right moment
As you may know by now, Liftoff runs on the Unity game engine. When development started in 2015, we used the most recent version of the engine available at that time. As time went by, and the game become much bigger than initially anticipated, we still occasionally updated the engine as new releases became available.
However, in 2017, the Unity engine changed aspects of how physics were handled. Considering physics play a key role in Liftoff, and initial tests with this new version made the game unplayable, this was unacceptable. We decided to hold off on updating to a new version, preferring to keep delivering a steady stream of content updates for the community instead. Essentially the game engine was frozen in a version from late 2016.
Little did we know that with each new piece of content added, be it a new drone part or a whole new environment, the project was inching closer to a hidden limit of the game engine. We suddenly hit a tipping point where we could no longer pack more content in the way we had been doing it since the beginning of the project. It started with a few disco-like menu backgrounds and, when pushed further, devolved in a complete mess of texture corruption and unreadable menus.
The only way was forward. We had no choice but to bite the bullet, update the game engine (at that point, by several major versions) and immediately tackle two major challenges: preserving the original flight behavior and finding a solution for our content packing problem. The former turned out to be less problematic than originally feared. The latter was a more complex challenge where we had rethink the way we handled content (drone parts, environments, tracks and many other things) from the ground up.
What does not kill you
Rejoice! Even if driven by necessity, our update work comes with some massive advantages across the board.
First off, we have adopted a new fine-grained system that allows us to precisely control what is loaded in at any time, to optimize the memory usage. A less big memory footprint means that the game should load faster and, especially in some of the more intense scenes, may now work on weaker systems that formerly ran out of memory and crashed. Additionally, we can now compartmentalize content to make future updates faster and smaller to download.
Updating the engine also gave us access to up-to-date rendering techniques (especially on Linux and macOS) that should increase performance. It also allowed us to finally provide a fix for some low-level problems, such as a crash on Windows due to Citrix Workspace being installed on the system.
Finally, a Liftoff update wouldn't be a Liftoff update without a slew of fixes, changes and quality-of-life improvements. Read all about it below!
With all that out of way, we're looking forward to once again serving you a steady stream of updates. We already have some things in the works, so stay tuned!
v1.3 Change list
- Engine update from version 5.6 to 2018.4. Oof.
- Major code reworks of some essential Liftoff systems to increase stability and optimize memory usage.
- Content management systems update: optimized loading and memory usage:
- Tracks now only load those track items actually needed by the track, instead of all of them.
- Drone setups now load faster and memory usage is optimized.
- Race AI opponents are now generated locally instead of downloaded from the Liftoff Pro service.
- Updated physics to 4.0, as previously featured on the Experimental Branch.
- Updated drag model to be more accurate based on the exact setup of the drone.
- Some skins now have an impact on the drag behavior. This is visualized with an icon next to the skin in the Workbench.
- More about what's included in Physics 4.0 and how it affects the flight behavior of your drone can be found here and here.
- Added Replay feature. Save your flights and watch them whenever you want:
- In Free Flight and Infinite Race, after a drone reset, your flight recording can be saved in the Pause menu.
- In Race and Freestyle, you can save your recording in the finish screen or afterwards in the Pause menu.
- Added Russian Woodpecker Night Fever environment variant (for owners of the Night Fever DLC pack).
- Updated the Minus Two environment to make it perform significantly better.
- Added third person spectator option to multiplayer.
- Added Metal rendering support on Mac.
- Added Vulkan rendering support on Linux.
- Updated the loading screen to show what's happening in the background and changed the loading background image depending on which level is being loaded.
- First/Third person camera mode is now saved and applied on every time a flight session is started.
- Added action in the button setup menu to skip the current music track.
- Added a lap counter in regular race below the race timer.
- Added some highlight colors to selectable UI elements.
- Added best race lap during multiplayer race next to the player avatar icon like it is in infinite race.
- Added a system info log at during start so the Liftoff team can quickly discover any hardware issues during support requests.
- Added caching of assets related to the player's drone throughout the game to speed up loading times.
- Added a shortcut to the Workbench panel in the Main Menu to quickly jump to opening any gift boxes you have instead of going through the drone selection menu first.
- Updated the drone HUD to allocate less memory, reducing frame hitches.
- Updated the drone HUD horizon line to be restricted to the side-bars.
- Updated the 'Test Flight' option in the Workbench to use the Quick Play setup panel.
- Updated several game options so that they can be toggled on/off without needing to reload the current level.
- Updated multiplayer race drone controls after finish. Your drone now remains controllable for a few extra seconds before switching in spectator mode.
- Updated part selection controls in the drone Workbench. The scrollbar now navigates along with the selected part.
- Updated the loading labels for the drones in the drone selection to have crisper text rendering.
- Updated the multiplayer chat window to always be visible during a multiplayer race.
- Updated the multiplayer player labels on the right to be always visible. The currently spectated player will now be shown in bold.
- Updated the multiplayer drone background loading. Performance spikes when a player joins the room should be eliminated. Slight frame spikes may still occur during the Free Flight and Infinite Race game modes when another player joins in the level flying, as assets are loaded in the background.
- Updated several tracks to feature some more track items.
- Updated the custom music feature to be more clear about what kind of songs it supports as well as where to locate the files.
- Updated the difficulty of the A.I. opponents to be more challenging when no previous race time was recorded for that race.
- Updated the level selection to show a toggle for Night Fever environments instead of a dropdown.
- Fixed Citrix Workspace crash on Windows platforms.
- Fixed issue in the HangarC03 environment where the floor tile would drop out from under you.
- Fixed bugs in multiplayer regarding spectating other players after multiple drone resets.
- Fixed issue with a floating antenna on the Armattan Gecko frame.
- Fixed the community panel in the main menu to always rotate away when entering the menu.
- Fixed a broken skybox in the Liftoff Arena environment.
- Fixed the weight of the Action Cam to better match that of a Go Pro 4.
- Fixed issues with erroneous 'Not all skins for this drone setup are available' label in the drone selection.
- Fixed the track lines in Bardwell's Yard Race 03.
- Fixed bug that would adjust the FOV when pausing Liftoff.
- Fixed bug that would cause a black screen after a freestyle sessions was finished, when a drone was being reset in the background.
- Fixed bug in the level selection that would be caused by selecting using the keyboard.
- Fixed issues with some parts being scaled to 0 in combination with some frames.
- Fixed several instances of multiplayer spectator weirdness (drone HUD turning on for a brief moment when switching players, etc.)
- Fixed issue where spectating a player in multiplayer infinite race before arming the drone wouldn't allow that player to start the race again.
- Fixed unnecessary quick black screen fade in the main menu when starting the game while the drone is being loaded.
- Fixed Ambient Occlusion not being applied properly when it was turned off when entering a level, then turning it on in the graphics settings.
- Removed the FatShark goggle animation.