Skip to content

Interactive Visualisation Framework 2

ivf2

Welcome to the ivf2 documentation. ivf2 is a modern C++ graphics and visualization library built on top of OpenGL. This is also a complete rewrite of the original ivfplusplus library, which also was a C++ wrapper around OpenGL used in the ObjectiveFrame application.

The goal of Ivf2 is to provide a more modern and flexible framework for graphics and visualization applications that is based on modern OpenGL and C++ standards. The library is designed to be easy to use and extend, making it a great choice for both beginners and experienced developers.

Features

  • Modern, object-oriented C++ design (C++20, shared_ptr throughout)
  • Powerful scene graph management
  • Extensive set of 3D primitives
  • Flexible material system
  • Dynamic lighting system
  • Keyframe and spline animation
  • Spline-based cinematic camera animation with shake effects
  • Global time control — pause, slow-motion, and time scaling across the whole scene
  • Curl-noise flow fields for organic, fluid-like particle animation
  • Post-processing effects (blur, bloom, chromatic, film grain, vignette, edge detection)
  • ImGui-based user interface with composable panels
  • Model loading via Assimp
  • Shadow mapping
  • And more!

Getting Started

Visit the Getting Started section to begin using ivf2.

Examples

Check out the Examples section to see ivf2 in action.