2024-12-17 Grease Pencil Module Meeting

Date/Time: Invalid date
Link: https://meet.google.com/xxo-tyin-rem
Attendees:

  • Antonio Vazquez (Developer)
  • Casey Bianco-Davis (Developer)
  • Daniel Martinez Lara (Grease Pencil team)
  • Falk David (Blender)
  • Friedrich Schäper (Studio Huckepack)
  • Wu Yiming (Blender)

Topics

  • General updates
  • Development updates
  • Discussions
    • Hole support for fill shapes

Meeting Notes

Show all commits
  • Discussion: Hole support for fill shapes.
    • The discussion was focused on user interaction.
    • To add support for holes, we need a way to group strokes together.
    • Idea is to add the concept of shapes.
      • Shapes are a group of one or more strokes.
    • There can be zero or more strokes within a shape that are holes.
    • Casey: Gave a quick live demo of the current state of his branch adding hole support for fills:
    • Q: How do users create shapes?
      • Falk: Thinks that for a lot of cases, shapes should be created automatically. E.g. imagine using a boolean eraser on a fill. Even though the tool might create shapes with holes, all of this happens automatically. Or as another example, the user might clip two fill strokes to create a new one (which could be a shape with some holes).
      • Antonio: Sometimes it’s useful to group strokes together, maybe when drawing an eye with multiple strokes.
      • Casey: Showed a “join” operator that would join strokes into one shape. Similarly there’s a separate operator that separates a shape with multiple strokes into individual strokes.
    • Q: How does the user select/interact with shapes?
      • Idea: Add a shape selection mode. Selecting any part of a shape selects the whole shape.
      • Falk: Thinks that other selection modes should still work as they do now. Selecting a stroke in stroke selection would only select that stroke.
      • “Select linked” should select the whole shape (regardless of selection mode).
    • Antonio: What about shapes with holes that have other shapes inside the hole, etc. ?
      • Falk: Thinks that it’s probably best to only think about “outer” and “inner” boundaries for shapes. This means that shapes inside the hole of another shape are just smaller, separate shapes and don’t have any relation to the hole they are inside.
    • Yiming: Does the winding order matter?
      • No, it shouldn’t matter. What’s a hole and what isn’t should be defined by the data.
    • Yiming: How do we visualize shapes? E.g. what could be ways for the user to see which strokes are in the same shape?
      • Idea: Similar to how we show “edit points”/“edit lines” for selected strokes, we could have an overlay that outlines the current shape.
    • Casey: What should happen when holes overlap the outer boundary? Currently this “cancels” the triangulation of the shape.
      • Falk: Thinks that it’s probably fine for this to “fail” for now. But this means that we would break compatibility if we change that behavior.
      • Falk had a discussion with Hans after the meeting and Hans suggested that holes could act as “substractive fills” and thus perform a boolean operation on the additive fills. If a hole overlaps a boundary it would cut into it cleanly. This would impact the performance of editing these holes, but the result of the boolean operation would be cached.
    • Conclusion: Falk will write a design task for this that can be discussed further.
  • Antonio: Brought up a topic about materials. Some time ago, the Grease Pencil team was thinking about having separate “Stroke” and “Fill” materials. Would have to include Clément in this discussion too. Maybe in the next meeting.
  • Yiming: Is working on multiple tasks for the quality project, like object conversion. Wants to look again into lineart as nodes. Asked about closures which haven’t landed in main (yet).

Next Meeting

  • Time/Date: 2025-01-06T15:00:00Z
6 Likes