Grease Pencil Status Update

The long overdue Grease Pencil merge in Blender 2.8 is now closer than ever.

The Blender 2.8 Code Quest turned out to be a great opportunity to gather a final round of feedback. Which, after much back-and-forth, led to fundamental changes to fully integrate it within the Blender 2.8 design.

Here is an overview of the updated changes internally and in the workflow.

HERO

Palettes → Materials

In the last versions of Blender 2.7x we introduced Palettes in order to manage Grease Pencil colors. This solution proved to work well and it was deeply used in the HERO open movie project.

However, Grease Pencil colors are far more complex than a simple color. So much that we ended up with Palette colors that had many more options than just RGB values.

After some discussions with Code Quest team, we decided to move Palettes to Materials. Now the colors work the same way as any other material in Blender, with additional settings exclusive to Grease Pencil.

Consequently, Palettes have been replaced by Material slots and each color replaced by an individual material.

Note: Grease Pencil materials cannot use nodes for the time being.

Grease Pencil Brushes → Blender Brushes

This change is more internal, but it replaces the Grease Pencil drawing brushes with “real” Blender brushes. This way we reuse the Brush structure already available in Blender.

This change makes it also possible to link brushes between files and to create brush libraries.

Drawing brushes with assigned Material

This is an important change in the workflow. Before this change, the brush used the color selected in the palette. Now the brush has always a material attached to it.

Note: The current user interface is temporary and it will be replaced with a new design.

The change could seem like a step back, but there are reasons to do this. As the Grease Pencil materials evolved, it was clear that a Brush was related to the material used, specially for textured materials. The way a brush draws is the result of Brush settings and Material settings, thus it was sensible to join them both.

With the new approach, we can define a Brush/Material that draws as expected, while also have a reliable way to create libraries of brushes that can be imported into other files.

Examples of textured strokes created by Matias Mendiola:

New Previews for Materials

A new preview design has been created especially to showcase Grease Pencil features.

This preview is also used to select the material assigned to the brush.

VFX Modifiers → Shaders FX

The new effects modifiers were added to get real time effects in the viewport for grease pencil objects, such as: Blur, Pixelate, Lighting, etc.

The implementation of these VFX was done reusing the modifier stack, but after review the design by code quest team, we all agreed that these VFX were not real modifiers. They couldn’t be applied, their order in the stack wasn’t followed all the time, among other issues..

The idea for VFX is something that could be used for other object types, not only grease pencil,. So we decided to redesign these VFX modifiers and replace by new Shaders FX.

Now, Shaders FX are located in a new tab in the properties panel and not in modifers tab.

During these weeks, I also created the new Colorize and Rim FXs.

On the other hand, this is the current list of (non-VFX) modifiers supported.

Annotations ≠ Grease Pencil

In the early days, Grease Pencil was used for making annotations and later became a full 2D animation tool. This animation features were far more than we needed for simple annotations, it was very complex to maintain and degraded the usability of Grease Pencil as a whole.

Now, annotation is a new tool on its own, separated from Grease Pencil and available in all editors just like before. The features for annotations have a limited scope, letting all the animation features to the new Grease Pencil object.

User Interface

For Grease Pencil to comply with the new user interface paradigms in Blender 2.8 is no small task. This could easily get on the way of the merge. Therefore we decided to merge it with minimal changes and a basic integration with the tools system. Leaving the little tweaks and design adjustments for after the merge.

Grease pencil options now blend nicely with the rest of Blender 2.8 settings, making use of the new concepts such as the Overlays system.

For more information about user interface, check out T54896.

More changes

A lot of internal changes have been done in multiples areas of the code, including:

  • Preliminary mode switching integration with the <Ctrl+Tab> pie-menu.
  • Internal redesign of Weight Paint data.
  • Conversion tools for legacy 2.7x files.
  • Adjust code to work with the new dependency graph.

Pending Issues

As result of new dependency graph implementation, the current Grease Pencil operators must be ported to new system. We have done a lot of work here, but we need a full code review to be sure it’s all working as expected.

HERO

