Update: I've found the source of this error in the TouchCanvas example code. See post #20 for details. Original post unedited below.
------------
Got my Pencil today, been spending a lot of time with it. Generally impressed, but there's a major issue right now that wasn't visible on the in-store demos because of the software Apple provided.
Basically, on a certain percentage of strokes the first data point that comes in has no pressure data and receives a placeholder value of 50%.
Might be related to latency of BT vs the digitizer (first contact event is detected before any pressure comes in). May be related to the digitizer recognizing Pencil input just a hair above the actual screen, which would result in a touch event that has no pressure data associated with it. (I would make a video of this second thing happening, but I'm not sure it would be possible to tell on video).
Reproduction:
In Procreate, create a brush which has no dynamics aside from Pencil pressure size variation. No speed, tilt, taper, etc. effects to mess up the results. Make sure it has a wide pressure range. Draw a series of quick strokes with light pressure. Some of them will be way fatter than the others to a degree that could not be an accidental application of pressure.
What's going on? Watch the video (slow motion on the second row) and ignore the fact that it's in portrait:
I want to reiterate that those fat lines are absolutely not the product of applying significantly more pressure. I tested this extensively. I also want to make it clear that pressure sensitivity once you've started a stroke is excellent (link)
3 cases:
-Works fine, everything is normal.
-An initial large circle appears because of the missing pressure data, but is corrected. No problem.
-The correction either doesn't happen, or comes in late and the brush engine begins interpolation from that initial (wrong) pressure data towards the real (much lower) values that are coming in. Part of this could be resolved if Procreate just got rid of the pressure smoothing, but that's not the point.
Here's a different case: Notability doesn't ever correct the initial bad pressure data, but it also doesn't seem to use any pressure smoothing so we get to see the error unfiltered.
Notice how the error value isn't 0% or 100% pressure, but some value in between.
The only app out there right now that doesn't display this issue is Notes, but I've seen it perform a correction to fix it. It's much less common, but I've spotted a dark pencil line replaced with a lighter one.
So... that's quite a thing. I don't want to make any conclusions yet. It may be as simple as other devs needing to fix their prediction/correction implementations so they work like Notes. I was actually hesitant to post this right now, but getting these things fixed requires visibility.
------------
Got my Pencil today, been spending a lot of time with it. Generally impressed, but there's a major issue right now that wasn't visible on the in-store demos because of the software Apple provided.
Basically, on a certain percentage of strokes the first data point that comes in has no pressure data and receives a placeholder value of 50%.
Might be related to latency of BT vs the digitizer (first contact event is detected before any pressure comes in). May be related to the digitizer recognizing Pencil input just a hair above the actual screen, which would result in a touch event that has no pressure data associated with it. (I would make a video of this second thing happening, but I'm not sure it would be possible to tell on video).
Reproduction:
In Procreate, create a brush which has no dynamics aside from Pencil pressure size variation. No speed, tilt, taper, etc. effects to mess up the results. Make sure it has a wide pressure range. Draw a series of quick strokes with light pressure. Some of them will be way fatter than the others to a degree that could not be an accidental application of pressure.
What's going on? Watch the video (slow motion on the second row) and ignore the fact that it's in portrait:
3 cases:
-Works fine, everything is normal.
-An initial large circle appears because of the missing pressure data, but is corrected. No problem.
-The correction either doesn't happen, or comes in late and the brush engine begins interpolation from that initial (wrong) pressure data towards the real (much lower) values that are coming in. Part of this could be resolved if Procreate just got rid of the pressure smoothing, but that's not the point.
Here's a different case: Notability doesn't ever correct the initial bad pressure data, but it also doesn't seem to use any pressure smoothing so we get to see the error unfiltered.

Notice how the error value isn't 0% or 100% pressure, but some value in between.
The only app out there right now that doesn't display this issue is Notes, but I've seen it perform a correction to fix it. It's much less common, but I've spotted a dark pencil line replaced with a lighter one.
So... that's quite a thing. I don't want to make any conclusions yet. It may be as simple as other devs needing to fix their prediction/correction implementations so they work like Notes. I was actually hesitant to post this right now, but getting these things fixed requires visibility.
Last edited: