Grease Pencil consistent crash #44412

Closed
opened 2015-04-16 16:20:42 +02:00 by Daniel Houghton · 12 comments

System Information
OSX 10.10.3 MacBook Pro (Retina, 15-inch, Mid 2014)
Intel Iris Pro 1536MB

Blender Version
Broken: 2.74
Worked: (optional)

Short description of error
In a first experiment with the exciting new animatable grease pencil tools I seem to have created a situation that consistently crashes Blender with the error: "frame (1) existed already for this layer." I've attached the crash.txt file
storyboard.crash.txt
and the .blend file causing the issue
storyboard.blend

Exact steps for others to reproduce the error
open storyboard.blend
frame forward to frame 2 with the right arrow key
the word "Collinwood" should shrink
this shrinking is unexpected, and seems buggy, but doesn't yet cause the crash.
now go to frame 1
hold down the D key and left click to draw a grease pencil stroke.
Blender should crash.

Thank you for taking a look at this!
I'm excited by the possibility of the new grease pencil tools.
Daniel

**System Information** OSX 10.10.3 MacBook Pro (Retina, 15-inch, Mid 2014) Intel Iris Pro 1536MB **Blender Version** Broken: 2.74 Worked: (optional) **Short description of error** In a first experiment with the exciting new animatable grease pencil tools I seem to have created a situation that consistently crashes Blender with the error: "frame (1) existed already for this layer." I've attached the crash.txt file [storyboard.crash.txt](https://archive.blender.org/developer/F163082/storyboard.crash.txt) and the .blend file causing the issue [storyboard.blend](https://archive.blender.org/developer/F163083/storyboard.blend) **Exact steps for others to reproduce the error** open storyboard.blend frame forward to frame 2 with the right arrow key the word "Collinwood" should shrink this shrinking is unexpected, and seems buggy, but doesn't yet cause the crash. now go to frame 1 hold down the D key and left click to draw a grease pencil stroke. Blender should crash. Thank you for taking a look at this! I'm excited by the possibility of the new grease pencil tools. Daniel
Author
Member

Changed status to: 'Open'

Changed status to: 'Open'
Author
Member

Added subscriber: @DanielHoughton

Added subscriber: @DanielHoughton
Author
Member

Quick followup.

It looks like a Grease Pencil fill layer draws on top of other strokes, even when X Ray is off for all grease pencil layers and it is behind the other strokes.

storyboard_fill.blend

The attached .blend demonstrates this case. Just orbit the view to see the layering issue.

Thank you again! And please let me know if there is anything I can do to help.
Daniel

