Black Ink New Rendering engine
it’s been almost 2 months I work on a new brush rendering engine for BlackInk.
I spend most of the time to rewrote the way I do the AntiAliasing for brush primtives, the way I store the tiles of the canvas ( I compress it in real time in memory to keep the possibility to brush on 10K canvas in 32bits ) And I have added the support for Layers & 64bits color ( 16bits by component ).
Its was a big refactor work who nearly come to an end.
I continue experimenting brush rendering for BlackInk
Here I render Ellipse Stroke instead of Filled Ellipse on the Brush path, the result is better than I though.
I also test the result with a Simple rectangle and the result is more like a real Calligraphic pen.
NB : I will do a presentation of BlackInk at the VIP2012. So don’t miss the event ;)) and see you there.
Drawing test in a Virtual Texture ( video version of this post ).
You can admire my special coder art drawing skill….
I have also implemented a Undo/Redo mechanism and a simple Brush who is drived by the velocity and the pressure of a Wacom stylet.
The fps is clamped to 30 because of the video capture but the application run in full 60 fps all the time.
Due to virtual texturing caching and full hardware rendering it’s possible to cover very large part of the picture without sacrifying the fluidity of the application ( unlike a lot of drawing software who suffer server lag in that case ) and then to produce some kind of nice Calligraphy.
Some test with a RIbbon like brush.
It was not so easy to handle the extrusion of the curve according to the pen pressure whitout some visual bug. But after a lot of effort the result is worth it ;)
I do some test with my Vector Rendering Engine.
Here a custom brush who render Antialiased Splines from the input of a Tablet ( pressure and velocity managed ).
Due to the GPU rendering the feedback for the brush is instantaneous
I was inspired ( like many ) by the excellent work of Eric Natzke