2017-12-03 10:19 GMT-03:00 Carsten Haitzler <ras...@rasterman.com>:

> also i dislike the idea of a jit. i would prefer something like
> "pre-compile
> all permutations into special case functions then runtime call the
> right/matching one".
>

I'm not familiar implementing gfx engines, but with my (small) background
on compilers and the giant notes page[1], I assume there are optimizations
that can't just be implemented otherwise.

The API is like:

ctx.draw_something1();
ctx.draw_something2();
ctx.draw_something3();
ctx.end(); //< here the pipeline is compiled

In this API, the gfx engine can take info on cross-function information. If
draw_something3 completely hides draw_something2, one call can be
completely removed. It's actually boring, because you have to recompile the
whole pipeline every value changed, but the plans to support shaders will
change the situation[2][3].

There are drawbacks too. Evas already do interesting things and I just
don't know if this blend2d would actually be helpful. Evas is pretty damn
fast. And blend2d is whole CPU side, no GPU (but I still think it's
interesting because Bézier curves).

Oh, and thanks for replying to my email. It was just a different point of
view, just as I wanted to have.

[1] https://blend2d.com/notes.html
[2] https://blend2d.com/roadmap.html
[3] https://gist.github.com/vinipsmaker/08349a74566df4c4a9bf82624c13a33b

-- 
Vinícius dos Santos Oliveira
https://vinipsmaker.github.io/
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to