There are only a few showstoppers for the merge to finally happen, but you can expect Grease Pencil to be part of Blender 2.8 Beta release in August. After that there will be a period of fixing and polishing to make Blender 2.8 the best 2D-3D Animation Workflow the world has ever seen!

44 comments
  1. here they are a very nice example about boolean operations

    https://blender.community/c/rightclickselect/0Xbbbc/

  2. Talking about brushes

    Some interesting brushes that could be used would be:

    .Brushes and rubbers using Boolean operations
    .Brush to close those leaks / holes in the stroke lines of the drawing. For example, between two ends. Making it easy to close and finish the drawing and fill it in later
    .Brush to join the various close lines with similar paths used in the initial scribbles when sketching
    .Brushe to close areas without using contours to allow the place to be filled even with open lines, such as in Harmony Toom Boom
    .Properties for the Fill Brush to define the minimum hole size in a line for the fill to escape through it.

    Talking about colors and materials

    It would be very interesting if we could deal with raster designs while using the vectors. That would be especially interesting when painting a fill better
    The way that adding or modifying colors in an object needs to be more dynamic and easier. And it needs to be done without leaving the drawing area
    I don’t know if it is already possible to add more than one material per object but I have to say that this would be interesting
    It would be interesting to have some GP material presets, such as in the PBR Materials Pack Add-on. On second thought, brushes presets would also be of interest.

  3. Talking about UI and UX and my GP experience

    .Maybe it’s better and more interesting to merge the brushes of sculpt mode with drawing mode
    .Brushes need to have good shortcuts, and maybe even a pipe menu
    .Things like layers, undo history, object lists, materials list, and colors list should be much more accessible than they are at the moment. They seem to be hidden in the interface and I don’t think they have shortcuts for quick and easy use with special popup menus or pipe menus.
    .Horizontal flip the image is part of the drawing workflow. It should have a way of doing this by shortcut and without being tied to something like the Effects; and directed to the whole image.
    .Filling drawings is very complicated. There could be easy and quick access means to view the leaked contour areas

    The system of colors and materials is very strange and confusing. If you want to add a different color to an outline or fill, it would not be enough simply to go there in the properties window, find the right tab and then go to the color selection box. For in doing so you would only be redefining the color of the material. Nor is it possible to simply add a new material as you would be redefining the stroke or fill material. You have to create a new object and then define materials and colors for it. And each thing is in a different tab than a different window than that “2D” View. So it’s a terrible process to be able to define new colors. There has to be an easy way to add new colors to new strokes and fills. Like using a selection brush, selecting the object and then, with a shortcut, access properties such as color and material. Or even use a dropper brush. Which, pressing Ctrl for example, opens menu of materials and colors. Or a specific brush for that.

    I think it would be better to use curves like NURBS instead of vectors. But I think at least it should be an option. To be able to switch between NURBS, Bezier and vector with a shortcut would also be very useful

    When it comes to visualizing the contour, it would be interesting to see something similar to what we see on Subdivision Surface using that Catmull – Clark algorithm and even a means to simplify visualization. In edit mode, it has some control points and the mesh is curved around them.

    If you look at various software on the market such as Photoshop, After FX, Spine, Harmony Toom Boom, Krita, GIMP and MedBang, you will see many UI patterns, shortcuts, navigation and tools that are used. A very simple example would be navigation. Pan and Zoom. As we are dealing with a 3D view here, this is very confusing in the beginning. Especially when we need to use only two axes. Besides it is clear from the fact that we are dealing with the Z axis instead of the Y and ended up going into 3D mode with MMB.

  4. You really need to look for the people who were looking to add AI to Blender. As DL. Imagine the possibilities of these two:

    https://www.youtube.com/watch?v=fILG1J6gMBs&t=193s

    http://ivizlab.sfu.ca/arya/Papers/ACM/NPAR-02/Illumination%20for%20Cel%20Animation.pdf

    With materials and textures (substances), with lighting, effects, particles, simulations and coloring. And with the constant refinement of the techniques.

  5. https://twitter.com/antonioya_blend

    On this page and elsewhere, there are many thoughts on features that the GP might have. For example, I was thinking of a brush to close two points / lines. And I believe that certain tools, such as drawing and sculpture, should be together in the same area. Although the 3D part of Blender separate them.

  6. I think we should take into account the difficulty that users of other platforms will face when using the Blender GP. And even, we, hardcore program users. The UI is still not 100% good. Other than that it seems a little unstable. Simply with things that disappear from the place. Other than that it is still difficult to handle it with a pen and a table compared to a mouse. There are several possible UX issues that only a professional in the field could help you understand. See the video below, for example:

    https://www.youtube.com/watch?v=-2iRm1PC2Jw

    The weird infinite 3D canvas. The weird way the ink bucket fill works. Again, I can argue that the color palette issue, for rasterized drawings, for example, also greatly disrupts the workflow. Like the need to create a material for each color used and then edit the color on another flap. Maybe even the layout of the program, with basic things like layers, which seem different at first because of their positioning. And of course, shortcut keys.

  7. Ideas for brushes:
    . A brush to increase and decrease the resolution of an area
    .Brush to connect / merge two disconnected lines
    . A eraser to specifically erase loose points in the drawing. By changing the influence could be changed the size of the points and length of the lines that would be deleted
    . A factor for the paint / fill bucket that allows you to ignore open areas. The size of the area would be defined in an influence
    .Brush that transforms several scribbles into a single clean line. It can also be a modifier
    https://www.youtube.com/watch?v=gaKdYQkJEiY&list=PL6Q5qPXg_zDlBUf7Jf5ivf3OEZXQSuSsJ&index=12&t=0s

  8. Some things I believe could improve the program:

    Make a list of interesting changes and talk to the community about their urgencies, needs, interests, and filter out what can be done
    .Search for UX and UI professionals for production
    .Add the program to industry usage patterns
    .Add simple keyboard shortcuts for different brush types, most used navigations (zoom and pam), and other things that are often used, such as brushes settings and changing colors and palettes, maybe
    . A way to navigate fully in 2D
    .Maybe, merging Draw and Sculpt mode would be a good option
    . Look for inspiration from advanced brushes and textures of brushes used in other softwares to, within Blender 101 project, add presets of brushes, materials and textures
    . Easy to recover the unsaved file and prevent the file from being lost when closing the program by accident or crash
    .Use palettes, either as a specific object, a multicolored stroke, a type of stroke without material, or focused on textures (multiple colors), or specifying whether you want only a base color(multiple), a texture or a material such as stroke
    .Easy, intuitive, dynamic, fast and with a short learning curve ways to do things like create, set, reset and manage a color for strokes (which includes strokes, contours and fills), change this color and continue to draw in another
    . Possibility of creating and saving a color library in an individual palette system (crucial in large, shared projects where color palettes are cautiously preselected)
    . Simplified visualization method of the vertices that compose the stroke. You can use a Decimate (simplify) added to a subdivision surface, to use small groups of vertices to control a smooth structure. Or even use NURBS and Bezier curves for the process. These curves can also be simplified, as we see in the SubSurf option. And optimized, such as adding more or less points based on the model’s need (curves and straight lines)
    . Consider an advancement in the method that uses interpolation animation based on two forms (drawings, strokes) and consider things like this method of interpolation:
    https://www.svp-team.com/wiki/Main_Page
    .Consider the use of laplacian deformation, including for animation
    . Look for concepts of creation, configuration and skining of rigs that are dynamic and intuitive, looking for 3D software and addon for this, look for imagine also in the versions of cages for animation, including a topologically correct modeling guided traces
    . Consider methods for facilitating things like Squash and Strench, Bouncy, Falowtroth, and Overlaping. As rig and cage they receive animation, and physics settings like keep volume and use of softbody
    .New parameters in Wave modifier, like noise and Z(Y) axis
    . Consider the same for the control of acceleration and deceleration of the character or element, slow in and slow out, visually and in the timeline. Do not just stick to curves. Like about to use the recording motion capture option, however applied only to a speed reading and its change through the timeline (acceleration and deceleration)
    .Use X, Y Axis instead of X and Z
    . I do not know if you know it, but there is one thing, I think it’s created from ML, which allows you to transform multi-line drawings by scribbling a shape into a single clean line. One of the examples uses the online drawing of a pingui. You see how the various traits scribbling the shape turns into a single stroke. This seems to be very useful
    .For the future, they can be considered more complex things like LipSync, effects, particles, physics, softbody, damage, realistic effects like in video editing and AfterEfects, sound mix (out of scope)

  9. is there a 2.79 branch with the multiframe feature? I need it for an important project, and it needs to be 2.79. would be great if I could find that somwhere

  10. Wish list:
    There should be an auto close shape Tick box option.
    There should be a close shape post drawing.
    There should be an indicator that a fill is selected and not just the stokes that get highlighted.
    Filling a shape even without a stoke should allow a shape to take on a new material using the paint bucket tool.

    Bugs:
    I can’t get shapes to close, Ctrl+J when I select the last end points.
    Affect only selected points has gone missing I hope it comes back:
    https://i.stack.imgur.com/W47kN.png

  11. First, congrats on making such an amazing tool!

    I just want to know: is there is an option to change which tool to use with SHIFT while in Grease Pencil Sculpt mode? I prefer to use the Smooth tool, but in Blender 2.8 beta it uses the Grab brush when I press SHIFT. I don’t know if this a default in this beta version, but I find it very weird, because the main tool I use while in GP Sculpt mode is the Grab tool, so it would make more sense to use the smooth on the shift hotkey.

    Thanks in advance!

  12. I’m testing out Blender 2.8 Beta right now. Despite having Onion already turned on by default in the new 2d animation template, onion skin doesn’t seem to be showing. Is it a bug or am I missing something?

  13. Considering the possibilities with the upcoming Nodes for Everything, and a free flowing flexible pipeline, I agree with some above asking for Spline / Bezeirs as well as a way to render to or convert an object to a Grease Pencil object. There are SOOO many .svg and 3d model assets that could benefit from being converted into the Grease Pencil object and animation pipeline. I want this feature so much, including the mesh modifiers for use on Grease Pencil objects. Possibly even rethinking the mesh object, splines, nurbs, and grease pencil objects into one object type that can be node modified with artist tools OR engineer / coding scripting tool nodes to both artistically and procedurally / parametrically arrive at a design in a non-destructive pipeline for flexible revision, lightweight files, and precision. Would be huge for both artists and engineers and machine learning tools to generate and create objects. In the meantime, something I think it would be amazing is if Grease Pencil Objects could be generated from a mesh object OR a special bake to Grease Pencil render (kind of like Freestyle SVG render) but it converts your current camera view of a mesh / scene into a Grease Pencil Object.

  14. We have many great reasons to love Blender! It is an amazing free tool. And now this fantastic update. I don’t know how to start thanking all of the developers. They have been doing a great job! Grease Pencil is the future of 2d and 3d Animation! Now, I am creating my own tutorials! YAY! Thanks! Savvy

  15. I’m excited can’t wait to have a look at it. It makes more sense than having to use two softwares one for 2d and the other for 3d. Im nt sure what will happen to the game engine.

  16. Hi ! I already posted in the blender artists forum, but this might interest some developers.
    First of all, a big thanks to the developers and artists for this awesome work !!! i’m subscribing now to the blender cloud to help contribute in the further development of this.
    I only have one suggestion for now. It’s about adding a loop and time delay in GP copy/instances. Why this ?
    You see, in a very long animation, sometimes you want to loop an animation, or just a part of one character. For now, to do this in GP, i have to click one by one with Shift + right click on the frames that i want to loop, and i have to copy them X times to fill the whole animation. And if unfortunately i want to adjust the drawing in on frame, i have to recopy everything again… First thing would be to allow users to shift + select the keyframes with clicking just the first and the last one (and bonus feature would be to allow shift copy between multiple layers).
    And to go further more, why not make instaces of frames (like in Clip Studio Paint Ex). I know GP has an instance modifier, but the current instances don’t have a time delay option. It’s really a copy of content and frames synchronisation, so you can’t try to use it to fake a loop… Maybe just a time effector in the instances would make the job for now.
    That feature would be sooooo useful also for lipsync and other complex thing in short animation films. imagine you have to animate lips and complex face expressions for a dialog. With frame instances, you would just need to draw a library at the beginning of your scene, and then place the instances where they are needed :s)

  17. Please do something about the FBX exporter, it is a complete nightmare to use it. It switches the animations between objects so objects that are supposed to change location rotate and vice versa. It is frustrating and makes you lose tones of hours of work. Please, please, pleas, do something about the FBX exporter, it is horrible.

  18. Any chance to get Mirror modifier? Would be amazingly useful!

  19. within the shaders FX is it possible to implement a normal map for the laye?, early 2005 “lumo ” software and also disney had this cranking. It allowed further lighting. Here is what I mean http://ivizlab.sfu.ca/arya/Papers/ACM/NPAR-02/Illumination%20for%20Cel%20Animation.pdf

  20. Does it have something like markers in opentoonz or something similar?
    As when you color, the marker lines disappear/blend in the colored shape.
    This is what i mean
    https://www.youtube.com/watch?v=MGt-TfGJQ3s

  21. When will it be available. We are working on a project and we are in real need of grease pencil build. Right now I am using one from Graphicall.org, but its very unstable

  22. Amazing work, very excited to use the new GP! Thanks you!

  23. Thank you so very much for all of the hard work you’ve put into improving GP. Now that annotations are separate and GP has received such significant changes, maybe it deserves a new name as well.

    I have 2 things on my wish-list for the future: Curve Modifier and a tweak to the Simplify Modifier (was hoping it’d turn the Circle shape into an even-sided triangle by iteration 4).

  24. will the grease pencil objects be able to be rigged specifically with (bendy bones)?.Especially when we have the option to weight paint it.

  25. Why are grease pencil strokes still “poly” splines, rather than “bezier” splines? This makes it difficult to do really clean, precise linework.

  26. Other examples of tools (anime studio / Moho Pro 12)

    https://www.youtube.com/watch?v=HxcVq9VDdss
    https://my.smithmicro.com/anime-studio-pro.html

    regards

  27. Thanks for your great work, in the last compilation I have not seen the possibility of customizing brushes.

    On the other hand I think that an evolution of creation of strokes would be the use of splines: it would reduce the number of vertices and facility to animate,

    Good examples of simple and powerful tools are the old software Flash, where we began many years ago to animate in 2Dl, like the painted additive/subtractive of shapes, use of splines, generation of parallel lines, manipulation of the lines with the cursor (as in the current masks of Blender composition) …..

    regards

  28. Really exciting work guys.
    I love 3D and 2D animation and to now have that in one software will be awesome!
    You guys rock.

  29. I know i have mentioned this, the

    “Mirror modifier”

    for concept creation would be awesome. We are very excited at the studio about no longer using Toonboom and the massive speed increase that we will have.

    Thank you so sooooo much for your hard work guys. Really really really a very big thank you.

    Is there some kind of library system? Maybe it can be a modifier?

  30. I am taking notes on “The world has ever seen” because you guys (Blender Devs) have the upper hand bringing RT PBR materials + Rigging tools + 2D Animation into the table. Congratulations!

  31. Wil ther be a modifid timeline for GP? Like that of toonboom? With note system for layers? And doing easy cut out puppet animations?

  32. Lovely, seems quite awesome, the only question I have is now that the grease pencil colors are materials and the like, the “palette” functionality has been lost?, and by that i ask about the posibility of having different sets of colors & styles that could be interchanged
    Thank you, it does look like its going to be amazing.

    • Luciano,

      The “fast” palette switching was lost wheadded the palette slots in 2.78. I take a note and add to my ToDo list a way to fast palette switching…. maybe a modifier.

  33. old palette system was useful for switching of daytime color, evening color and night color.

    for new material system, we should use dynamic override for this purpose. am I correct?

    • You are talking of the old system using the gp add-on. Now you can change the color with modifiers or Shader FXs. Maybe, we can create some tools to improve the workflow of these stituations in the future.

      The merge is not the end of development, we have a lot of ideas pending.

In order to prevent spam, comments are closed 15 days after the post is published.
Feel free to continue the conversation on the forums.