skip to main content
10.1145/3680533.3697057acmconferencesArticle/Chapter ViewAbstractPublication Pagessiggraph-asiaConference Proceedingsconference-collections
abstract

pyGANDALF - An open-source Geometric, ANimation, Directed, Algorithmic, Learning Framework for Computer Graphics

Published: 22 November 2024 Publication History

Abstract

In computer graphics (CG) education, the challenge of finding modern, versatile tools is significant, particularly when integrating both legacy and advanced technologies. Traditional frameworks, often reliant on solid, yet outdated APIs like OpenGL, limit the exploration of cutting-edge graphics techniques. To address this, we introduce pyGANDALF, a unique, lightweight, open-source CG framework built on three pillars: Entity-Component-System (ECS) architecture, Python programming, and WebGPU integration. This combination sets pyGANDALF apart by providing a streamlined ECS design with an editor layer, compatibility with WebGPU for state-of-the-art features like compute and ray tracing pipelines, and a programmer-friendly Python environment. The framework supports modern features, such as Physically Based Rendering (PBR) capabilities and integration with Universal Scene Description (USD) formats, making it suitable for both educational demonstrations and real-world applications. Evaluations by expert users confirmed that pyGANDALF effectively balances ease of use with advanced functionality, preparing students for contemporary CG development challenges.

Supplemental Material

MP4 File
Supplementary Video

References

