--- Log opened Wed Apr 16 00:00:08 2008 --- Day changed Wed Apr 16 2008 00:00 < genete> I guess that last thing you need to do with a new layer type is register it at makefile level, right? 00:00 < genete> If I find out the layer stuff I should make a wiki 00:00 < genete> heh 00:00 < factor> oh nerw layer type cool 00:00 < factor> yup 00:01 < genete> I'll make a wiki page right now! 00:01 < factor> well make file if you add a mod or dock about it 00:02 < genete> I asked dooglus for a "Bend" layer. Define a straight line and a curved line and the underlying context would be curved (similar to curved gradient) 00:02 < factor> i will be making some scripts if you weish to add a feature to the dock section 00:02 < genete> it would be cool 00:02 < factor> like lens 00:02 < factor> wish even 00:03 < genete> I wish a better onionskin options 00:03 < genete> onion sking should not be defined by keyframes only. 00:04 < factor> Yup 00:04 < genete> I would like something like ktoon does (or tries to do) 00:04 < factor> heh 00:05 < genete> and be able to select past, past& future or future only onionskin 00:05 < genete> even select the transparency amount 00:05 < genete> ktoon is cool but crashes too much 00:10 < factor> Ouch 00:10 < factor> i tried it did not like it too much at all 00:13 < factor> i like the ktoon documents for developers though on its web page 00:15 < factor> not too much in it though 00:16 < factor> pretty bare but has projrect management info 00:21 < factor> i weill try pencil later today 00:21 < genete> nice, please feed back :) 00:25 < factor> ok back later 00:25 < factor> out 00:26 -!- factor [n=Factor-@32.149.147.71] has quit ["mIRGGI meni puis"] 00:28 -!- _Elk [n=Elk@ti0110a340-0355.bb.online.no] has quit [] 00:30 -!- MangoFusion_ [n=jamesu@host81-132-204-68.range81-132.btcentralplus.com] has quit ["Not here"] 00:35 -!- genete [n=Genete@84.122.51.93.dyn.user.ono.com] has quit ["Abandonando"] 00:47 -!- malexmedia [n=alex@oh-71-48-76-229.dhcp.embarqhsd.net] has left #synfig [] 01:51 -!- xerakko [n=Miguel@debian/developer/xerakko] has quit ["Ex-Chat"] 01:58 -!- pabspabspabs [n=pabs@d122-105-78-204.per9.wa.optusnet.com.au] has joined #synfig 02:08 -!- pabs3 [n=pabs@d122-105-78-204.per9.wa.optusnet.com.au] has quit [Nick collision from services.] 02:08 -!- pabspabspabs is now known as pabs3 02:41 < pabs3> hmmmm, what do people think about having a planetplanet aggregator at synfig.org/planet ? 02:42 < pabs3> we could add youtube/etc rss feeds and people's blogs 02:55 -!- AkhIL [n=AkhIL@90.188.214.121] has quit [Remote closed the connection] 03:03 -!- AkhIL [n=AkhIL@90.188.214.121] has joined #synfig 03:44 -!- Yaco [n=Franco@190.188.249.48] has joined #synfig 03:58 -!- factor [n=factor@ip68-14-160-70.ok.ok.cox.net] has joined #synfig 04:22 -!- pixelgeek [n=chatzill@c-71-59-140-184.hsd1.or.comcast.net] has joined #synfig 04:22 < AkhIL> greetings pixelgeek 04:22 < pixelgeek> Hi AkhIL 04:22 < AkhIL> how synfig domo reel goes? 04:23 < pixelgeek> I think I have all the ingredients - just need to assemble them in an aesthetically pleasing manner. :) 04:23 < pixelgeek> I even got your jedi light pen converted to 30 fps 04:24 < AkhIL> nice! 04:24 < AkhIL> I want to show this reel in my university 04:26 < pixelgeek> btw - your email ended up in my spam folder. 04:26 < AkhIL> ha ha... 04:27 < pixelgeek> I guess being from russia from someone that had never sent me email before, with large file attachments and no text triggered the warning signs. 04:27 * AkhIL is spamer 04:33 < pixelgeek> genete, dooglus - I've seen the ppm 480x0 image size issue before as well 04:33 < pixelgeek> re: http://synfig.org/forums/viewtopic.php?f=2&t=68&sid=256db1bc2e0a095d4dd636f81b696d2e 04:46 * AkhIL still have but in synfig wiki http://img73.imageshack.us/img73/8770/synfigwikinm2.jpg 04:46 < AkhIL> s/but/bug 04:48 < pabs3> Yaco: have you been able to commit to the synfigskin git repository? 04:48 < Yaco> hi pabs3 i didnt try to do it 04:49 < Yaco> these days i have been busy with other proejcts 04:49 < Yaco> but soon i will go back to work on that 04:49 < pabs3> cool, let me know if you have any problems with it 05:04 -!- Yaco [n=Franco@190.188.249.48] has quit [Read error: 104 (Connection reset by peer)] 05:11 -!- Yaco [n=Franco@190.188.249.48] has joined #synfig 05:26 -!- timonator [n=timonato@cl-2290.ham-01.de.sixxs.net] has quit [Remote closed the connection] 05:26 -!- timonator [n=timonato@cl-2290.ham-01.de.sixxs.net] has joined #synfig 05:53 -!- akagogo [n=carlos@201.230.50.144] has joined #synfig 05:59 * AkhIL did user page http://synfig.org/User:AkhIL 06:33 < pixelgeek> nice wanted poster! 06:33 < pixelgeek> Want to add yourself to the People page of the wiki too? 06:34 < pixelgeek> Want to add yourself to the People page of the wiki too? 06:34 < pixelgeek> You'd be the first one, AkhIL 06:35 < AkhIL> pixelgeek: I have to get nice small photo first 06:49 -!- Yaco [n=Franco@190.188.249.48] has quit [Read error: 113 (No route to host)] 07:37 -!- akagogo [n=carlos@201.230.50.144] has quit [Read error: 104 (Connection reset by peer)] 07:51 < pixelgeek> 'night all 08:17 -!- pixelgeek [n=chatzill@c-71-59-140-184.hsd1.or.comcast.net] has quit [Read error: 113 (No route to host)] 08:23 * factor trying out pencil 08:23 < factor> looks like pencil uses GL too 08:29 < AkhIL> svn version of pencil is bugy for me 08:30 < factor> I dunno not very feature full yet 08:30 < AkhIL> release version do not support linux 08:30 < factor> synfig is light years ahead in the base drawing stuff 08:30 < factor> I am on linux 08:30 < AkhIL> but for fast sketch animation is very nice 08:30 < factor> yes 08:30 < factor> I agree that seems to be its only quality is sound layer GL and sketch into vector 08:31 < factor> but dont know how to use it 08:31 < factor> it may have them 08:31 < AkhIL> in svn version it have camera layer 08:31 < factor> but seems way lacking compared to synfig 08:31 < factor> yes this one has camera layer 08:32 < factor> version .4.3 08:32 < factor> b 08:32 < factor> looks like it has not been followed up since july of last year 08:32 < factor> this is a july 07 rel 08:32 < AkhIL> mine is 0.4.4b 08:32 < factor> is that the non linux one 08:33 < AkhIL> when i draw something on vector layer and then go to bitmap layer image on vector layer goes right-down 08:34 < AkhIL> i had compiled it from svn 08:36 < factor> cool missing ton o useful stuff this is again uless I dont know how 08:36 < factor> stuff like zoom 08:40 < factor> I do like the dock into one view 08:42 < factor> but I still like synfig better 09:09 < factor> off to sleep cant remember whatI was going to do , but ran out of time any way 09:10 < factor> tried the pencil prog though 09:10 < factor> Z time 09:41 -!- zenoscope [i=cbab2893@gateway/web/ajax/mibbit.com/x-4f47909274e5dd87] has quit [Remote closed the connection] 10:05 -!- rore [n=rore__@d77-218-4-48.cust.tele2.fr] has quit [Read error: 101 (Network is unreachable)] 10:17 -!- rore [n=rore__@d77-218-4-48.cust.tele2.fr] has joined #synfig 11:52 -!- MangoFusion [n=jamesu@host81-132-204-68.range81-132.btcentralplus.com] has joined #synfig 13:22 < dooglus> in C++, /* ... */ comments don't 'nest' - ie. /* /* foo; */ */ doesn't work - the 2nd */ is 'seen' 13:22 < dooglus> so if you want to 'comment out' a big block of code which contains comments, you use #if 0 ... #endif around it 13:22 < dooglus> and change the 0 to a 1 to 'temporarily' uncomment it again 13:23 < dooglus> it's a way of quickly testing a block of code, or maybe switching between 2 alternative algorithms 13:23 < dooglus> problem in synfig seems to be that the code was suddenly abandoned with these #if blocks still present 13:24 < dooglus> (I have around 36 hours of logs to catch up on, so I'm going to appear to be talking about random stuff for a while...) 13:26 < Bombe> :) 13:46 < dooglus> pabs3: I like the 'planet' aggregator idea. I don't know how many of us have blogs (but I think it might just be you?) but even that's a good enough start once you add in the google video feed. 13:47 < dooglus> genete: re. adding a layer, I'll add a simple new layer today and write a wiki page on exactly what I had to do to get it to show up. 13:57 -!- Genete [i=d90c1034@gateway/web/ajax/mibbit.com/x-672d7bf47e41d1b7] has joined #synfig 13:57 < Genete> hi dooglus 13:59 < Genete> dooglus: hey! make a wiki for adding layers rules and understand what they need would be awesome! 14:19 -!- Zelgadis [n=zelgadis@87.103.170.181] has joined #synfig 14:33 < factor> that would rock dooglus 14:35 < factor> ok back later 14:35 -!- factor [n=factor@ip68-14-160-70.ok.ok.cox.net] has left #synfig ["Ex-Chat"] 14:37 < dooglus> ... as soon as i get out of the bath i will 14:38 < dooglus> typing with my one dry hand on a 66% dead monitor isn't conducive to coding :) 14:38 < dooglus> did you try akhil's 'phun' link? it's fun! 14:40 < AkhIL> 8-0 what, what, what.... who called me??? 14:41 < dooglus> AkhIL: you remember the 'phun' physics sim video? 14:42 < AkhIL> nope 14:42 < dooglus> doh 14:45 < dooglus> ok, so it was genete, not you... http://es.youtube.com/watch?v=0H5g9VS0ENM 14:48 -!- AkhIL [n=AkhIL@90.188.214.121] has quit [Read error: 104 (Connection reset by peer)] 14:49 -!- AkhIL [n=AkhIL@90.188.214.121] has joined #synfig 14:51 < dooglus> I clearly remember you saying "that should be easy to add to synfig, if not more" - but the logs tell me it never happened :) 14:51 < Genete> :) 14:53 < dooglus> Genete: do you remember the conversation? 14:53 < Genete> the link was brought to me by my cousin. He's a great coder guy (and in fact he was who introduced me to linux and C++ programming) 14:53 < Genete> about phun? 14:53 < dooglus> Genete: your link wasted my last 2 days :) 14:53 < dooglus> Genete: yes 14:53 < Genete> oh dear! it wasn't my intention! :/ 14:54 < AkhIL> dooglus: I sed something like this 3 hours later about another video example 14:54 < dooglus> Genete: specifically, you linked to it, and someone (I though AkhIL) said "that would be easy to add to synfig" or something? 14:54 < AkhIL> (13:55:03) AkhIL: http://www.vimeo.com/889190/ very nice VFX done in blendr. But I think synfig should have enough power to do same (13:55:37) AkhIL: to do same and even more 14:54 < AkhIL> log from 2008-04-14 14:54 < Genete> no, only show the link to factor and then wnt to bed 14:54 < dooglus> Genete: I enjoyed it. Did you see the competitions on the forum? 14:54 < dooglus> AkhIL: ok, thanks for that. 14:55 < Genete> dooglus: no I didn't. I saw it so addictive so I bookmarked it for later enjoy ;) 14:56 < Genete> I always loved the "The incredible machine" game 14:56 < dooglus> AkhIL: I did 'open link in new tab' for all the links while catching up with the logs, then looked at them after - I must have got confused about which link you were talking about :) 14:57 < Genete> (I'm not so optimist as AkhIL is...) 14:57 < dooglus> Genete: http://www.youtube.com/watch?v=UP1wPFICdUY - someone made a fully working digital clock in phun :) 14:58 -!- AkhIL [n=AkhIL@90.188.214.121] has quit [Read error: 104 (Connection reset by peer)] 14:59 < dooglus> Genete: http://phun.cs.umu.se/forum/viewtopic.php?id=346 - one of the challenges, with some very clever solutions 15:01 -!- AkhIL [n=AkhIL@90.188.214.121] has joined #synfig 15:01 < Genete> cool 15:01 < Genete> dooglus: out for lunch. Don't dissapear because I have to ask you some questions. 15:01 < AkhIL> my pidgin goes mad 15:02 < dooglus> so yesterday I wandered away from phun, through "crayon physics deluxe" ( http://www.youtube.com/watch?v=QsTqspnvAaI ) and onto a game where you get to torture kittens in hell before cooking them ( http://www.kloonigames.com/blog/games/cacodemon ) 15:02 < dooglus> that's the kind of distraction that comes my way when I boot into Windows :) 15:48 < Zelgadis> Genete: I just learned how to do realistic sky, examining your Feb entry (boat splash)! 15:49 < Zelgadis> amazing... 16:17 -!- MangoFusion_ [n=jamesu@host217-44-66-133.range217-44.btcentralplus.com] has joined #synfig 16:28 < Genete> Zelgadis: I'm glad it helped you :) 16:28 < Zelgadis> Genete: can I use your background for my animations? 16:29 < Genete> Zelgadis: the file is released free for coummunity. Just mention me as original creator. 16:29 < Zelgadis> Yeah, according to GPL ;) Thanks! 16:30 -!- Zelgadis [n=zelgadis@87.103.170.181] has quit ["Schastlivo!"] 16:33 -!- MangoFusion [n=jamesu@host81-132-204-68.range81-132.btcentralplus.com] has quit [Read error: 110 (Connection timed out)] 16:33 -!- factor [n=Factor-@32.148.221.248] has joined #synfig 16:33 < AkhIL> Zelgadis: your avatar in people page is broken 16:39 -!- Zelgadis [n=zelgadis@87.103.170.181] has joined #synfig 16:48 < Genete> dooglus: you there? 16:51 < Zelgadis> wil back soon 16:51 -!- Zelgadis [n=zelgadis@87.103.170.181] has quit ["Schastlivo!"] 16:55 < Genete> dooglus: trying to understand the layers creation I've started from an "easy" one: Stretch 16:56 < Genete> looking stretch.cpp it says this: 16:56 < Genete> etl::handle 16:56 < Genete> Layer_Stretch::get_transform()const 16:56 < Genete> { 16:57 < Genete> return new Stretch_Trans(this); 16:57 < AkhIL> imho color correction simpler. but stretch more interesting 16:57 < Genete> } 16:59 < Genete> how can this function return a etl:handle type if the sentence "new Stretch_Trans(this);" returns a class pointer? Is ther some such of implicit casting? 16:59 -!- Zelgadis [n=zelgadis@87.103.170.181] has joined #synfig 16:59 -!- Netsplit kubrick.freenode.net <-> irc.freenode.net quits: MangoFusion_ 17:00 < Genete> AkhIL: any idea how is ti possible or do I have forgotten my C++ knowledge? 17:01 -!- Netsplit over, joins: MangoFusion_ 17:23 < dooglus> Genete: hi 17:24 < Genete> hi dooglus 17:25 < dooglus> Genete: I just was working on a simple "how to add a layer" page 17:26 < dooglus> Genete: I've saved what I got done so far - it might help: http://synfig.org/Source:Adding_a_Layer 17:27 < dooglus> Genete: re. your question: the method is declared to return a handle, and so the Stretch_Trans* is cast to a handle automatically 17:28 < dooglus> Genete: specifically, etl/_handle.h has: 17:28 < dooglus> template 17:28 < dooglus> class handle 17:28 < dooglus> typedef T* pointer; 17:28 < dooglus> //! Constructor that constructs from a pointer to new object 17:28 < dooglus> handle(pointer x):obj(x) 17:29 < dooglus> ie. give it a pointer to type T, and it constructs you a handle 17:29 < Genete> I have to review my C++ knowledge :/ 17:29 < Genete> Grrrr I always hated templates :( 17:30 < dooglus> Genete: just replace every T with Transform 17:30 < dooglus> Genete: then the typedef reads "typedef Transform* pointer" 17:30 < dooglus> so replace every "pointer" with "Transform*" 17:31 < dooglus> now we have a constructor "handle(Transform *x) ..." 17:31 < Genete> I know the theory. But it is difficult to read the code if you don't go so back on it. In this case you needed to go to etl/_handle.h what is "so far"... 17:31 < dooglus> ie. a constructor which can make handle objects from Transform* pointers 17:31 < Genete> for example what the hell is GUID? 17:32 < dooglus> Genete: you could just assume that it works, and not look at the details 17:32 < Genete> it is like some sort of counter for transform layers? 17:32 < Genete> yeah! it is what I'm doing! 17:32 < dooglus> a GUID is a long string of hex digits like you see in .sifz files 17:32 < dooglus> it identifies any Node 17:33 < dooglus> 17:33 < Genete> cool 17:33 < Genete> let's take a look to your page.... Yuuupieeee!! \o/ 17:34 < dooglus> I think GUIDs are how linking is done - if two circles have a radius with the same GUID, then the radii aren't just the same, but they're linked 17:36 -!- Zelgadis [n=zelgadis@87.103.170.181] has quit ["Schastlivo!"] 17:38 < Genete> dooglus: wow! interesting concept for a noob like me! 17:39 < Genete> dooglus: thankyou very much for the wiki page. Too much people would appreciate it. 17:40 < Genete> dooglus: there is a ny rule to know if a new layer is a filter, distortion, standard or what? In other words how can we know in which module should we add our layer? 17:42 < dooglus> Genete: I think it's pretty ad-hoc 17:43 < dooglus> Genete: filters modify the layers under them, geometry layers make new shapes, etc. 17:43 < dooglus> I updated the page a bit 17:47 -!- wildhostile [n=wildhost@ALamentin-104-1-81-120.w80-8.abo.wanadoo.fr] has joined #synfig 17:49 < Genete> dooglus: so get_color is the defined function for final quality render and accellerated render is the one for synfigstudio? 17:58 < dooglus> Genete: no 17:58 < Genete> just read it :/ 17:58 < dooglus> Genete: get_color isn't used if the layers above don't transform us (except by the 'Info' panel) 17:58 < dooglus> Genete: try changing the set_s(0) to set_s(1) in get_color and see the effect it has - it messes up the Info panel display, but that's all 17:59 < dooglus> (updated the page again with more words) 18:00 < Genete> set_s() is set saturation for color types? 18:02 < dooglus> Genete: yes 18:02 < dooglus> I'll write about it 18:03 < Genete> dooglus: have to go now but I'll keep my two eyes on this!!! THANKS! 18:03 < dooglus> Genete: http://synfig.org/api/synfig/classsynfig_1_1Color.html#b62c2069fc43baa97fba17b33ff4d32d 18:03 -!- Genete [i=d90c1034@gateway/web/ajax/mibbit.com/x-672d7bf47e41d1b7] has quit ["http://www.mibbit.com ajax IRC Client"] 18:04 < dooglus> I don't think it's a good idea to link to such a random-looking URL though 18:39 -!- rubikcube [n=kvirc@dslc-082-082-085-145.pools.arcor-ip.net] has joined #synfig 18:57 -!- wildhostile [n=wildhost@ALamentin-104-1-81-120.w80-8.abo.wanadoo.fr] has quit [Remote closed the connection] 18:57 -!- factor [n=Factor-@32.148.221.248] has quit ["mIRGGI meni puis"] 18:57 -!- genete [n=Genete@84.122.51.93.dyn.user.ono.com] has joined #synfig 19:02 -!- MangoFusion_ [n=jamesu@host217-44-66-133.range217-44.btcentralplus.com] has quit [] 19:04 < dooglus> genete: http://synfig.org/Source:Adding_a_Layer - I started writing how to add a parameter 19:04 < genete> dooglus: in your example you call pen.dec_x(x) with a not initialized value of x, is that correct? 19:05 -!- _Elk [n=Elk@ti0110a340-0355.bb.online.no] has joined #synfig 19:08 < genete> I'm happy that I'm not lost with your tutorial. :) 19:16 -!- omry [n=omry@bzq-84-108-20-56.cablep.bezeqint.net] has quit [Remote closed the connection] 19:43 < dooglus> genete: x is initialised in the inner loop 19:44 < genete> ah right, so when the call is done it has a value :) 19:45 < genete> why do we need to decrement x in the outer loop? 19:45 < dooglus> genete: each time y goes up (ie. we start a new row) we need to step x back to the beginning of the row 19:45 < dooglus> dec_x(x) takes x off the pen's x position (not 1) 19:46 < dooglus> http://synfig.org/api/ETL/classgeneric__pen.html#ee072394e747bc06d4901dcd2339ce1d 19:47 < dooglus> or, better, http://synfig.org/api/ETL/__pen_8h-source.html#l00200 - 'cos the documentation is missing! 19:50 < genete> I got it. One is with argument and other without. So one is incremented by one and the other is decremented an mount of x 19:52 -!- MangoFusion [n=jamesu@host217-44-66-133.range217-44.btcentralplus.com] has joined #synfig 19:53 < dooglus> right 19:54 < dooglus> updated http://synfig.org/Source:Adding_a_Layer again to show adding a parameter to scale the saturation 19:54 < dooglus> any more questions about it? 19:54 < dooglus> I guess I should discuss inheriting from Layer_Composite to get amount, blend_method, z_depth params 19:55 < genete> yes. And also an example that uses hit_check() fucntion and the calculation of the bounding box 19:56 < genete> and later some about inherit from Transform layer for new distortion layers :) 19:59 < dooglus> genete: to see when get_color() is used... 19:59 < dooglus> replace the body of get_color() in desaturate.cpp with: 19:59 < dooglus> return Color(1, 0, 0, 1); 19:59 < dooglus> ie. it always returns solid red 19:59 < dooglus> then load http://dooglus.rincevent.net/random/rgb3.sifz 19:59 < dooglus> it has a twirl over a desaturate 20:00 < dooglus> you'll see the red where the twirl means that the rectangle rendered by accelerated_render isn't enough 20:01 < dooglus> screenshot of studio: http://dooglus.rincevent.net/random/rgb3.png 20:01 < dooglus> result of commandline render: http://dooglus.rincevent.net/random/rgb3commandline.png 20:02 < dooglus> the red from get_color() shows up the same in both 20:03 < genete> so what does it means? that desaturate is badly written or twirl? 20:03 < genete> btw, I'v loaded the file with my current version and it loads without complain! 20:03 < dooglus> and in the gui, the Info panel shows red even when pointing in the middle: http://dooglus.rincevent.net/random/rgb3studio.png 20:04 < dooglus> genete: neither really - it just means that layers should implement get_color() as well as accelerated_render() if they want to render properly when distorted 20:05 < genete> ah 20:05 < dooglus> genete: you have a proper get_color() in your version I guess. I broke it, getting it to always return red, so you can see where exactly it's used 20:06 < genete> look: http://i85.photobucket.com/albums/k74/Genete/synfig/Pantallazo-Capas.png 20:06 < genete> the file you have posted 20:07 < dooglus> it means you don't have the 'desaturate' layer available 20:07 < dooglus> any layer type not known will load OK, but not do anything, and show up as 'MIME' 20:08 < dooglus> I think it will save fine too, so you can edit .sif files which contain layers you don't know (in your old version of studio), and they'll save back just fine 20:08 < genete> console output: Couldn't find layer to be activated in layer list. Rebuilding index... 20:08 < dooglus> I mean, even though you don't know what this 'desaturate' layer is, you can edit the .sif file, change the other layers and send it back to me, and the 'desaturate' layer will still be in there, even though your synfig doesn't know what exactly it is 20:09 < dooglus> genete: I see that a lot, but I don't think it's related 20:10 < genete> that would allow make our own fork layers without not problem on share files? 20:11 < dooglus> genete: yes - it lets you make your own secret layer types, and still allow me to load and save your compositions 20:11 < dooglus> although, of course, I won't see the work done by the layer types I don't have here 20:11 < genete> that's cool anyway 20:12 < genete> dooglus: the perform and unperform functions of a transform type layer, must be always defined? 20:13 < genete> what if I know the perform function but cannot calculate its inverse? 20:14 < dooglus> I'm not familiar with that code 20:15 -!- malexmedia [n=alex@oh-76-2-223-75.dhcp.embarqhsd.net] has joined #synfig 20:15 < dooglus> but I can see that both directions are needed 20:15 < dooglus> one to decide where to draw ducks 20:15 < dooglus> and the other to calculate the effect of dragging a duck on the parameters 20:16 < genete> glup 20:17 < genete> I deduced it waching stretch layer that have an easy transformation 20:19 < genete> the problem is when unperform fucntion gives you two possible resutls with the same argument 20:20 < genete> in that case I think that we should decide on one of the sides depending on other extra argument (that I cannot imagine its meaning by now) 20:29 -!- factor [n=Factor-@32.148.3.187] has joined #synfig 20:34 < malexmedia> heyo guys 20:34 < malexmedia> i and my artist are sitting down together with synfig for the first time right now 20:34 < malexmedia> we're having some difficulty with the draw tool simplifying the strokes he makes 20:35 < malexmedia> any tips? 20:35 < dooglus> malexmedia: do you see the 'tool options' panel? 20:35 < malexmedia> yeah 20:35 < factor> cool 20:35 < dooglus> select the draw tool, then in the 'tool options' panel there's a parmeter towards the bottom called 'smooth' which determines how much the draw tool simplifies your strokes 20:36 < malexmedia> the lowest it'll go is 0.010 20:36 < malexmedia> we tried setting to 0.0, and it defaulted back to that 20:36 < malexmedia> the results are all wonky 20:36 < malexmedia> ie, my artist draws a smooth curve, and it results in two or three ducks 20:37 < malexmedia> with mostly straight lines between 20:37 < dooglus> this is with a tablet? or mouse? 20:37 < malexmedia> tablet 20:37 < dooglus> what if you use the mouse? is that better? 20:37 < malexmedia> he's pretty good with it in inkscape 20:38 < malexmedia> okay, trying with the mouse 20:38 < malexmedia> ooh 20:38 < malexmedia> a mouse-drawn curve is represented by an appropriate number of ducks 20:39 < malexmedia> whereas tablet-drawn results are extremely over-simplified 20:39 < genete> malexmedia: try it with and without "Local Error" anabled 20:39 < malexmedia> trying 20:39 < malexmedia> we were trying without 20:40 < genete> it changes the Smooth meaning and its lower value 20:40 < malexmedia> it seems as though local error minimizes or removes the problem 20:41 < dooglus> I wonder what it really does - maybe it could do with being renamed to something more meaningful 20:41 < malexmedia> hrm, individual strokes are less corrupted 20:42 < malexmedia> but when it comes to drawing actual objects, the results are very... blocky 20:42 < malexmedia> or splotchy 20:42 < dooglus> malexmedia: with 'local error' on too? 20:43 < malexmedia> yes 20:43 < malexmedia> local error helps, but not enough 20:43 < genete> with local error enabled try higher smooth values 20:43 < malexmedia> the resulting shapes just don't faithfully represent the strokes 20:44 < malexmedia> default was 20, trying 40 20:44 < malexmedia> 40 is way too much simplification 20:44 < factor> If you do a sine wave with high freq. Does it catch that and also with a low freq. Sine wave 20:44 < genete> 20 or 40 is too much 20:45 < factor> or do you get errors with both 20:45 < genete> what are your default units malexmedia ? 20:45 < malexmedia> hmm, turning local error on defaulted smooth to 20 20:45 < genete> File->Settings->Misc. 20:45 < malexmedia> default units are points i believe 20:45 < malexmedia> we didn't change them 20:46 < genete> for me 20 is unusable 20:46 < genete> for smooth 20:46 < malexmedia> i assumed it was jumping up to 20 because that was the minimum 20:46 < malexmedia> we're experimenting with local error on and lower smooth values 20:46 < genete> ok 20:46 < dooglus> malexmedia: there are 2 values stored - the local and the global smoothness 20:47 < dooglus> malexmedia: toggling the 'localerror' checkbox will switch between the two 20:47 < malexmedia> with local error enabled, smooth won't go any lower than 1.0 20:47 < malexmedia> hmm 20:47 < malexmedia> the strokes still look like they're being drawn by a child :-P 20:48 < genete> dooglus: I didn't know that both smooth values have effect 20:48 < dooglus> do the other tools behave properly with the tablet? 20:48 < dooglus> like if you try to draw a circle with the tablet, does it go where you request, with the requested radius? 20:48 < malexmedia> isn't 'draw' the only one with variable width support? 20:48 < factor> be cool to see a screen shot 20:48 < dooglus> it is, yes 20:48 < malexmedia> okay, testing those things 20:49 < malexmedia> yes, the circle tool follows the stylus properly 20:49 < dooglus> I don't have a tablet available here, so I can't test it unfortunately 20:50 < factor> i lost my pen :( 20:50 < dooglus> can you say how the resulting drawn shapes are wrong? are the ducks it does place on the draw you drew? 20:50 < malexmedia> lemme get some screenshots for reference 20:51 < genete> dooglus: I think there are two effects: the amoount of points and its curvature 20:51 < genete> the drawing speed also is important 20:51 < dooglus> malexmedia: use the 'bline tool' to draw a reference curve that you then follow with the draw tool, so I can see what you tried to follow, and what resulted 20:52 < dooglus> genete: yes - it sounds like the tangents are coming out too short. I'm wondering if the vertices themselves are accurate at least 20:53 < genete> more vertices more short are the tangents 20:53 < genete> and its inverse 20:54 < dooglus> here's an example: http://dooglus.rincevent.net/random/drawtest.png - the black line is the bline I followed. the red line is the result of using the draw tool with a 'smooth' of 1.0 and no 'localerror' selected 20:54 < malexmedia> okay 20:54 < dooglus> (I'm not particularly good with the mouse, so it's not a very good match - but turning the 'smooth' up would make it better 20:55 < malexmedia> um, hold on... 20:55 < malexmedia> we'll do the path follow test next 20:55 < genete> malexmedia: for long strokes few details turn local error off and set it around 1/3 of the length of the stroke (in units) 20:56 < malexmedia> madness over here, one moment please :) 20:56 < dooglus> with smooth=3.0 : http://dooglus.rincevent.net/random/drawtest2.png 20:57 < genete> for small strokes and high details turn local error on and ser smooth to the 1/10 of the stroke length in pixels 20:57 < genete> dooglus: I'm guessing on values and results 20:58 < malexmedia> okay, we'll do the path test in a minute 20:58 < malexmedia> for the moment, here's what we've got 20:58 < malexmedia> http://misc.malexmedia.net/screenshot-synfig.png 20:58 < malexmedia> now, for reference, that's supposed to be the same general shape as a character appearing in this image: http://files.malexmedia.net/posters/Malex/audio/malex_minute/illustrations/e100_illustration_large.jpg 20:59 < genete> It seems that local error on turns smooth into pixel and when off it is turned to units 20:59 < malexmedia> bottom left hand corner, little furry monster 20:59 < malexmedia> drawn with a wacom pad in inkscape 20:59 < malexmedia> same hardware setup as the synfig screenshot 20:59 < malexmedia> it does appear to be moving the vertices 21:01 < malexmedia> haha, how do you end the bline path? :-P 21:01 < malexmedia> we can't let go :-P 21:01 < dooglus> click the 'gear' icon in the bottom of the tool options 21:01 < dooglus> or switch to a different tool 21:02 < malexmedia> okay, rockin' 21:02 < dooglus> (alt-a switches quickly to the 'normal' tool) 21:02 < malexmedia> anyway, see the significant difference between the character in the synfig snapshot and the inkscape document 21:03 < malexmedia> (while my artist is creating the path trace screenshot) 21:03 < dooglus> I can't really see the synfig version for all the 'ducks' 21:03 < malexmedia> mm 21:03 < dooglus> if you click on the background they'll all go awa 21:03 < dooglus> y 21:05 < malexmedia> working on the path trace thing now 21:05 < dooglus> one thing that you probably don't want for that guy are the 'auto' options in the draw tool - 'auto link' and 'auto extend' 21:05 < dooglus> they will join your new strokes onto old strokes if the new stroke starts or ends near an existing duck 21:06 < malexmedia> yeah, we turned all the auto options off :-P 21:06 < dooglus> ok 21:08 < malexmedia> sorry this is taking so long 21:08 < malexmedia> it would help if we were generally more familiar with the tool... 21:09 < malexmedia> hmm 21:09 < genete> malexmedia: want to see my trial? 21:09 < malexmedia> sure 21:09 < malexmedia> one of the problems we're running into here is that my artist can't trace the line 21:09 < malexmedia> i mean, he can do it slowly 21:10 < malexmedia> but when we go slower it drops more ducks, and is thus a better representation of the line 21:10 < genete> I'm not an artist but loadedd your reference file and did this: http://i85.photobucket.com/albums/k74/Genete/synfig/Pantallazo-AnimacinSynfig1Raz-1.png 21:10 < malexmedia> was that with a tablet? 21:11 < genete> yup 21:11 < genete> I forgot to do the outer line in one stroke so now is difficult to fill 21:11 < genete> I used a wacom graphire 21:12 < genete> and the settings I suggested you before 21:12 < genete> for the outer stoke I used local error off 21:12 < genete> and for the mouth and the eyes local error on 21:12 < malexmedia> how fast did you draw it? 21:12 < genete> the time I was in silence :) 21:12 < genete> oh 21:13 < genete> you mean the stroke speed? 21:13 < malexmedia> well, i mean, individual strokes 21:13 < malexmedia> yeah 21:13 < genete> it doesn't matter 21:13 < genete> well, 21:13 < malexmedia> i think it might matter 21:14 < genete> fast but also can be slow 21:14 < genete> (not so fast) 21:14 < malexmedia> the faster my artist draws the strokes, the fewer vertices we get 21:14 < genete> it depends on the smooth values andif the local error is on or off 21:14 < malexmedia> yeah, it's not dropping vertices based on the distance moved, it's sampling at a constant rate of speed 21:15 < malexmedia> by slowing down, we're suddenly getting decent shapes 21:15 < genete> yes, that's true 21:15 < genete> if you look to the screenshot 21:15 * malexmedia looks 21:15 < genete> you can see a rounded hair on the top 21:15 < genete> between the eyebrows 21:16 < genete> it was really fast 21:16 < malexmedia> well, it's definitely able to create smooth shapes with few vertices 21:16 < genete> and the tool didn't catch the direction change 21:16 < genete> properly 21:16 < malexmedia> but smooth != faithful to the original stroke 21:16 * malexmedia nods 21:16 < dooglus> malexmedia: this sounds like a bug I've looked into before 21:17 < malexmedia> so how do we improve the situation for artists whose style is to draw very fast? 21:17 < dooglus> in order to avoid 'jags' where the artist hand shakes, synfig will avoid drawing a corner if it's less than 6 'samples' from the previous corner 21:17 < genete> malexmedia: you should not tell the artists to draw very fast for an ANIMATION design 21:17 < dooglus> this seems to be far too conservative 21:18 < malexmedia> genete: i'm not going to tell my artist how to draw ;) 21:18 < malexmedia> the precision in my artist's strokes is very high, as his inkscape images clearly demonstrates 21:18 < genete> malexmedia: if you're going to animate the monster you should not tell to an artist to draw it in studio you should tell it to the animator person 21:18 < malexmedia> i would like to translate that precision to synfig, if possible 21:19 < genete> because usually you should not "draw" to animate you should move ducks redrawing (repositioing the ducks) 21:20 < malexmedia> hmm 21:20 < genete> so if the model is quite high complex it would be so difficult to animate later 21:20 < malexmedia> i see 21:20 < malexmedia> so if the number of ducks is too high, it becomes unmanageable 21:20 < factor> right 21:20 < malexmedia> so you can't just draw multiple key frames from scratch 21:20 < malexmedia> ie, synfig can't smoothly interpolate between two unrelated frames? 21:21 < factor> working on a way to do that 21:21 < genete> you can alwais can use the smooth move tool but at the end the tangent ducks becomes impossible to control and needs individual managing 21:21 < genete> what do you understand by two unrelated frames? 21:21 < malexmedia> well 21:21 < malexmedia> i think we were hoping to onion skin a previous keyframe 21:22 < malexmedia> trace a new position 21:22 < dooglus> genete: he means to freehand-draw 2 shapes, and have them interpolated 21:22 < malexmedia> and have it interpolate between them 21:22 < factor> Yup 21:22 < malexmedia> using, ie, a vector mesh tranformation 21:22 < dooglus> malexmedia: that's not something that synfig supports at the moment 21:22 < malexmedia> although... my understanding of mesh transformations is more for 3d meshes 21:23 < malexmedia> i assume 2d vector tranformations would be similar 21:23 < factor> that is what my panel i wasweorking on will do , no eta ion that though 21:23 * malexmedia nods 21:23 < dooglus> malexmedia: see http://synfig.org/Redraw_tool - that's what you're wanting I think 21:23 * malexmedia looks 21:24 < genete> (dooglus: that "at the moment" sounds like a wish?) 21:24 < malexmedia> yes, sounds vaguely similar 21:24 < malexmedia> but at the same time 21:24 * factor hopes to make that one come true 21:25 < dooglus> genete: If wishes were horses, then beggars would ride 21:25 < malexmedia> it's not probably good to force the objects to have the same complexity 21:25 < factor> for rotoscoping out put as well 21:25 < malexmedia> for example, if you're animating a rotating object, the complexity of the 2d vectors will significantly change over time 21:25 < genete> malexmedia: you can make vertices active (visible) or not active (invisible) that is an intermediate solution... 21:26 < malexmedia> to compensate (at least in 3d meshes) you can subdivide less complex vectors to artificially match the complexity of the more complex vectors 21:26 < genete> malexmedia: that's the question. let the computer do the tweening or you draw every frame? 21:27 < malexmedia> well, in theory, the animator should be able to draw as many (or few) frames as he or she wants in order to represent the desired motion 21:27 < factor> complrexify and simplyfy :) 21:27 < factor> complexifyeven 21:27 < malexmedia> so, for example, in a case where the motion is deemed too unrealistic, a new keyframe could be drawn in the offending area to clarify the motion 21:27 < malexmedia> resulting in more accurate tweening sections 21:28 < genete> if you want the computer do the tweeining of a two different meshes you should give him some conversion rules! 21:28 < factor> yup 21:28 < genete> if not how can it do the tewwning? 21:28 < genete> tweening even 21:29 < genete> a pure hand drawn artist doesn't care on conversion rules. He simply would draw more in-betweens if needed 21:29 < malexmedia> anyway, it's the sort of thing we've constantly theorized about implementing 21:29 < malexmedia> yes, true 21:30 < malexmedia> the idea is to have an interpolation algorithm that can transform smoothly between any two vector shapes 21:30 < malexmedia> which, iirc, isn't all that hard with trangle meshes 21:31 < dooglus> the existing workflow in synfig is to draw the starting position, and then to transform it by dragging the ducks around to change its shape in future (or past) keyframes 21:31 < malexmedia> and i presume a lot of the same concepts would apply to 2d vector animation 21:31 < malexmedia> dooglus: that sounds good, just not what we were (unrealistically) hoping for :) 21:32 < dooglus> malexmedia: I don't know how unrealistic it is - it's just not what synfig offers at the moment 21:32 < dooglus> malexmedia: do you have a reference for the transformation of triangle meshes? 21:32 < malexmedia> no, sadly... just something i've been thinking about for years 21:33 < malexmedia> my dad used to work in computer graphics, so we would talk about it 21:33 < malexmedia> i think i may have attended a siggraph lecture on the subject 21:33 < malexmedia> but that would have been a few years ago 21:33 < malexmedia> but the rough concept is 21:33 < genete> malexmedia: also the problem is that given to points ther is not always a straight path to interpolate from one to other 21:34 < malexmedia> genete: well, that depends 21:34 < malexmedia> if we're talking about linear interpolation (the simplest kind) then it clearly must be a straight line from point to point 21:34 < malexmedia> the problem comes in when you have a different number of points in each target 21:35 < malexmedia> for example, in 3d meshes 21:35 < genete> that's the problem for 2D meshes too 21:35 < malexmedia> a cube can be represented with only 12 triangles 21:35 < factor> Just wondering if you can remove a duck when more than one duck gets to close to the final duck pos 21:35 < malexmedia> but a sphere needs (lots) more 21:35 < malexmedia> so, if you're transforming from a cube to a sphere 21:36 < genete> (from a aquare to a circle) 21:36 < genete> square 21:36 < malexmedia> the cube needs to be transparently (in the back-end) subdivided to have the same number of triangles as the sphere 21:36 < factor> or added complexify :) 21:36 < malexmedia> before the transformation can occur 21:36 < malexmedia> then it's pretty much a straight line for each vertice 21:37 < genete> (that means that you have to de 21:37 < genete> define a transformation rule) 21:37 < factor> yers 21:37 < malexmedia> the complexity comes in when you have to be smart about where on the surface of the cube the subdivisions happen, so the distribution of triangles is closest to the other shape 21:37 < factor> or prams as well 21:37 < genete> because you can link wrong triangles from start to end and the middle would be a mess 21:38 < genete> for example convert the north to the south and viceversa 21:38 < malexmedia> no 21:38 < malexmedia> you can't just link any triangle to any other triangle 21:38 < malexmedia> you have to pair up triangles by distance 21:39 < malexmedia> so, if you have the first triangle in triangle list A 21:39 < malexmedia> you match it up not with the first triangle in triangle list B 21:39 < malexmedia> but the _closest_ triangle in triangle list B 21:39 < genete> assuming that both meshes are a the same average position 21:40 < genete> and orientation 21:40 < malexmedia> well, this algorithm is used most often for transforming one object type to another 21:40 < malexmedia> so position and orientation are irrelevant 21:41 < malexmedia> but 21:41 < malexmedia> if applied to synfig, i see your point 21:41 < malexmedia> for example, if you have a character facing left, then draw the same character facing right 21:41 < malexmedia> the interpolation would result in a new face growing out the back of his head 21:41 < malexmedia> (clearly not what the animator had in mind) 21:42 < malexmedia> in that situation, the animator would need to draw more key frames 21:43 < genete> the main key is: more aid from the computer you want, more preparation of the model you need 21:43 < malexmedia> i'm not sure i agree 21:44 < malexmedia> the algorithm i described wouldn't actually require any special preparation 21:44 < malexmedia> it might be difficult to implement, and i admit i might be overlooking something 21:45 < genete> malexmedia: I made some sort of head turn in synfig. _Just preparing the model properly. Watch it: http://www.youtube.com/watch?v=W3ctTJQ9koc 21:45 < dooglus> malexmedia: even if the 2 shapes have the same complexity, you still need to work out which points in each correspond 21:46 < factor> yup hooks 21:46 < factor> dont need all hooked just a good amount 21:47 < factor> depends on the complexity 21:47 < malexmedia> genete: very, very nice 21:47 < dooglus> but you're right - drawing in each keyframes pretty much solves that 21:47 < dooglus> *extra* keyframes I mean 21:47 < genete> not mention if the amount of points change between shapes 21:47 < malexmedia> dooglus: yeah, the whole point is to keyframe any substantial change in the motion 21:47 < dooglus> transforming a 'C' into a 'U' by either rotating or not: http://dooglus.rincevent.net/random/c-u.gif 21:48 * malexmedia looks 21:48 < genete> malexmedia: want to have the sifz file of the head turn? 21:48 < malexmedia> genete: sure :) 21:48 < dooglus> http://dooglus.rincevent.net/random/c-u.sifz if you want to see the synfig file 21:49 < malexmedia> dooglus: yeah, the interpolation method i'm proposing wouldn't see the possibility of rotation 21:49 < malexmedia> it would just mash up the object 21:49 < malexmedia> but, wouldn't the keyframe interpolation be just one tool in the arsenal? 21:49 < dooglus> malexmedia: if you put in enough keyframes then you'd get rotation I suppose 21:49 < malexmedia> clearly you can keyframe rotation already 21:50 < malexmedia> so there would be no point in drawing the every-other-frame that would be necessary to approximate rotation 21:51 < factor> just derpends how much computer aided help you want 21:51 < malexmedia> genete: how long did the head turn test take you? 21:51 < malexmedia> approximately? 21:52 < genete> one moment WC... 21:53 < factor> afk 21:54 < dooglus> malexmedia: to get back to the draw tool for a moment - do you think it's broken for the tablet specifically? or is it just that when you use the mouse you go slower, and that's why it works better? 21:55 < dooglus> ie. can you reproduce the same brokeness with the mouse just by moving it faster? 21:55 < genete> malexmedia: from woman drawn in gimp to the final render 21:55 -!- Netsplit kubrick.freenode.net <-> irc.freenode.net quits: MangoFusion 21:56 < genete> it took me from saturday 11:20 am to sunday 20:47 21:56 -!- Netsplit over, joins: MangoFusion 21:56 < genete> consider that I did it as a hobby 21:56 < genete> so about five full hours 21:57 < malexmedia> genete: not bad at all 21:57 < genete> and here's the file http://www.darthfurby.com/genete/synfig/woman2.sifz 21:57 < malexmedia> dooglus: we're testing now 21:57 < dooglus> genete: how much of that was working out how to do it? how long do you think it would take to do it now, with the experience you gained? 21:58 < genete> the mouse of the other day took me about 2 hours 21:58 < malexmedia> dooglus: it's hard to tell 21:58 < malexmedia> i think we expect a lot less from the mouse 21:58 < malexmedia> it's hard to get a reference point 21:58 < genete> http://www.youtube.com/watch?v=Y7w_CPFKMSg 21:59 < genete> dooglus: I think you didn't watched the mouse for the cahllenge 21:59 < malexmedia> ie, when we move the mouse fast, does it look jerky because the mouse is a terrible pointing device? or does it look jerky because synfig is doing something wrong? 21:59 < genete> malexmedia: animate it was pretty easy. The main work was its design 22:00 < dooglus> malexmedia: try drawing a 'z' quite quickly with the mouse and with the tablet. I see: http://dooglus.rincevent.net/random/z-test.png that synfig won't draw 2 corners - it rounds one of them off if I move too fast 22:01 < dooglus> genete: I saw it - it reminded me of your bald-headed lady :) 22:01 < malexmedia> genete: that mouse animation is good too 22:01 < malexmedia> :) 22:01 < genete> ouch! the balded lady would cry if you compare her with a mouse ;) 22:02 < dooglus> genete: and vice versa no doubt. but the pseudo-3d look is similar in both, right? 22:02 < malexmedia> hey, how do you change the width of the stroke at a duck? 22:02 < genete> just kidding :) ... right 22:03 < dooglus> does the 5 hours include the time taken to shave her head? wouldn't it have been faster to leave her hair on? 22:03 < malexmedia> and/or change the width of the whole stroke 22:03 < genete> dooglus: :P 22:03 < dooglus> malexmedia: alt-5 or caret>view>ducks>width will turn on width ducks 22:03 < dooglus> malexmedia: the toolbox has a default width widget. the circle you see there? 22:04 < dooglus> to the right of the default color selectors 22:04 < genete> and to change the width of the shole stroke modify it at the paramters of the outline layer 22:04 < malexmedia> ah, we see the width ducks now 22:04 < genete> whole even 22:04 < malexmedia> and yes, we could change the width of the initial stroke 22:04 < genete> malexmedia: have you seen the mouse ears? 22:04 < dooglus> there are 6 types of duck - alt-1 through alt-6 toggles them, or use the caret menu 22:05 < malexmedia> dooglus: can you clarify "caret menu" ? 22:05 < malexmedia> genete: i noticed the transparency 22:05 < genete> impossible to obtain properly dhape if use draw tool. 22:05 < dooglus> malexmedia: in the drawing window, the little triangle in the top left corner, between the horizontal and vertical rulers 22:05 < genete> using the bline tool you control the curvature more efficiently 22:06 < genete> and can trace over your model more accuracyly 22:06 < genete> (that's my opinion) 22:06 < genete> malexmedia: have you got the woman file? 22:06 < dooglus> malexmedia: that 'caret' pops up a menu - the same menu you get from right-clicking in the background of the drawing area. it's just that there's not always any background visible to right-click on 22:07 < genete> malexmedia: look at its composition. 22:07 < genete> it is "thought to be animated" 22:07 < genete> ah! and there is another thing you nave not considered! 22:08 < genete> layer z depth! 22:08 < genete> very useful if you prepare your model previously on that feature 22:08 < malexmedia> genete: we're opening the woman2 file now 22:09 < genete> malexmedia: look her head back folder 22:09 < malexmedia> looking in head back 22:10 < genete> it is mostly hidden behind the face 22:10 < genete> but it is deformed when she turns her head 22:10 < genete> simulationg her head back 22:11 < malexmedia> i see 22:11 < genete> frame 1s 22:12 < malexmedia> it's clearly very well thought-out 22:13 < malexmedia> plenty of food for thought, gentlemen 22:13 < malexmedia> i should hop out, but thank you all for your time 22:14 < genete> inj this case the eye is hidden by the nose but in other cases the eye is placed behind the head layer (for example it would be needed for the mouse example) if want to have a 90 deg turn) 22:15 < dooglus> genete: why did you get rid of the 'rotate' layer between woman and woman2? 22:15 < genete> malexmedia: you're welcome and come back 22:16 < genete> dooglus: rotate didn't allow to keep points linked between rotated and not rotated layers 22:17 < genete> and I needed it for the head bacl layer that is part of the neck that doesnt rotate 22:18 < genete> If I added the rotate tool to make the last movements I needed to move the points of the base of the neck to keep them static 22:18 < genete> (that's why we need bones!!! 22:21 < factor> Ahh bones would be cool 22:21 < genete> dooglus: how can I use a new feature from an old file? 22:22 < genete> in particular how can I make use of plant width for a file created before its implementation? 22:24 < dooglus> genete: load the old file into a new synfig? 22:25 < genete> I've loaded the woman2.sifz and cannot modify the plant width (eyelashes) 22:28 < genete> can you? 22:28 < dooglus> what is 'plant width'? 22:31 < dooglus> oh, I see 22:31 < dooglus> copy & paste the layer 22:31 < dooglus> the new layer will honor the width 22:31 < dooglus> the idea is that the old layer should render the same way it always did 22:32 < genete> I know the idea is keep old behavior but can we manually override it? 22:32 < dooglus> yes - copy & paste the layer, then delete the old one 22:34 < genete> cool 22:34 < factor> tada 22:35 < dooglus> and if you want to make a copy of the old layer without having the width used? you're stuck I guess 22:36 < genete> using the (uncoded yet) clone layer option? 22:37 < dooglus> I think 'use width' should probably be a user-visible parameter 22:37 < dooglus> maybe you don't want the width of the bline to affect the plant 22:38 < genete> it could be an option (but one of those strange animatable options) 22:38 < genete> dooglus: I cannot stop thinking on a new feature :/ very useful I think 22:39 -!- bytefield [i=5367a478@gateway/web/ajax/mibbit.com/x-2ad01b83173da2a9] has joined #synfig 22:40 < genete> if I want to make a region partially outlined, current solution comes from manual link some outlines to the region to partially outline it 22:40 < genete> what if we add a parameter to the vertex that tells if the outline is active on it or not? 22:41 < dooglus> genete: I guess setting the outline width to 0 makes it 'not outlined' in parts? 22:41 < genete> if you find to neighbout or more vertices with the outline off then you don't draw the curve between them 22:41 < genete> but you cannot end with a rounded or sharp end 22:41 < dooglus> right 22:42 < dooglus> if we're adding a new feature to allow partial outlining, I'd like to allow the outline to stop part-way along a curve, too 22:42 < genete> and it is a pain to animate like just an on or off feature 22:42 < dooglus> (without having to add a new vertex) 22:42 < genete> explain better to genete the english person of the IRC 22:43 < genete> problematic* 22:43 -!- bytefield [i=5367a478@gateway/web/ajax/mibbit.com/x-2ad01b83173da2a9] has left #synfig [] 22:44 < genete> dooglus: now I understand 22:44 < genete> (probably late) 22:45 < dooglus> genete: see the furry animal thing you traced earlier - the outlines don't start and stop at corners 22:45 < dooglus> they start and stop part-way along smooth curves 22:46 -!- xerakko [n=Miguel@debian/developer/xerakko] has joined #synfig 22:46 < dooglus> genete: back to the plant layer - what "strange animatable options"? 22:46 < dooglus> you mean make it a regular layer parameter? 22:46 < genete> yes I guesses you wanted that 22:49 < genete> dooglus: for example I don't understand why antialiasing is an animatable feature. 22:49 < dooglus> just because every parameter is animatable I guess 22:50 < genete> or as we commented sometime ago Children lock 22:51 < genete> so why loop a bline is not animatable? 22:51 < genete> and activate (on/off) bline points is not a parameter? 22:53 < dooglus> hmm 22:53 < dooglus> I don't know 22:53 < genete> (I'm not complaining just commenting) 22:53 < dooglus> 'loop' isn't a parameter 22:53 < genete> even rotate order... 22:54 < dooglus> right 22:54 < dooglus> both loop (bool) and order (int) could be sub-parameters of the bline valuenode type 22:54 < genete> yup 22:54 < genete> but don't loose focus on the partial outlines 22:54 < genete> can you develop what you meant? 22:55 < genete> if we're adding a new feature to allow partial outlining, I'd like to allow the outline to stop part-way along a curve, too 22:55 < genete> I have not idea how to do that 22:56 < genete> but stop only at vertices I can figure how to do it roughly 22:57 < dooglus> what was Zelgadis' feature suggestion a few days ago related to this? 22:57 < dooglus> he wanted some action at a distance from a bline vertex 22:58 < genete> don't remember :/ 22:58 < dooglus> genete: http://zelgadis.profusehost.net/files/width-proposal.png 22:59 < genete> yes I see and remember 22:59 < dooglus> it's similar - he wants to have width changes in places other than vertices 23:00 < genete> yes it can work if you also allow "constant" interpolation for the width in that vertex. 23:01 < genete> or simply that virtual vertex has a width duck too 23:01 < genete> that's cool 23:01 < genete> two kind of vertices 23:02 < genete> one with tangents and other without tangents and a amount parameter to define its position in the curve 23:02 < genete> I mean the outlines would be defined by two lists 23:03 < genete> one for the bline itself and other for the thickness 23:03 < genete> one have vertex and tangent (not width) 23:03 < genete> and the other has only amount and width 23:09 < dooglus> or a single type of vertex, but with checkboxes for "vertex & tangent" and "width" which can selectively disable either 23:10 < genete> but when you change from one to other you have to place it over the hermite curve of its neighbours and would produce some strange step 23:11 < dooglus> yes 23:11 < genete> also we would want to drag them like the linked to blines ones 23:12 -!- rubikcube [n=kvirc@dslc-082-082-085-145.pools.arcor-ip.net] has quit ["KVIrc 3.2.6 Anomalies"] 23:12 -!- malexmedia [n=alex@oh-76-2-223-75.dhcp.embarqhsd.net] has left #synfig [] 23:13 < genete> I think that you can have "width vertices" that "belong" to a pair of tangent vertices (they cannot move outside). So you should not be able to move between two blines segments 23:13 < dooglus> oh, I was thinking "male x", but he's "m alex" 23:14 < dooglus> how is that restriction useful? 23:15 < genete> to avoid a mess if you drag vertices outside, isn't it? 23:16 < dooglus> I'm not clear on it 23:16 < genete> if you accidentally cross two "width vertices" you can change drastically the width of all the bline 23:16 < dooglus> can I have 2 width vertices on a single segment? 23:16 < genete> yes you should (must) 23:17 < dooglus> so they can still cross, even with your restriction of not leaving their segment 23:17 < genete> or as many as you want 23:18 < genete> I imagined them like gems in a necklace 23:18 < genete> you can move but cannot cross it 23:18 < genete> but hey! 23:19 < genete> allow cross and give to the user freedom! 23:19 < genete> maybe I want to produce that effect! 23:20 < genete> do you like the two lists idea? 23:21 < dooglus> I don't think I understand it :) 23:21 < dooglus> the gems in a necklace are just one list. how does the necklace work with 2 lists? 23:22 < genete> forget the gems 23:22 < genete> two lists: 23:23 < genete> A) bline definition: vertex (x,y) tangents (r, alpha). split tangent and amount (for visibility of vertices) 23:24 < genete> b) width definition: width, amount (the position over the bline) 23:25 < genete> A) is a list of bline points (without width) 23:25 < genete> B) is a list of width points that lies on the bline list of A) 23:26 < genete> for width points 'width' has a visual representation of a radious duck 23:26 < genete> and amount has the representation of a "sliding duck" 23:27 < dooglus> it would need 2 ducks wouldn't it? one for 'width', one for 'amount'? 23:27 < genete> like liked to blines ones 23:27 < dooglus> ok 23:29 < genete> dooglus: thinking for the future those "width points" can hold also the rounded or not rounded checkbox parameter 23:29 < genete> and remove it from the whole outline layer 23:31 < genete> it means that one width point with a not rounded value would be interpolated as an straight line from and to it 23:31 < genete> and if it has a rounded value it is interpolated as a tangent to the circle it defines 23:31 < genete> it would allow lots of variations 23:32 -!- omry [n=omry@bzq-84-108-20-56.cablep.bezeqint.net] has joined #synfig 23:33 -!- xerakko [n=Miguel@debian/developer/xerakko] has quit ["Ex-Chat"] 23:42 < dooglus> genete: sounds ok. I'm not too sure about having 2 separate lists, but maybe it's ok 23:43 < genete> I'll add a link to our conversation on Zelgadis feature request 23:59 < genete> http://synfig.org/Wish_list#Width_weigths 23:59 < genete> it seems that my local time is crazy 23:59 < genete> it says I posted it at 17:51 lol! --- Log closed Thu Apr 17 00:00:42 2008