Declarative, reactive scene graph model, with backend adapter abstraction
Scenex is a Python API for creating and manipulating 3D scenes.
It does not implement any rendering or graphics directly, but rather serves as a high-level interface and adaptor for existing scene-graph libraries, such as vispy and pygfx, and hopefully others (like datovis) in the future.
The goal is to provide a clear scene graph model (backed by pydantic ), with backend adaptors that connect the model to the actual rendering engine. The models emit events upon mutation (using psygnal), and the adaptors listen to these events and update the scene graph.
Because the models are backed by pydantic, they can be easily serialized to JSON and other formats, making it easy to save and load scenes, and define them declaratively.