Papagiannakis, GeorgeKamarianakis, ManosProtopsaltis, AntonisAngelis, DimitrisZikas, PaulMagana, AlejandraZara, Jiri2023-05-032023-05-032023978-3-03868-210-31017-4656https://doi.org/10.2312/eged.20231015https://diglib.eg.org:443/handle/10.2312/eged20231015We present the Elements project, a lightweight, open-source, computational science and computer graphics (CG) framework, tailored for educational needs, that offers, for the first time, the advantages of an Entity-Component-System (ECS) along with the rapid prototyping convenience of a Scenegraph-based pythonic framework. This novelty allows advances in the teaching of CG: from heterogeneous directed acyclic graphs and depth-first traversals, to animation, skinning, geometric algebra and shader-based components rendered via unique systems all the way to their representation as graph neural networks for 3D scientific visualization. Taking advantage of the unique ECS in a a Scenegraph underlying system, this project aims to bridge CG curricula and modern game engines (MGEs), that are based on the same approach but often present these notions in a black-box approach. It is designed to actively utilize software design patterns, under an extensible open-source approach. Although Elements provides a modern (i.e., shader-based as opposed to fixed-function OpenGL), simple to program approach with Jupyter notebooks and unit-tests, its CG pipeline is not black-box, exposing for teaching for the first time unique challenging scientific, visual and neural computing concepts.Attribution 4.0 International LicenseCCS Concepts: Social and professional topics → Computer science education; Software engineering educationSocial and professional topics → Computer science educationSoftware engineering educationProject Elements: A Computational Entity-component-system in a Scene-graph Pythonic Framework, for a Neural, Geometric Computer Graphics Curriculum10.2312/eged.202310151-88 pages