iridescence  by koide3

3D visualization library for rapid prototyping of 3D algorithms

created 5 years ago
405 stars

Top 72.8% on sourcepulse

GitHubView on GitHub
Project Summary

Iridescence is a lightweight C++ visualization library designed for rapid prototyping of 3D algorithms, particularly those involving point clouds. It offers an easy-to-use framework with tightly integrated Dear ImGui interfaces for quick UI development, targeting researchers and developers.

How It Works

Iridescence leverages OpenGL for rendering and integrates Dear ImGui for immediate mode GUI creation. It focuses on core visualization tasks rather than advanced rendering features like realistic shading or complex mesh texturing. The library provides primitives and coloring schemes (e.g., Rainbow, FlatColor) to easily display and interact with 3D data.

Quick Start & Requirements

  • Install from Source: Requires libglm-dev, libglfw3-dev, libpng-dev, libjpeg-dev, libeigen3-dev. Build with CMake and make. Python bindings can be installed via pip install ..
  • Install from PPA: Available for Ubuntu 20.04, 22.04, and 24.04 (AMD64, ARM64).
  • Dependencies: GLFW (zlib/libpng), gl3w (Public Domain), Dear ImGui (MIT), ImGuizmo (MIT), implot (MIT), Eigen (MPL2), portable-file-dialogs (WTFPL).
  • Documentation: https://koide3.github.io/iridescence/

Highlighted Details

  • Tightly integrated Dear ImGui for rapid UI design.
  • Supports C++ and Python interfaces.
  • Provides built-in coloring schemes like Rainbow (height-encoded) and FlatColor.
  • Includes primitive shapes like spheres.

Maintenance & Community

The project is maintained by koide3. Links to community resources are not explicitly provided in the README.

Licensing & Compatibility

  • License: MIT License.
  • Compatibility: Permissive MIT license allows for commercial use and integration into closed-source projects.

Limitations & Caveats

The library explicitly states it does not provide realistic rendering, shading, or rich textured 3D mesh rendering, focusing solely on rapid prototyping for research.

Health Check
Last commit

2 weeks ago

Responsiveness

1 week

Pull Requests (30d)
2
Issues (30d)
2
Star History
21 stars in the last 90 days

Explore Similar Projects

Feedback? Help us improve.