Quick followup. It looks like a Grease Pencil fill layer draws on top of other strokes, even when X Ray is off for all grease pencil layers and it is behind the other strokes. [storyboard_fill.blend](https://archive.blender.org/developer/F163094/storyboard_fill.blend) The attached .blend demonstrates this case. Just orbit the view to see the layering issue. Thank you again! And please let me know if there is anything I can do to help. Daniel

Added subscriber: @Psy-Fi

Added subscriber: @Psy-Fi

Looks like we have a GL error somewhere, getting a gpu report

Looks like we have a GL error somewhere, getting a gpu report

Confirmed and assigning to Joshua

Confirmed and assigning to Joshua
Joshua Leung was assigned by Antonis Ryakiotakis 2015-04-16 18:35:59 +02:00
Member

Added subscriber: @JulianEisel

Added subscriber: @JulianEisel

This issue was referenced by 09f2aa9382

This issue was referenced by 09f2aa938248bedebf7e801fabd833055627fe46
Member

Changed status from 'Open' to: 'Resolved'

Changed status from 'Open' to: 'Resolved'
Member

Closed by commit 09f2aa9382.

Closed by commit 09f2aa9382.
Member

About the crashing file:
Looking into your file, there are two drawings on frames 1 and 0, in that order. Under ordinary circumstances, the Grease Pencil tool expects that these are ordered in chronological ascending order (i.e. 0 then 1); most of the problems can be attributed to this. I've just committed some fixes to prevent this from crashing, and also to fix other weirdness I found around here (i.e. problems trying to draw on frame 0).

Perhaps the bigger issue here is how your file got into this state in the first place, since this really shouldn't happen.

To ensure that they are all sorted in the right order, go to the Dopesheet, change in to the "Grease Pencil" mode, then select all keyframes, G to start a transform (both don't move the mouse), then click to confirm. This will force all the selected keyframes to get sorted once, so that they resolve correctly again.

About the fill issue:
I've run into this one myself, and agree it's confusing. At the time, I figured that it was really just an artifact of the fact that strokes on one layer are drawn completely before the next layer's strokes are drawn. The net result is that the last-drawn layer should "win", especially when they are on different planes.

About the crashing file: Looking into your file, there are two drawings on frames 1 and 0, in *that* order. Under ordinary circumstances, the Grease Pencil tool expects that these are ordered in chronological ascending order (i.e. 0 then 1); most of the problems can be attributed to this. I've just committed some fixes to prevent this from crashing, and also to fix other weirdness I found around here (i.e. problems trying to draw on frame 0). Perhaps the bigger issue here is how your file got into this state in the first place, since this really shouldn't happen. To ensure that they are all sorted in the right order, go to the Dopesheet, change in to the "Grease Pencil" mode, then select all keyframes, G to start a transform (both don't move the mouse), then click to confirm. This will force all the selected keyframes to get sorted once, so that they resolve correctly again. About the fill issue: I've run into this one myself, and agree it's confusing. At the time, I figured that it was really just an artifact of the fact that strokes on one layer are drawn completely before the next layer's strokes are drawn. The net result is that the last-drawn layer should "win", especially when they are on different planes.
Author
Member

Aligorith,

Thank you for taking a look at it!
I tried sorting the grease pencil keys in the dopesheet and that definitely stopped the crash, so thank you for the workaround.
I wish I could answer your bigger picture question of how it got into the problematic state, but I'm not sure.
And your last point about layering in the grease pencil tool helps explain the confusing drawing behavior. I see now that I was assuming that layering would work as it does in the 3d view, more as a visibility flag than as a mechanism for determining the drawing order.

I suppose I was thinking that the grease pencil layers could work sort of like color swatches, i.e. whenever you want white strokes, you draw on the white strokes with no fill layer, and whenever you want red strokes with yellow fill, you draw on the red/yellow layer.

If grease pencil layers are drawn to completion in the order that they are stacked, then I can never have white strokes both behind and on top of red strokes unless I make a duplicate white strokes layer.

Anyways, thank you so much for the tip. This lets me take off again with this storyboarding project. It really does seem like a useful and efficient tool.

Daniel

Aligorith, Thank you for taking a look at it! I tried sorting the grease pencil keys in the dopesheet and that definitely stopped the crash, so thank you for the workaround. I wish I could answer your bigger picture question of how it got into the problematic state, but I'm not sure. And your last point about layering in the grease pencil tool helps explain the confusing drawing behavior. I see now that I was assuming that layering would work as it does in the 3d view, more as a visibility flag than as a mechanism for determining the drawing order. I suppose I was thinking that the grease pencil layers could work sort of like color swatches, i.e. whenever you want white strokes, you draw on the white strokes with no fill layer, and whenever you want red strokes with yellow fill, you draw on the red/yellow layer. If grease pencil layers are drawn to completion in the order that they are stacked, then I can never have white strokes both behind and on top of red strokes unless I make a duplicate white strokes layer. Anyways, thank you so much for the tip. This lets me take off again with this storyboarding project. It really does seem like a useful and efficient tool. Daniel
Sign in to join this conversation.
No Label
Interest
Alembic
Interest
Animation & Rigging
Interest
Asset Browser
Interest
Asset Browser Project Overview
Interest
Audio
Interest
Automated Testing
Interest
Blender Asset Bundle
Interest
BlendFile
Interest
Collada
Interest
Compatibility
Interest
Compositing
Interest
Core
Interest
Cycles
Interest
Dependency Graph
Interest
Development Management
Interest
EEVEE
Interest
EEVEE & Viewport
Interest
Freestyle
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
ID Management
Interest
Images & Movies
Interest
Import Export
Interest
Line Art
Interest
Masking
Interest
Metal
Interest
Modeling
Interest
Modifiers
Interest
Motion Tracking
Interest
Nodes & Physics
Interest
OpenGL
Interest
Overlay
Interest
Overrides
Interest
Performance
Interest
Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds & Tests
Interest
Python API
Interest
Render & Cycles
Interest
Render Pipeline
Interest
Sculpt, Paint & Texture
Interest
Text Editor
Interest
Translations
Interest
Triaging
Interest
Undo
Interest
USD
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Interest
Video Sequencer
Interest
Virtual Reality
Interest
Vulkan
Interest
Wayland
Interest
Workbench
Interest: X11
Legacy
Blender 2.8 Project
Legacy
Milestone 1: Basic, Local Asset Browser
Legacy
OpenGL Error
Meta
Good First Issue
Meta
Papercut
Meta
Retrospective
Meta
Security
Module
Animation & Rigging
Module
Core
Module
Development Management
Module
EEVEE & Viewport
Module
Grease Pencil
Module
Modeling
Module
Nodes & Physics
Module
Pipeline, Assets & IO
Module
Platforms, Builds & Tests
Module
Python API
Module
Render & Cycles
Module
Sculpt, Paint & Texture
Module
Triaging
Module
User Interface
Module
VFX & Video
Platform
FreeBSD
Platform
Linux
Platform
macOS
Platform
Windows
Priority
High
Priority
Low
Priority
Normal
Priority
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No project
No Assignees
5 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender#44412
No description provided.