Page MenuHome

Grease Pencil selections fail when GP layer is parented to an animated object
Closed, ResolvedPublicBUG

Description

Blender bug report

System Information
System 1:
Operating system: MacOS 10.15.7
Graphics card: AMD Radeon Pro 5700 XT 16 GB

System 2:
Operating system: Windows 10
Graphics card: Geforce Titan X

Blender Version
Broken: Tried on 2.91, 2.92 & 2.93

Short description of error
Performing point selections in a Grease Pencil object becomes very glitchy when the GP layer is parented via relations to an animated object.

Exact steps for others to reproduce the error
Open the attached .blend file.
Enter edit mode on the grease pencil object.
Attempt to make a box selection. If bug is present, the selection will miss many points.
Scrub the timeline to a new point in the animation. Try make another selection. Notice how hard it is to select points. Tweak mode is also affected.

Here is a screen recording of the issue in case that's useful: https://www.dropbox.com/s/gjtjsfsp7r9tdo1/screen%20recording%202021-02-26%20at%201.27.51%20am.mov?dl=0

Thanks :)

Event Timeline

Falk David (filedescriptor) changed the task status from Needs Triage to Confirmed.Feb 25 2021, 9:00 PM

I can confirm this. There must be an issue with the evaluated data not being used in the selection operators.

Hi David, I just wanted to say thanks for accepting the bug report and claiming the task. I also want to note that Curve Edit Mode in 2.92+ is similarly affected by this bug (I realise I showed this in my screen capture, but didn't make note of it in the text). This bug is limiting what would otherwise be a very powerful workflow in GP: Basically rigging up a kind of puppet for the base animation, with the flexibility to modify strokes on the fly as an additive process. I'm working around this semi-successfully using the sculpt tools, but they lack precision. I can't wait to further explore this workflow when the bug is squished.

Anyway, thanks for your amazing work :)

Nathan

Falk David (filedescriptor) triaged this task as High priority.Feb 27 2021, 9:03 AM
Falk David (filedescriptor) changed the subtype of this task from "Report" to "Bug".

I think the desync with the curves is a separate issue: T85787. It's a separate problem that has to do with the underlying design. We will fix this in 2.93.

@Nathan Clark (Neigh) Could you confirm for me that this is not happening with Circle nor Lasso select? That would be helpful :)

Sure thing, I just tested and bug is present with lasso selection … but the circle selection seems to actually make an accurate selection, but there is some weird visible UI glitching while using the tool (random points appearing for brief moments that are not part of the stroke)… here's another screen recording if useful: https://www.dropbox.com/s/m541u1jplhzb4jr/Screen%20Recording%202021-02-27%20at%207.30.08%20pm.mov?dl=0

@Nathan Clark (Neigh) Ah ok sorry, yes lasso select should be affected. Perfect. I have a fix then :). The issue with the points you are seeing is a known visual glitch. They are not actual points.

This is now fixed in master and added to the list of fixes to a potential 2.92.1 corrective release.

Wow that's fantastic, what a pleasant experience it's been reporting this bug and having it handled with such expedience. Thank you very much :)

Hi again,

Sorry to say but I believe I have found another area of Grease Pencil suffering from this selection bug. It appears that whenever the GP object is parented, the sculpt tools fail to affect the stroke. The only tool that works as expected is the grab brush, while the others fail. To replicate, open up the original attached .blend file and attempt to use sculpt brushes on the parented GP object, only the grab brush will function.

Here's another demonstration of the issue (dropbox video)

Sorry I didn't pick this up before submitting the initial report

Thanks, Nathan

Hi @Nathan Clark (Neigh) ! Please open it as a new report to keep things organized. You can do it through Blender then Help > Report a Bug (that way the submission template fills out all the system information for you).