The Road to Vulkan: Teaching Modern Low-Level APIs in Introductory Graphics Courses
Abstract
For over two decades, the OpenGL API provided users with the means for implementing versatile, feature-rich, and portable real-time graphics applications. Consequently, it has been widely adopted by practitioners and educators alike and is deeply ingrained in many curricula that teach real-time graphics for higher education. Over the years, the architecture of graphics processing units (GPUs) incrementally diverged from OpenGL's conceptual design. The more recently introduced Vulkan API provides a more modern, fine-grained approach for interfacing with the GPU. Various properties of this API and overall trends suggest that Vulkan could soon replace OpenGL in many areas. Hence, it stands to reason that educators who have their students' best interests at heart should provide them with corresponding lecture material. However, Vulkan is notoriously verbose and rather challenging for first-time users, thus transitioning to this new API bears a considerable risk of failing to achieve expected teaching goals. In this paper, we document our experiences after teaching Vulkan in an introductory graphics course side-by-side with conventional OpenGL. A final survey enables us to draw conclusions about perceived workload, difficulty, and students' acceptance of either approach and identify suitable conditions and recommendations for teaching Vulkan to undergraduate students.
BibTeX
@inproceedings {10.2312:eged.20221043,
booktitle = {Eurographics 2022 - Education Papers},
editor = {Bourdin, Jean-Jacques and Paquette, Eric},
title = {{The Road to Vulkan: Teaching Modern Low-Level APIs in Introductory Graphics Courses}},
author = {Unterguggenberger, Johannes and Kerbl, Bernhard and Wimmer, Michael},
year = {2022},
publisher = {The Eurographics Association},
ISSN = {1017-4656},
ISBN = {978-3-03868-170-0},
DOI = {10.2312/eged.20221043}
}
booktitle = {Eurographics 2022 - Education Papers},
editor = {Bourdin, Jean-Jacques and Paquette, Eric},
title = {{The Road to Vulkan: Teaching Modern Low-Level APIs in Introductory Graphics Courses}},
author = {Unterguggenberger, Johannes and Kerbl, Bernhard and Wimmer, Michael},
year = {2022},
publisher = {The Eurographics Association},
ISSN = {1017-4656},
ISBN = {978-3-03868-170-0},
DOI = {10.2312/eged.20221043}
}