Blend2D: Working Towards A New Software-Based 2D Renderer
There's a new open-source project in the works aiming to be a software-based 2D renderer that uses JIT pipeline construction.
Developer Petr Kobalicek who several years ago was aspiring to make a high-performance alternative to Cairo is now working on a new project called Blend2D. In an email to Phoronix he explains this new project:
And then further explained on the project site for Blend2D:
Those wishing to learn more about the Blend2D 2D renderer project can visit Blend2D.com. The newly-published code for the b2dpipe pipeline compiler can be found via GitHub.
Developer Petr Kobalicek who several years ago was aspiring to make a high-performance alternative to Cairo is now working on a new project called Blend2D. In an email to Phoronix he explains this new project:
Blend2D project, which aims to be a first open-source library that uses JIT pipeline construction in its software-based 2D renderer. It's an evolution of my older project called Fog, which you have mentioned on Phoronix a long time ago, but was never finished due to its complexity and lack of time.
Today I have released a first part of Blend2D project called b2dpipe - it's a 2D pipeline compiler written in C++. This low-level library is the heart of Blend2D and starting today it can be used by any other software-based 2D engine. The library is not fully finished, but already implements a lot of operations and all examples shown on blend2d site are rendered by pipelines compiled by b2dpipe...High performance 2D rendering is the reason why I started working on Blend2D.
I will be releasing the main library soon (within a month or two), and it has a benchmarking tool that compares Blend2D with Cairo and Qt (and maybe I will have SKIA comparison finished as well).
And then further explained on the project site for Blend2D:
Blend2D is a next generation 2D vector graphics engine written in C++. It features a built-in JIT compiler that generates high performance 2D pipelines at runtime, which are much faster than static pipelines used in today's 2D engines. Dynamic pipeline construction is the main difference between Blend2D and other 2D engines, and guarantees the highest possible throughtput by taking advantage of CPU extensions detected at runtime. Blend2D provides also a deferred and asynchronous rendering, which makes it seamless to integrate with event-based environments such as node.js and next generation UI toolkits.
Those wishing to learn more about the Blend2D 2D renderer project can visit Blend2D.com. The newly-published code for the b2dpipe pipeline compiler can be found via GitHub.
4 Comments