Hi

Thanks for following the development of Bloc :).

We invest in multiple backends because of several reasons. For example, for 
window hosting we have SDL2 (which relies on polling) and Glutin (which relies 
on a push model), but we also have Morphic. And now, when it comes to rendering 
we have both Moz2D and Skia. These have different properties.

When we started to work with Moz2D, it was the only cross-platform vector 
graphical framework with rich support of text rendering. We knew that we 
eventually need to move away from it, but it allowed us to bootstrap nicely. At 
that time Skia was actually one of the backends of Moz2D. In the meantime, Skia 
evolved significantly. It hasn’t quite reach the level of Moz2D when it comes 
to text yet, but for our typical use cases, it is already good enough.

While Moz2D works fine today, we now want to move to Skia because of 
maintenance and support for newer technologies. For example, both Moz2D and 
Skia are written in C++ which mean we can not directly use both of them via FFI 
and have to implement C ABI bindings anyway. However, for Skia, there exists a 
project (https://github.com/rust-skia/rust-skia) that provides an up-to-date 
Skia bindings in Rust. This provides a quick way to build and to integrate into 
CI, and it also looks memory safe. Skia also has support for Vulkan.

Now, while we target Skia in the short term, we also consider and play with 
other combinations. In particular, WebRenderer looks interesting. For text, we 
could use Skia, or we could also consider using something like font-kit.

I wanted to detail a bit how we work to show how we exercise the underlying 
architecture continuously. A similar story happens on the host side. We think 
it is critical to have as much flexibility as possible at that level, while 
also exposing all underlying abilities in the image. For example, an important 
piece when dealing with text is to have access to accurate measurements. So, 
those are available through Sparta.

Cheers,
Doru


> On Nov 7, 2019, at 6:52 AM, ducasse <[email protected]> wrote:
> 
> Hi doru and alex
> 
> Can you tell me why you drop Moz2D and switch to Skia (which to us looks a 
> much safer path starting from the packaging :)?
> 
> S
> 
> 
> 

--
feenk.com

"Quality cannot be an afterthought."


Reply via email to