Jump to content

Krita/Animation/Usecases: Difference between revisions

From KDE Community Wiki
Dmitry (talk | contribs)
No edit summary
Animtim (talk | contribs)
 
(15 intermediate revisions by 2 users not shown)
Line 1: Line 1:
=Animation: Roles and Usecases=
=Animation: Roles and Usecases=


Who are the people that use animation, what do their workflows look like, and how to we visualise Krita helping them?
Who are the people that use animation, what do their workflows look like, and how do we visualise Krita helping them?


== Storyboarders ==
== Storyboarders ==
Line 34: Line 34:
* Onionskinning! Very useful.
* Onionskinning! Very useful.
* I think the silhouette idea from above would be really useful for analysis.
* I think the silhouette idea from above would be really useful for analysis.
* Audio playback is useful in the case of socalled 'mickey-mousing' or just plain lip-syncing. (We need to consider how far we limit this)
* Audio playback is useful in the case of socalled 'mickey-mousing' or just plain lip-syncing. (We need to consider how far we limit this - suggestion: add jack sync like blender and synfig to allow syncro with an external audio editor)


Links:
Links:
Line 47: Line 47:
What can Krita do for them?
What can Krita do for them?
* File Layers are invaluable. It'll allow the background artist to work independandly on backgrounds, improving and perfecting them, and each time they update their background, the background in animator's file will update along. Even better, Krita does not require them to actually USE Krita, which may be beneficial to respecting the individuality of a given artist in the studio's pipeline. (That is, the studio does not need to force it's background artists to use Krita, which makes Krita easier to adopt into the pipeline)
* File Layers are invaluable. It'll allow the background artist to work independandly on backgrounds, improving and perfecting them, and each time they update their background, the background in animator's file will update along. Even better, Krita does not require them to actually USE Krita, which may be beneficial to respecting the individuality of a given artist in the studio's pipeline. (That is, the studio does not need to force it's background artists to use Krita, which makes Krita easier to adopt into the pipeline)
* Studio ghibli movies and a lot of modern animation uses very segmented backgrounds, which then use an paralax effect to work in animation. If we could have a way to have the artist work on the backgrounds, while the animators work on a seperate file, and ease the pipeline between these. One example is the 'save group layers' focussing more on saving OVER an existing set of files. The other is two allow filelayers to point to a specific layer or group within a given *.kra (and I hate saying it, but also in a given *.psd... let's see *.exr as our golden mean here)
* Studio ghibli movies and a lot of modern animation uses very segmented backgrounds, which then use an paralax effect to work in animation. If we could have a way to have the artist work on the backgrounds, while the animators work on a seperate file, and ease the pipeline between these. One example is the 'save group layers' focussing more on saving OVER an existing set of files. The other is to allow filelayers to point to a specific layer or group within a given *.kra (and I hate saying it, but also in a given *.psd... let's see *.exr as our golden mean here)
* Having wrap-around mode be only horizontally or vertically. This is already in the tracker, and can benefit scrolling backgrounds.
* Having wrap-around mode be only horizontally or vertically. This is already in the tracker, and can benefit scrolling backgrounds.


Line 83: Line 83:


= Workflows =
= Workflows =
== Traditional frame-by-frame painting ==


== Traditional frame-by-frame painting
=== Paint main frames ===
<ol>
<li>Convert a layer into animated layer (Add to Timeline)</li>
<li>Paint first frame</li>
<li>Change current frame and seek to a new position with the next "main" frame</li>
<ul>
<li>using mouse and timeline</li>
<li>using "next/prev frame" buttons</li>
<li>using shortcuts</li>
</ul>
<li>Activate onion skins to compare to the previous frame</li>
<li>Add new keyframe to the timeline</li>
<ul>
<li>Press special button or a shortcut</li>
<li>Just start painting if lazy keyframes mode is activated</li>
</ul>
<li>Repeat until all main frames are painted</li>
</ol>


# Paint main frames
===Import images===
<ol>
<li>Import a single image in selected frame (to import a reference or a keyframe for exemple..)</li>
<li>import a file sequence (a file sequence must be a suite of image files with same name including an incremental number; non-linear frame-rate can be supported with non-linear numbering of the files.. and/or using something like those .lst files: http://wiki.synfig.org/wiki/Doc:ListImporter/fr sorry it's in french..)
</ol>


## Convert a layer into animated layer (Add to Timeline)
=== Adjust keyframe time position ===
## Paint first frame
<ol>
## Change current frame and seek to a new position with the next "main" frame
<li>Move a keyframe in timeline</li>
*** using mouse and timeline
<ul>
*** using "next/prev frame" buttons
<li>using Drag&Drop</li>
*** using shortcuts
<li>using special shortcuts</li>
## Activate onion skins to compare to the previous frame
</ul>
## Add new keyframe to the timeline
</li>
*** Press special button or a shortcut
<li>Copy/paste selected content from one frame to another, in the same or another layer.</li>
*** Just start painting if lazy keyframes mode is activated
<li>Clone content from one frame to another to save time and memory for frames repeated exactly in a layer</li>
## Repeat until all main frames are painted
<li> [NOT_NEEDED]Adjust keyframe blending options to mix nicely with a *previous* keyframe </li>
</ol>
 
=== Check the animation ===
# Play the animation around selected frame (user defined frame values, from a few frames to a few seconds) at selected framerate.
 
=== Adjust offset/position of a keyframe on the canvas ===
# Select keyframe
# Select non-properly positioned layer
# Use Move Tool to adjust its position
#Also, add another mode to transform/pan all frames on a layer (to adjust position of a whole sequence)
 
===  [NOT_PRIORITY°] Change ordering of the layers on the canvas ===
# °Not priority or even not really needed as one can easily bounce content in two layers if needed.
# Select layer that should be put below the previous one
# Select/Add a keyframe at position where it should go behind
# Activate "Push below" option in the keyframe
 
=== Export sequence of resulting frames into PNG/JPEG files ===
# Press Save Sequence As...
#Option to export a file sequence for each layer (or selected layers)
#Option to export a file sequence for each group layer (similar to current "Save group layers" but for sequences)
 
== Assisted painting with Transformation Masks ==
 
=== Create initial keyframe ===
# Make the layer animated by pressing "Add to Timeline" action
# Add a transformation mask to it
# Transform if needed
 
=== Producing transformed frames ===
# Select desired keyframe and layer
# Use Transform Tool to edit the Transformation Mask
 
=== Editing/fixing transformed frames ===
Transformations may induce some visible artefacts of the image so the user should be able to fix them with his hands (brush).
 
'''NOTE:''' should the masks be put into Timeline separately? Should they be shown there at all?
 
# Select desired keyframe and layer with a transformation mask
# Right-click on a layer on the timeline and press "Bake layer" to merge all the masks into the layer for this very frame
# Start painting over the layer

Latest revision as of 20:01, 30 March 2015

Animation: Roles and Usecases

Who are the people that use animation, what do their workflows look like, and how do we visualise Krita helping them?

Storyboarders

Storyboarders are people that take a SCRIPT and turn it into a sequence of images indicating the layout and posing of the characters. These include camera directions. When a storyboard is turned into a rough animation by having it set to time and playback, this is called an ANIMATIC.

Some storyboarders don't only deal with layout and posing, but also with the colours and shading of a scene.

What can Krita do for them?

  • Rough animation is already helpful to them in creating the animatic.
  • With this, the ability to direct the 'camera' is helpful. This'll require simple layer tweening.
  • Tools to analyse and assist layouts. Traditional artists like deevad have already request a sort of 'overlay guide' tool that can present a frame with a rule of thirds or golden mean, for the purpose of working out thumbnails. The Storyboarder will find this tool useful as well. The tool itself does not need to be animated.
  • Similarly, one of the main concepts of animation is that of 'silhouette', which means that the posing of a character should convey what he is doing, even if the audience were to only see his silhouette. To facilitate this, we could consider a seperate viewing mode where the whole layer's colour values are overridden by a single one, so that the storyboard arist (and the animator for that matter), can analyse the quality of his silhouette. (Granted, this suggests that the sotryboard artists will put their characters on a seperate animation layer).
  • Annoy Gooseberry's matias: http://gooseberry.blender.org/video-how-matias-made-1000-storyboard-images/

Links:

Keyframe animators & Tween animators.

"A keyframe in animation and filmmaking is a drawing that defines the starting and ending points of any smooth transition." - Wikipedia.

Keyframe artists are usually the senior animator who draws the most important frames of an animation. They typically draw the so-called 'key-poses' which define the motion of the animated object. An example of this is the walk cycle, where the pose where the head is highest, and the person has one leg up, and the other straight is one keypose, where the other is where the person's head is lowest and his legs furthest appart is the other.

Then, junior animators will do the work inbetween.

In vector and 3d animation, the main animator is the only animation, as the software will take care of the (inbe)tweening.

What can Krita do for them?

  • Onionskinning! Very useful.
  • I think the silhouette idea from above would be really useful for analysis.
  • Audio playback is useful in the case of socalled 'mickey-mousing' or just plain lip-syncing. (We need to consider how far we limit this - suggestion: add jack sync like blender and synfig to allow syncro with an external audio editor)

Links:

Background artist.

Paints backgrounds, sometimes these are in paralax

What can Krita do for them?

  • File Layers are invaluable. It'll allow the background artist to work independandly on backgrounds, improving and perfecting them, and each time they update their background, the background in animator's file will update along. Even better, Krita does not require them to actually USE Krita, which may be beneficial to respecting the individuality of a given artist in the studio's pipeline. (That is, the studio does not need to force it's background artists to use Krita, which makes Krita easier to adopt into the pipeline)
  • Studio ghibli movies and a lot of modern animation uses very segmented backgrounds, which then use an paralax effect to work in animation. If we could have a way to have the artist work on the backgrounds, while the animators work on a seperate file, and ease the pipeline between these. One example is the 'save group layers' focussing more on saving OVER an existing set of files. The other is to allow filelayers to point to a specific layer or group within a given *.kra (and I hate saying it, but also in a given *.psd... let's see *.exr as our golden mean here)
  • Having wrap-around mode be only horizontally or vertically. This is already in the tracker, and can benefit scrolling backgrounds.

Sprite Animator.

That one sucker in your gamejam who happens to understand animation.

The Sprite animator makes stock animation for games, which are usually put into a 'sprite sheet', which is a big image containing all the frames(like an atlas). These then get loaded into the GPU as one whole, where offset-trickery is used to draw the images onto the end object.

They are similar to the senior artist is that they take care of the whole animation, but the big difference is that the sprite artist will usually work in colour immidiately, where this is not fact for the traditional animators. The stock-effect of the sprite art allows the sprite animator to work on something more granular and shorter than the traditional animation where everything is headed under a full scene.

What can Krita do for them?

  • Onionskining!
  • Some very retro games use color cycling to achieve a variety of effects: http://www.effectgames.com/demos/canvascycle/ However, this assumes an indexed palette, and is not properly supported by modern GPUs anyhow, so let's ignore that.
  • Export to spritemaps or spritesheets.
  • Combining animation and wrap-around mode for things like animating tiling water textures.

Matte Painters & VFX artists.

People who do the shinies in the movies. Matte Painters and VFX artists primarily use Krita to improve upon 3d renders. We already facilitate this crowd somewhat with *.exr and OCIO support.

What can Krita do further for them:

  • Some VFX artists might use Krita for painting out annoyances, but as Krita does not have motion tracking, I am not sure if this is the most enjoyable past-time. We need to investigate how to have Krita's abilities work together with the existing tools.
  • Animation support for OpenExr.
  • There was some worry on IRC about the difference between reference animation and end-product animation. File-layers for animation maybe? MS5 has the ability to set a layer to 'sketch' so it gets ignored on export, which might be an idea? We want to reduce annoyance for the end user in quickly sending his work out.
  • Annoy Eiken on IRC about this, they'll know more.

Colorists

People who do the task of colouring and shading everything. This is a crowd we need to study the needs of better.

What can Krita do for them:

Workflows

Traditional frame-by-frame painting

Paint main frames

  1. Convert a layer into animated layer (Add to Timeline)
  2. Paint first frame
  3. Change current frame and seek to a new position with the next "main" frame
    • using mouse and timeline
    • using "next/prev frame" buttons
    • using shortcuts
  4. Activate onion skins to compare to the previous frame
  5. Add new keyframe to the timeline
    • Press special button or a shortcut
    • Just start painting if lazy keyframes mode is activated
  6. Repeat until all main frames are painted

Import images

  1. Import a single image in selected frame (to import a reference or a keyframe for exemple..)
  2. import a file sequence (a file sequence must be a suite of image files with same name including an incremental number; non-linear frame-rate can be supported with non-linear numbering of the files.. and/or using something like those .lst files: http://wiki.synfig.org/wiki/Doc:ListImporter/fr sorry it's in french..)

Adjust keyframe time position

  1. Move a keyframe in timeline
    • using Drag&Drop
    • using special shortcuts
  2. Copy/paste selected content from one frame to another, in the same or another layer.
  3. Clone content from one frame to another to save time and memory for frames repeated exactly in a layer
  4. [NOT_NEEDED]Adjust keyframe blending options to mix nicely with a *previous* keyframe

Check the animation

  1. Play the animation around selected frame (user defined frame values, from a few frames to a few seconds) at selected framerate.

Adjust offset/position of a keyframe on the canvas

  1. Select keyframe
  2. Select non-properly positioned layer
  3. Use Move Tool to adjust its position
  4. Also, add another mode to transform/pan all frames on a layer (to adjust position of a whole sequence)

[NOT_PRIORITY°] Change ordering of the layers on the canvas

  1. °Not priority or even not really needed as one can easily bounce content in two layers if needed.
  2. Select layer that should be put below the previous one
  3. Select/Add a keyframe at position where it should go behind
  4. Activate "Push below" option in the keyframe

Export sequence of resulting frames into PNG/JPEG files

  1. Press Save Sequence As...
  2. Option to export a file sequence for each layer (or selected layers)
  3. Option to export a file sequence for each group layer (similar to current "Save group layers" but for sequences)

Assisted painting with Transformation Masks

Create initial keyframe

  1. Make the layer animated by pressing "Add to Timeline" action
  2. Add a transformation mask to it
  3. Transform if needed

Producing transformed frames

  1. Select desired keyframe and layer
  2. Use Transform Tool to edit the Transformation Mask

Editing/fixing transformed frames

Transformations may induce some visible artefacts of the image so the user should be able to fix them with his hands (brush).

NOTE: should the masks be put into Timeline separately? Should they be shown there at all?

  1. Select desired keyframe and layer with a transformation mask
  2. Right-click on a layer on the timeline and press "Bake layer" to merge all the masks into the layer for this very frame
  3. Start painting over the layer