Hi everyone! @blackwarthog has finished rewriting of Warp Layer.
I have confirmed that it is fixes following bugs -
Also I have made some testing:
1. Test with “Clip” parameter off
mkdir -p /tmp/synfig-test/ export TEST=/home/konstantin/sources/synfig-tests/rendering/sources/layers/warp/warp-checkerboard-2point-noclip-horizon-7.sif time ~/soft/synfigstudio-1.0.2-20151008.x86_64/synfig -t png -w 640 -h 360 "$TEST" -o /tmp/synfig-test/synfigstudio-1.0.2.png real 1m3,170s user 0m55,032s sys 0m8,136s time /home/konstantin/sources/synfig.waypoints/_production/build/bin/synfig -t png -w 640 -h 360 "$TEST" -o /tmp/synfig-test/synfigstudio-1.3.12.png real 4m26,876s user 4m6,624s sys 0m19,726s time /home/konstantin/sources/synfig/_production/build/bin/synfig -t png -w 640 -h 360 "$TEST" -o /tmp/synfig-test/synfigstudio-master.png real 1m2,444s user 1m16,303s sys 0m6,543s
As you can see, the speed of new Warp Layer is the same as in version 1.0.2. And 1.3.12 is 4 times slower.
But, if we compare output images, then we will see that version 1.0.2 doesn’t has antialiasing, 1.3.12 has it and new Warp Layer (current master) also has it:
master (new Warp Layer):
(you might want to open those images in separate viewer to see the difference better)
Conclusion for Test 1: New Warp Layer gives higher output quality at the same speed as version 1.0.2.
Consider also following things:
- Version 1.0.2 and 1.3.12 failed to render the test file at resolution 1920x1080 (full HD). Version from master branch rendered it successfully.
- In GUI, when workarea uses Preview mode (enabled by default) the New Warp layer will be rendered without anti-aliasing, so it will be even faster than on 1.0.2.
2. Test with “Clip” parameter on
mkdir -p /tmp/synfig-test/ export TEST=/home/konstantin/sources/synfig-tests/rendering/sources/layers/warp/warp-checkerboard-1point-horizon-4.sif time ~/soft/synfigstudio-1.0.2-20151008.x86_64/synfig -t png -w 640 -h 360 "$TEST" -o /tmp/synfig-test/synfigstudio-1.0.2.png real 0m14,740s user 0m12,928s sys 0m1,812s time /home/konstantin/sources/synfig.waypoints/_production/build/bin/synfig -t png -w 640 -h 360 "$TEST" -o /tmp/synfig-test/synfigstudio-1.3.12.png real 0m32,645s user 0m31,486s sys 0m1,157s time /home/konstantin/sources/synfig/_production/build/bin/synfig -t png -w 640 -h 360 "$TEST" -o /tmp/synfig-test/synfigstudio-master.png real 0m18,471s user 0m25,508s sys 0m0,116s
As you can see, the first place here gets version 1.0.2 (14 seconds). New Warp Layer is at second place (18 seconds). And version 1.3.12 is last one (32 seconds).
At the same time, I remind that version 1.0.2 doesn’t has anti-aliasing, so new Warp Layer can win in GUI (when workarea is in Preview mode).
Conclusion for Test 2: New Warp Layer is a bit slower than version 1.0.2, but in GUI it might be comparable or faster.
Unfortunately, currently GUI doesn’t allows to test performance. It would be nice to be able to choose renderer type in console - then we can compare. Anyone can help implementing this?
Also, to all forum community:
Please help with testing new Warp Layer - maybe you can find better examples showing if it slower or faster, or maybe producing different results. Thank you!