When using Pencil2D and building an animation the animator is directly working with the Editor. But when you need to look at the animation, we play the animation. The diagram below shows the data flows within and the input from external files and output to external files.
The existence of the external files is obvious, but the existence of the of the Player File is not. Users imagine that when the press the play button above the Timeline that the player simply displays the .pclx file on screen.
But using the .pclx file would be too complex and Pencil2D would struggle to display it fast enough. The Player File is the layers with the .pclx file compressed onto a single bitmapped layer. If there are Vector layers then these are converted to bitmapped format before being included.
Furthermore Pencil2D does not provide the user with any indication that the process of producing an internal version of the animation exists or when it is happening. The result can be confusion, because the user doesn’t see what they expect, when the play button is pressed.
If the animator makes a change, which may move an element in the animation a significant distance in a number of frames. They then press the Play button. The initial frames may reflect the change and the later ones may not. An experienced animator will probably realise that they’ve prematurely press the Play button and will then wait a suitable time and then press Play again. The less experience animator, may at this point panic. I my opinion it would be better to use an external player. There are many advantages to this, these include the playing of sound, which is properly synchronised with the drawings. The built in player, there is a delay between triggering the sound being played and when the sound is heard.
Some animators reduce this latency, by splitting the sound files into a larger number of much smaller one. But some then tell us that the limit of 64 sound files within a project needs to be increased.
If the user has a powerful computer, then the sound latency and problems specified below will not be a serious problem, but for users of less powerful systems, the problems will be more severe.
These problems include frames where editing is being done, the select lines will appear when the animation is played using the internal Pencil2D player. Further more if the animation is exported as a .Mp4 or Animated GIF file these lines will also be there. But if a second copy of Pencil2D is loaded, memory allowing and the .pclx or .pcl files from the animation are imported into the second copy of Pencil2D these glitches will not occur. This to me indicates the information which causes these problems are encoded in the temporary files.
The third problem area is that Pencil2D allows animators to edit frames within a layer which are not define. In the top images all the frames are define on the Bitmap layer and in the lower, we are working in two’s i.e. only every other frame is defined. The defined frames is marked on the timeline with a rectangle.
There is some confusion amongst Pencil2D animators, in that they refer to the defined frames as Keyframes. Keyframes are sometimes called Extremes. These are frames where the motion reaches and extreme of motion and then reverses, say a bouncing ball reaches the top of it’s bounce. All of the frames between this top of bounce and the point where the ball hits a hard surface are called Inbetweens, sometimes shortened to Tweens.
If you edit these undefined frames, then Pencil2D won’t give you an error message, and when played using the internal player they play as if valid, or if you Scrub the Timeline with your pointer you’ll get what you expect to see.
However if you save the projects as either a .plc or .pclx file and then leave Pencil2D, when you reload Pencil2D and then reload your saved file, the resulting animation will not be as seen before saving and exiting Pencil2D.
This is because in case 1 what you see is controlled by the internal files and in case 2 by what is saved in the .pcl or .pclx files.
A similar problem also occurs when the animator is using the Camera move to move a drawn image across the screen, if you want to adjust an intermediate frame, then you need to define an intermediate frame in a reliable manor. Then add an extra frame on the Camera layer and adjust the position on this.
If you want to see this motion using the internal player, my advice is add an additional layer, say called Dummy and add a frame in every position of the move. Without this hack, you’ll sometime play a sequence where you expect a smooth motion and instead get a jump from start to finish. If you export the animation as an Animated .GIF or .Mp4 the motion will be smooth. As an animator with plenty of experience of using Pencil2D, the above problems don’t cause me problems. This is because I’m aware of them and know how to overcome the problems they might cause a less experienced animator.
To me it is obvious that the problems exist in the information stored in the temporary files with Pencil2D. The images shown using the internal player appear to be screen grabs, as to the images incorporated into the .Mp4 files.
Just a thought, many early animation packages which ran on PC computers produced the video files using the control file and the other stored files. In the case of Pencil2D these would be Main.XML and the frame files in .Png or .Vec files. This would probably take a little longer, but the resulting animation would produce better results.
These are my thoughts and I realise that they are not a quick fix. I am in no way making a criticism of the Pencil2D group. The work around is to save the work as a .plc or .pclx file and then reload and then output as a final animation as a .Mp4 file.