New Major ILLIXR Release!

9/23/2023 9:32:43 AM

Release Highlights

Major Changes

  • Build System Overhaul: The entire build system has been rewritten to utilize CMake, streamlining plugin management and dependency checking.
  • New Graphics Pipeline: A new graphics pipeline using the Vulkan API has been implemented through the new plugins vkdemo, timewarp_vk, display_vk, and native_renderer.
  • Monado Integration: Updated integration to support Monado's out-of-process compositor, enabling the use of more OpenXR apps, including those based on Unreal Engine and Vulkan.
  • Plugin Updates: Numerous plugins have been updated, with a few new ones added.
  • SLAM Plugin Update: OpenVINS is now the default SLAM plugin, and Kimera-VIO is no longer available.

What's Changed

  • Offload VIO Plugins: Updated to a TCP implementation with separate IMU and Camera types; added H264 codec.
  • Timewarp GL Plugin: Modified to render into two textures/framebuffers with Vulkan-OpenGL interop.
  • New Plugins:
    • openni plugin
    • fauxpose plugin
  • Plugin Fixes: Fixed a shaking issue with the zed plugin.
  • Logging Infrastructure: Overhauled to use spdlog.
  • Documentation Overhaul: Improved clarity and descriptiveness, with an interactive tool for selecting plugins and their dependencies, along with customized build commands.
  • Modular Build System: Converted the ILLIXR codebase to a more modular build system using CMake.

Issues Addressed

This release addresses and closes several issues, including:

  • Evaluating Ninja/CMake/Bazel for the plugin build system.
  • Adding a human-readable logging infrastructure.
  • Separating IMU/camera Switchboard topics.
  • Fixing plugin documentation.
  • Separating out Qemu setup from the main setup.
  • Switching languages for the runner's config schema.
  • Preserving partial progress in the Makefile.
  • Refactoring configurations to reduce redundancy.
  • Adding a libgtsam.so symlink in the GTSAM install script.
  • Updating documentation.
  • Fixing a memory leak in the offline_imu_cam plugin.
  • Resolving installation issues on Ubuntu 22.04.
  • Specifying required GPU specifications.
  • Reducing dependency on OpenCV.
  • Cleaning up headers and includes.

Detailed Plugin Changes

  • Offload VIO Plugins: Transitioned to TCP implementation with separate IMU and Camera types, and added H264 codec.
  • Timewarp GL Plugin: Enhanced to render into two textures/framebuffers with Vulkan-OpenGL interop.
  • New Plugins:
    • openni: Provides new functionalities for OpenNI integration.
    • fauxpose: Adds new capabilities for pose estimation.
  • Plugin Fixes: Resolved a shaking issue with the zed plugin.
  • Logging Overhaul: Implemented spdlog for better logging infrastructure.
  • Documentation: Improved for clarity and usability, including an interactive plugin selection tool.

 

For more information and to access the release, visit our GitHub page.