Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Frame deletion/exposure improvements #1172

Open
David263 opened this issue Feb 10, 2019 · 1 comment
Open

Frame deletion/exposure improvements #1172

David263 opened this issue Feb 10, 2019 · 1 comment
Labels
Enhancement Feature Request UX Related to the way users interact with the program

Comments

@David263
Copy link

Issue Summary

When I try to create an "ordinary" animation, I cannot delete or ignore frames. If I fill sparse frames with drawings...

Actual Results

...all the frames are output in a GIF file: the animation plus pauses for all the frames that have no drawings.

Expected Results

I expect that if I skip some frames (so the gray rectangle is missing), these empty frames will be ignored when playing and in the output. Also, I expect that "delete frame" (either the - button or Menu > Animation > Remove Frame or Shift+F5) will delete the frame from the timeline, and move all later frames one frame earlier. Also, I expect that I can delete a range of frames indicated by the mouse. Also, I expect that Add Frame (F7) will add a frame at the current selected frame, not somewhere else.
pencil2dframes

Video or Image Reference

Steps to reproduce

Enter two key frame drawings, spaced apart by many frames. Fill in one inbetween frame in the middle, showing the middle drawing. Try deleting all the frames between the key frames and the middle frames, so that your animation contains only three frames: it cannot be done. The attached example is a scaled-up version of this description, with lots of unused frames. All these unused frames are actually output into the resulting GIF. Let me know if you need to see the GIF.

System Information

  • Pencil2D Version: Version: 0.6.2
    Operating System: Windows 10 (10.0)
    CPU Architecture: i386
  • Operating System:
  • RAM Size:
  • Graphics Tablet:
@Jose-Moreno Jose-Moreno added Enhancement Feature Request UX Related to the way users interact with the program labels Feb 11, 2019
@Jose-Moreno
Copy link
Member

Jose-Moreno commented Feb 11, 2019

Greetings. Thank you for taking the time to report your experience.

I apologize in advance for the lengthy response but this comment is also meant for other developers and maintainers to review the state of this issue and its importance in relation to existing issues while I address each point.

I expect that if I skip some frames (so the gray rectangle is missing), these empty frames will be ignored when playing and in the output.

From an animation perspective that empty space is not to be ignored and is as important as drawn frames. These empty frames are called exposure frames and are meant to repeat drawings without duplicating drawing container objects.

To generate the illusion of movement with the least amount of work possible animators plan out how drawings are exposed in the film strip using an x-sheet. To emulate this in Pencil2D, both drawn and exposure frames are taken into account on the timeline when playing and rendering the entire animation. This is a common behavior in all the current animation software in the market as well.

e.g For a second of animation, instead of drawing 24 individual drawings, you can draw 12 individual drawings and expose each for one additional frame to fill the required second of motion using double exposures or "two's".

Note: Taking into account your expectations for this we could also consider implementing a playback feature that actually skips exposures or specific amount of frames (eg. play every x frames) during editor playback and during the export process.

There was a feature implemented recently by David Lamhauge in #1131 which emulates how animators flip paper during their hands-on work, which has a mode that only plays a specified amount of keyframes while ignoring exposures. We could probably base a future enhancement for editor & render frame skipping on that implementation.

Also, I expect that "delete frame" (either the - button or Menu > Animation > Remove Frame or Shift+F5) will delete the frame from the timeline, and move all later frames one frame earlier.

Certainly this would be ideal, although Pencil2D has an automatic exposure system for the drawings, with the current implementation it has no way of handling this empty space as an object itself yet.

While this is addressed, as a workaround press the ALT key while clicking & dragging on a keyframe. This will move all the keyframes after the current one being dragged while preserving the absolute distance between them.

Also, I expect that I can delete a range of frames indicated by the mouse.

This has been informally requested as a future enhancement of the upcoming multi-frame operations feature in #1106 pull request.

Also, I expect that Add Frame (F7) will add a frame at the current selected frame, not somewhere else.

This has been requested previously along other conveniences in issue #1116

Most of these important features have been put on hold as developers will be working in a timeline rewrite proposal #533 and following implementation for the current year 2019, which will be made to optimize performance and allow to easily include the mentioned behaviors along other heavily requested features to make it more intuitive for Pencil2D users.

@J5lx J5lx changed the title Cannot delete a frame Frame deletion/exposure improvements Sep 23, 2021
@J5lx J5lx added this to Discussion in Enhancement Priority via automation Sep 23, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Enhancement Feature Request UX Related to the way users interact with the program
Projects
Status: Discussion
Enhancement Priority
  
Discussion
Development

No branches or pull requests

2 participants