Hi!
I would like to keep you informed about the progresses of the Cairo render
implementation.
So far I've been reading code the last days and finally I started to have a
better idea of how does the current render system works. From my point of
view it is absolutely needed to fully understand the current one before
attempt to code the next one.
After people has returned from the 2012 LGM, the idea of use GEGL as
replacement for current Synfig's raster operation has taken more value so
it is worth to keep a slot to it here.
So my roadmap (without due date) for the revamping of the Synfig's render
system is this:
1) Write down the current render system flow diagram. It would be enough
detailed to be able to know how the data is transferred from memory to the
final render place and its data type conversions. At the same time it
should be as simple as possible to allow to understand it to a person
without deep code knowledge.
2) Taking in mind the following problems/solutions (see below) create a new
flow diagram to implement the new render system:
a) Use Cairo draw primitives and raster manipulation when possible.
b) Cairo color data is not the same than some sources and target datas. A
data conversion might be needed or alternatively the non supported types
discarded. Use Cairo member functions to render to specific targets when
available (png, screen, pdf, etc.)
c) Current blend methods are not fully supported by Cairo library.
Something has to be done on this.
d) If possible try to use GEGL on raster operations not supported by Cairo
as alternative to current render system. Maybe blend methods can be done
always by a GEGL operation?
3) Once defined the new flow diagram for the new render system, divide the
tasks that can be done in parallel between the brave coders (aka myself,
nikitakit and eldruin - and anyone who want to join! - ) and implement it.
4) During earlier phases of step 3) there should be defined a benchmarking
system and quality to maintain the goodness of the implementation of the
new render system.
I'll take charge of the task 1) for the current render system. Nikitakit is
willing to research about blend methods to see how far can we get with
Cairo (and maybe GEGL?). I would like to count with nikitakit and eldruin
for the next steps and with you who are reading for testing purposes.
Let's see what happen!
Cheers!
--
Carlos
http://synfig.org
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape has changed and how IT managers can respond. Discussions
will include endpoint security, mobile security and the latest in malware
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Synfig-devl mailing list
Synfig-devl@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/synfig-devl