Yocto/GL: A Data-Oriented Library for Physically-Based Graphics

G. Nazzaro, E. Carra, F. Pellacini
STAG, 2019


In this paper we present Yocto/GL, a software library for computer graphics research and education. The library is written in C++ and targets execution on the CPU, with support for basic math, geometry and imaging utilities, path tracing and file IO. What distinguishes Yocto/GL from other similar projects is its minimalistic design and data-oriented programming style, which makes the library readable, extendible, and efficient. We developed Yocto/GL to meet our need, as a research group, of a simple and reliable codebase that lets us experiment with ease on research projects of various kind. After many iterations carried out over a few years, we settled on a design that we find effective for our purposes. In the hope of making our efforts valuable for the community, we share our experience in the development and make the library publicly available.