When several people work on the animation project in different places, the project sources are usually synced between them using the cloud services. Today I would like to share the workflow we use for that.
First of all, as you probably know, for our projects we use Remake build system, which allows to separate sources from the rendered data. Rendering data could be produced (and updated) anytime from the sources, so it’s quite logical that we need to sync sources only, which dramatically reduces the bandwidth usage.
The rendered data always reside in the “render” subdirectory inside of the project root. So we need to sync everything except this directory. Many cloud sync services allow to exclude certain directories from sync, but we usually go with different approach, which is service-independent.
Hey, it’s been a long time! Let me share some quick news with you.
If you remember, in November I have planned a lot of stuff to be done by February. Unfortunately, none of the outlined tasks are completed by the moment. That means we are not ready to launch the new episode of Morevna now and this initiative will be postponed for a few months.
But that doesn’t mean we were doing nothing on that period. In fact, our efforts gone into unexpected direction. We’ve been put into the situation that forced us to concetrate on developing the technology which allows to produce simple character animation in the very short time. This development resulted in the special character template for Synfig. It is based on the stickman template, but introduces such featureas as IK emulation, library of reusable elements and mimic controls. In the video below you can see it in action.
Let me start with some good news. Last week I have received a subsidy from Russian government for my trip to give a talk at Free Society Conference and Nordic Summit (FSCONS) at Göteborg, Sweden. Much thanks to Viktor Tolokonsky for giving us his support in this initiative. If you remember, my presence there was questionable, but now situation is pretty clear – I will be there.
Also I hope everyone remember that we are plan to give the first screening of Morevna right after the talk. So, see you in Sweden at FSCONS – me and Julia Velkova will be giving a talk on 10th of November at 15:15 (GMT+1).
About the status of Morevna Project Demo. Last week we worked at the full rage – we plan to have the first rough draft finished by October 10th. Would it be something new if I will say that Nikolay does an awesome work drawing backgrounds and polishing the tweening? I really would like to show you nice and fancy production sheet like we had for keyframes or vectorization stage, but such schema doesn’t work here. I’m just watching the most recent rendering of Demo, writing the top priority tasks, then we working on fixing them, rendering again, watching, writing more tasks and so on. So, (what a shame!) this is how my typical task list looks like.
OK, it’s time for me to get back to work – I need to have all works on 3D characters animation finished in next 24 hours! Yay! Let’s enjoy the new week!
Here’s a little video I have prepared on how we do coloring using colorcharts in Synfig.
The colorcharts is very cool feature for animation projects – you have all key colors defined in one file and when you change this file, all colors are changed in the whole project. So you can dynamically tweak colors for your characters with a single click.
Colorcharts are natively supported in Synfig through the linking feature. Many people know that you can link parameters in Synfig within one file, but very few know that you can link to parameters from other files. And this is how colorcharts work – we just link all colors to the exported values in another file. See video below for detailed explanation.
I will start today’s weekly progress from screencast demonstrating our “lazy tweening” approach.
This approach can be shortly summarized in following steps:
Vectorize each keyframe independently.
Use stickman to deform first keyframe to second and create tweening transition.
Repeat the same for second and third keyframes and so on.
We have spent the whole week testing how much this approach suitable for making different types of animation. And hey – it’s kind of all-purpose thing! (Except maybe some cases of close-up headturns…)
When we settled this approach, we found that even for complex animation it’s possible to vectorize each keyframe independently. That means we can break each shot into small tasks and ask for community help with vectorization. That’s how we started the last community call for Synfig users.
Does someone thinks that we plan to have a rest and wait when all hard work will be done by the community? No way! The community call is just an experiment to find talented Synfig artists around and proof that we can collaborate with them. And we are still working hard to deliver most and the best!. ^__^ Last week we have hit very complex shots – I have spent much time on shot 34 and Nikolay worked hard on shot 19. The next challenge for us is shot 20 – the most complex shot of the demo. Nikolay already started to work on it today.
Tweening and Vectorization status (23.07.2012)
At the same time the work on Ivan and Morevna models continued. The modelling is mostly done and now we are waiting for rigging and textures. Also we have two artists willing to improve truck and helicopter model and three persons interested in creating soldier model variations. I can’t wait to see how all this turn out!
As we are back on track now, I’m going to continue tradition with the weekly reports (like we did during the previous phase). At least I will try. ^__^
Just like before, we made a special list to track our progress:
Tweening and Vectorization status (17.06.2012)
In this case there are a lot more sub-procedures in our workflow and thus the notation is a bit more complex. First, I’m preparing the shot by importing keyframes, compositing them and setting up stickmans. Sometimes, depending on the situation, I’m animating stickmans right before tracing. Also I’m setting some guides to avoid the deformations during the motion like headturns.
After the shot is fully prepared, I’m putting he blue circle mark on the shot element in production list – that means that Nikolay can start vectorization. Sometimes I’m doing vectorization too, but at the moment the most of this work is done by Nikolay. If the shot wasn’t animated by me, then Nikolay does the animation right after vectorization. When vectorization is done, the shot is marked with one red line – that means it’s pending for my review. At review stage I’m composing the shot elements all together and looking for the inconsistencies. If the shot passed the review then the second red line mark is put on the shot element in production list.
This is just a basic schema which have a lot of variations. Sometimes one of us does the basic vectorization, then other makes rough stickman animation, then again the first one takes it to close all seams between stickman’s parts, and finally there’s last pass when we add secondary movements (for hairs, cloth, etc.). So the shot can be bounced back and forth a few times before it gets accepted.
Today I want to talk a little about the ways we cheat at drawing. ^__^
When you start drawing a characters you usually have “front” and “side” concept reference images. And when you need 3/4 view at some gradation it’s always a bit tricky part. And here’s Synfig to the rescue! No, it’s not a tracing time yet, but we can use Synfig’s tweening capabilities to extend our concept references. For example, this is how we get guides for Ivan’s head at particular angle.
Notice how your brain rebuilds the inbetween positions of the head basing the guide lines as references.
The next helpful trick is to use photos as references. Yes, sometimes to figure out the correct look of some elements at certain angles or positions we have to go with shots like you see below.
Hands position on the photo...
...turned into this.
And of course we cheat by using 3D models. Of course the easiest way would be to have 3D models for all characters and do all drawings on top of them. But there is a bad part about that. My experience shows that when you rely much on 3D models in drawing, the characters loose some flexibility or some kind of “creative sparkle”. And it’s not about “uncanny valley” only. Using model clarifies your image, it allows you to make the “right” image, according to “right” rules, “right” perspective, etc. But at the same time it puts your imagination to the limits and that’s bad. Because, you know, the hand-drawn animation takes much of its effect from the exaggeration and the mostcool and excitingimages come exactly when you breaking some rules. Understanding that is very important and that’s why we tend to use 3D models very carefully.
Currently we started to experiment with the soldier model. The funny thing happened with shot 35 – it’s the shot where the camera makes a long dolly out and all soldiers are thrown into the air. Initially we wanted to use soldier model as a base for drawing keyframes on top. But when we put the model into animation we found that the model looks very naturally as it is.
Considering that it will be masked with some vector elements, effects and dust we decided to use soldiers as pure 3D models in this shot. Of course that saved Nikolay a lot of efforts in the keyframes drawing.
Keyframes marked as to be done with 3D models
That’s everything I wanted to confess about our cheating. ^___^ As usual, you can see our progress for keyframes drawing on the image below. Don’t forget to check the gallery page to see the recent images of this week. We hope you like them. Stay tuned and have a great week!
Today I want to write a little about our keyframes drawing workflow. The described workflow is not something that we come up at once, but this is something that formed up spontaneously during the last week.
Nikolay uses MyPaint to draw the keyframes and some edits are done in GIMP or Krita. Thanks to the GIMP’s ora plugin and native support for ora files in Krita we can seamlessly edit MyPaint files everywhere. Well, in fact Krita’s ora support isn’t that perfect (2.3.3 here), but we can live with that.
So, our basic working format is OpenRaster (ora). My task is to prepare all animatic images – compose them together with all reference data into ora files, so Nikolay can proceed directly to the drawing. We have a special production sheet to identify pending, prepared and finished keyframes. I also mark keyframes which are considered relatively “easy”.
Keyframes production sheet
Nikolay looks at this sheet when he needs to choose next keyframe to draw. After the keyframe is drawn he sends me ora file for review. My job is to look for style consistency and general quality issues. If the keyframe is accepted then Nikolay moves to next one in the list. If there is a issues then I put my notes onto separate layers together with some explanation sketches, send the file back and process repeats. On the images below you can see how it’s usually looks like.
Typical "work-in-progress" screen
Having a production sheet allows Nikolay to proceed with other keyframe while I’m doing review, so the work keeps to be intensive.
Also we can’t go without phone conversations – although Nikolay is quite familiar with the matter it takes from 10 to 30 minutes for discussions on each keyframe. Discussion can take place at any moment, so the mobile phone is an only option for that. Although Nikolay lives in other town, we are lucky to reside in the same region – that allows us to have all talks at the flat rate.
Needless to say that we have certain conventions about file naming which allows us to keep all data in the order. I will not cover them here as it may sound boring and there is a high probability that those conventions will change with a time.
That’s all my notes about the current workflow. If you would like to see the finished keyframes please watch the recent images page at our wiki. Cheers!