Vitsas, NickGkaravelis, AnastasiosVasilakis, Andreas-AlexandrosVardis, KonstantinosPapaioannou, GeorgiosRomero, Mario and Sousa Santos, Beatrice2020-05-242020-05-242020978-3-03868-102-11017-4656https://doi.org/10.2312/eged.20201027https://diglib.eg.org:443/handle/10.2312/eged20201027In this paper, we present Rayground; an online, interactive education tool for richer in-class teaching and gradual self-study, which provides a convenient introduction into practical ray tracing through a standard shader-based programming interface. Setting up a basic ray tracing framework via modern graphics APIs, such as DirectX 12 and Vulkan, results in complex and verbose code that can be intimidating even for very competent students. On the other hand, Rayground aims to demystify ray tracing fundamentals, by providing a well-defined WebGL-based programmable graphics pipeline of configurable distinct ray tracing stages coupled with a simple scene description format. An extensive discussion is further offered describing how both undergraduate and postgraduate computer graphics theoretical lectures and laboratory sessions can be enhanced by our work, to achieve a broad understanding of the underlying concepts. Rayground is open, cross-platform, and available to everyone.Attribution 4.0 International LicenseSocial and professional topicsComputer science educationComputing methodologiesRay tracingSoftware and its engineeringSoftware prototypingRayground: An Online Educational Tool for Ray Tracing10.2312/eged.202010271-8