[1]
Carlos Andujar, Antonio Chica, Marta Fairén, and Alvar Vinacua. 2018. GL-Socket: A CG Plugin-based Framework for Teaching and Assessment. In EG 2018 - Education Papers, Frits Post and Jirí Žára (Eds.). The Eurographics Association.
[2]
D. G. Balreira, M. Walter, and D. W. Fellner. 2017a. What we are teaching in introduction to computer graphics. In Proceedings of the European Association for Computer Graphics: Education Papers (Lyon, France) (EG ’17). Eurographics Association, Goslar, DEU, 1–7.
[3]
Dennis Giovani Balreira, Marcelo Walter, Dieter W Fellner, et al. 2017b. What we are teaching in Introduction to Computer Graphics. In Eurographics (Education Papers). 1–7.
[4]
Marilyn Hughes Blackmon, Peter G Polson, Muneo Kitajima, and Clayton Lewis. 2002. Cognitive walkthrough for the web. In Proceedings of the SIGCHI conference on human factors in computing systems. 463–470.
[5]
Lars-Ola Bligård and Anna-Lisa Osvalder. 2007. An analytical approach for predicting and identifying use error and usability problem. In HCI and Usability for Medicine and Health Care: Third Symposium of the Workgroup Human-Computer Interaction and Usability Engineering of the Austrian Computer Society, USAB 2007 Graz, Austria, November, 22, 2007. Proceedings 3. Springer, 427–440.
[6]
Dear ImGui Bundle. 2023. Dear ImGui Bundle: an extensive set of ready-to-use widgets and libraries, based on ImGui. https://pthom.github.io/imgui_bundle/index.html
[7]
Benjamin Bürgisser, David Steiner, and Renato Pajarola. 2017. bRenderer: A Flexible Basis for a Modern Computer Graphics Curriculum. In EG 2017 - Education Papers, Jean-Jacques Bourdin and Amit Shesh (Eds.). The Eurographics Association.
[8]
Brian Danchilla. 2012. Three.js Framework. Apress, Berkeley, CA, 173–203.
[9]
Sandra G. Hart and Lowell E. Staveland. 1988. Development of NASA-TLX (Task Load Index): Results of Empirical and Theoretical Research. In Human Mental Workload, Peter A. Hancock and Najmedin Meshkati (Eds.). Advances in Psychology, Vol. 52. North-Holland, 139–183.
[10]
Benjamin Kenwright. 2022. Introduction to computer graphics and ray-tracing using the webgpu api. In 15th ACM SIGGRAPH Conference and Exhibition on Computer Graphics and Interactive Techniques in Asia 2022.
[11]
Benjamin Kenwright. 2023. Web Programming Using the WebGPU API. In ACM SIGGRAPH 2023 Courses (Los Angeles) (SIGGRAPH ’23). Association for Computing Machinery, New York, NY, USA, Article 21, 184 pages.
[12]
Thomas Mahatody, Mouldi Sagar, and Christophe Kolski. 2010. State of the art on the cognitive walkthrough method, its variants and evolutions. Intl. Journal of Human–Computer Interaction 26, 8 (2010), 741–785.
[13]
Miryahyoyeva Mashxura and Ilhomjon Meliqo’ziyevich Siddiqov. 2023. Effects of the Flipped Classroom in Teaching Computer Graphics. Eurasian Research Bulletin 16 (2023), 119–123.
[14]
James R Miller. 2014. Using a software framework to enhance online teaching of shader-based opengl. In Proceedings of the 45th ACM technical symposium on Computer science education. 603–608.
[15]
George Papagiannakis, Manos Kamarianakis, Antonis Protopsaltis, Dimitris Angelis, and Paul Zikas. 2023. Project Elements: A Computational Entity-component-system in a Scene-graph Pythonic Framework, for a Neural, Geometric Computer Graphics Curriculum. In Eurographics 2023 - Education Papers, Alejandra Magana and Jiri Zara (Eds.). The Eurographics Association.
[16]
G. Papagiannakis, P. Papanikolaou, E. Greassidou, and P. Trahanias. 2014. glGA: an OpenGL Geometric Application Framework for a Modern, Shader-based Computer Graphics Curriculum. In Eurographics 2014 - Education Papers. The Eurographics Association.
[17]
Sumanta N. Pattanaik and Alexis Benamira. 2021. Teaching Computer Graphics During Pandemic using Observable Notebook. In Eurographics 2021 - Education Papers, Beatriz Sousa Santos and Gitta Domik (Eds.). The Eurographics Association.
[18]
Thomas Suselo, Burkhard C Wünsche, and Andrew Luxton-Reilly. 2017. The journey to improve teaching computer graphics: A systematic review. In Proceedings of the 25th International Conference on Computers in Education (ICCE 2017). APSCE, Christchurch, New Zealand. 361–366.
[19]
Thomas Suselo, Burkhard C. Wünsche, and Andrew Luxton-Reilly. 2019. Technologies and Tools to Support Teaching and Learning Computer Graphics: A Literature Review. In Proceedings of the Twenty-First Australasian Computing Education Conference (Sydney, NSW, Australia) (ACE ’19). Association for Computing Machinery.
[20]
Antoine Toisoul, Daniel Rueckert, and Bernhard Kainz. 2017. Accessible GLSL shader programming. In Proceedings of the European Association for Computer Graphics: Education papers. 35–42.
[21]
J. Unterguggenberger, B. Kerbl, and M. Wimmer. 2022. The Road to Vulkan: Teaching Modern Low-Level APIs in Introductory Graphics Courses. In Eurographics 2022 - Education Papers (Reims). The Eurographics Association, 31–39.
[22]
J. Unterguggenberger, B. Kerbl, and M. Wimmer. 2023. Vulkan all the way: Transitioning to a modern low-level graphics API in academia. Computers & Graphics 111 (2023), 155–165.
[23]
Burkhard Claus Wuensche, Kai-Cheung Leung, Davis Dimalen, et al. 2022. Using an Assessment Tool to Create Sandboxes for Computer Graphics Teaching in an Online Environment. In Proceedings of the 10th Computer Science Education Research Conference (Virtual Event, Netherlands) (CSERC ’21). Association for Computing Machinery, New York, NY, USA, 21–30.
[24]
Burkhard C. Wünsche, Edward Huang, Lindsay Shaw, Thomas Suselo, Kai-Cheung Leung, Davis Dimalen, Wannes van der Mark, Andrew Luxton-Reilly, and Richard Lobb. 2019. CodeRunnerGL - An Interactive Web-Based Tool for Computer Graphics Teaching and Assessment. In 2019 International Conference on Electronics, Information, and Communication (ICEIC). 1–7.

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
SA '24: SIGGRAPH Asia 2024 Educator's Forum
December 2024
103 pages
ISBN:9798400711367
DOI:10.1145/3680533
Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for third-party components of this work must be honored. For all other uses, contact the owner/author(s).

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 22 November 2024

Check for updates

Author Tags

  1. Real-time rendering
  2. GPU
  3. Graphics API
  4. WebGPU
  5. OpenGL
  6. Programming framework
  7. Teaching

Qualifiers

  • Abstract

Funding Sources

  • Innovation project Swiss Accelerator - Innosuisse
  • National Recovery and Resilience Plan Greece 2.0 - NextGenerationEU

Conference

SA '24
Sponsor:
SA '24: SIGGRAPH Asia 2024 Educator's Forum
December 3 - 6, 2024
Tokyo, Japan

Acceptance Rates

Overall Acceptance Rate 178 of 869 submissions, 20%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 171
    Total Downloads
  • Downloads (Last 12 months)171
  • Downloads (Last 6 weeks)10
Reflects downloads up to 08 Mar 2025

Other Metrics

Citations

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Full Text

View this article in Full Text.

Full Text

HTML Format

View this article in HTML Format.

HTML Format

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media