Lightspark May Work Towards A Gallium3D State Tracker

We have previously reported on Lightspark working on a new graphics engine for this open-source project to implement the Adobe Flash/SWF specification. This new graphics engine leverages OpenGL and Cairo, but now the lead developer is considering a different approach.
Rather than using OpenGL, which is rather complex when all that Lightspark is using this graphics API for is just uploading images rendered by Cairo to the video memory and then to blit and composite the result, creating a simple Gallium3D state tracker could also do the trick.
While no code has yet to materialize, what is being considered as an option would be coming up with a new API and a simple Gallium3D state tracker that would simply be responsible for these simpler tasks. This API and Gallium3D state tracker would be responsible for DMA accelerated transfers of rendered image data, blitting and compositing of rendered images, notify the client of a-synchronous work, enqueue to-be-uploaded-to-VRAM images and have them transferred, and apply simple but programmable shader-like transformations of pixel data.
If this work does materialize, it will likely not come in the immediate future and OpenGL support would still likely be needed within Lightspark for handling the proprietary NVIDIA/AMD drivers and other situations where Gallium3D is not available.
For more information, read this blog post.
47 Comments