Bug 386927 - Brush first draws a straight line
Summary: Brush first draws a straight line
Status: RESOLVED FIXED
Alias: None
Product: krita
Classification: Applications
Component: Tablets (tablet issues are only very rarely bugs in Krita!) (show other bugs)
Version: 3.3.2
Platform: Microsoft Windows Microsoft Windows
: NOR normal
Target Milestone: ---
Assignee: Krita Bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-11-14 22:31 UTC by Azher Krimson
Modified: 2017-12-15 14:36 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
Strokes showing the bug's effect. (244.80 KB, image/png)
2017-11-14 22:31 UTC, Azher Krimson
Details
Tablet Log (240.24 KB, text/plain)
2017-12-15 09:23 UTC, Azher Krimson
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Azher Krimson 2017-11-14 22:31:49 UTC
Created attachment 108871 [details]
Strokes showing the bug's effect.

Brush is registered as a straight line for approx. 300ms from the start of the stroke. This is true of both mouse and stylus, and of every single stroke.
I have flagged this as a major bug since this renders me effectively completely unable to draw anything. The only way to fix it seems to be to wait out the lag period, then trace.

I should mention this doesn't happen in Photoshop CS6 on the same machine, and that I have allocated 100% RAM to Krita and set it to run realtime. These are the only settings I have modified from the defaults. Krita is also running from an SSD with a comfortable 32G of empty memory.
Comment 1 wolthera 2017-11-15 09:50:13 UTC
Does going to view->instant preview help? Are you also sure you didn't turn on stablizer on in the freehand brush tool options? Which version of Krita is this anyway?

I am not sure if 100% ram is really wise, but I believe that is seperate from this issue.
Comment 2 Alvin Wong 2017-11-15 12:54:17 UTC
What tablet device are you using?

Also, please provide the info from Krita "Help"->"Show system information for bug reports".

(Protip: Setting a process's priority to realtime does not do what you think it does. On Windows, mouse input doesn't even run as high as realtime priority, so if a realtime process ends up using 100% CPU you won't even be able to use the mouse.)
Comment 3 Azher Krimson 2017-11-15 13:14:01 UTC
(In reply to wolthera from comment #1)
> Does going to view->instant preview help? Are you also sure you didn't turn
> on stablizer on in the freehand brush tool options? Which version of Krita
> is this anyway?
> 
> I am not sure if 100% ram is really wise, but I believe that is seperate
> from this issue.

100% RAM was only to test if that was the problem ! Instant preview does not change anything, and I have no smoothing mode enabled on the brush
Comment 4 Azher Krimson 2017-11-15 13:15:03 UTC
Software info :

Krita
  Version: 3.3.2

OS Information
  Build ABI: x86_64-little_endian-llp64
  Build CPU: x86_64
  CPU: x86_64
  Kernel Type: winnt
  Kernel Version: 10.0.15063
  Pretty Productname: Windows 10 (10.0)
  Product Type: windows
  Product Version: 10

OpenGL Info 
  Vendor:  ATI Technologies Inc. 
  Renderer:  "AMD Radeon (TM) R9 390 Series" 
  Version:  "3.0.13491 Compatibility Profile Context 22.19.662.4" 
  Shading language:  4.50 
  Requested format:  QSurfaceFormat(version 3.0, options QFlags<QSurfaceFormat::FormatOption>(DeprecatedFunctions), depthBufferSize 24, redBufferSize -1, greenBufferSize -1, blueBufferSize -1, alphaBufferSize -1, stencilBufferSize 8, samples -1, swapBehavior QSurfaceFormat::SwapBehavior(DoubleBuffer), swapInterval 0, profile  QSurfaceFormat::OpenGLContextProfile(CompatibilityProfile)) 
  Current format:    QSurfaceFormat(version 3.0, options QFlags<QSurfaceFormat::FormatOption>(DeprecatedFunctions), depthBufferSize 24, redBufferSize 8, greenBufferSize 8, blueBufferSize 8, alphaBufferSize 8, stencilBufferSize 8, samples 0, swapBehavior QSurfaceFormat::SwapBehavior(DoubleBuffer), swapInterval 1, profile  QSurfaceFormat::OpenGLContextProfile(NoProfile)) 
     Version: 3.0
     Supports deprecated functions true 
     is OpenGL ES: false 

QPA OpenGL Detection Info 
  supportsDesktopGL: true 
  supportsAngleD3D11: true 
  isQtPreferAngle: false 
  overridePreferAngle: false 
== log ==
 createPlatformOpenGLContext QSurfaceFormat(version 3.0, options QFlags<QSurfaceFormat::FormatOption>(DeprecatedFunctions), depthBufferSize 24, redBufferSize -1, greenBufferSize -1, blueBufferSize -1, alphaBufferSize -1, stencilBufferSize 8, samples -1, swapBehavior QSurfaceFormat::SwapBehavior(DoubleBuffer), swapInterval 0, profile  QSurfaceFormat::OpenGLContextProfile(CompatibilityProfile))
Basic wglCreateContext gives version 4.5
OpenGL 2.0 entry points available
GPU features: QSet()
supportedRenderers GpuDescription(vendorId=0x1002, deviceId=0x67b1, subSysId=0x20151462, revision=128, driver: "aticfx64.dll", version=22.19.662.4, "AMD Radeon (TM) R9 390 Series") renderer:  QFlags(0x1|0x2|0x4|0x8|0x20)
Qt: Using WGL and OpenGL from "opengl32.dll"
create OpenGL: "ATI Technologies Inc.","AMD Radeon (TM) R9 390 Series" default ContextFormat: v4.5 profile: QSurfaceFormat::OpenGLContextProfile(CompatibilityProfile) options: QFlags<QSurfaceFormat::FormatOption>(DeprecatedFunctions),SampleBuffers, Extension-API present
Extensions: 289
"choosePixelFormat  Attributes:  0x2003 , 0x2027 , 0x2010 , 0x1 , 0x2001 , 0x1 , 0x2014 , 0x18 , 0x2011 , 0x1 , 0x2022 , 0x18 , 0x2013 , 0x202b , 0x201b , 0x8 , 0x2023 , 0x8 , 0x2041 , 0x0 , \n    obtained px # 21  of  80 \n     PIXELFORMATDESCRIPTOR dwFlags=0x8025 PFD_DRAW_TO_WINDOW PFD_SUPPORT_OPENGL PFD_SUPPORT_COMPOSITION PFD_DOUBLEBUFFER iPixelType=0 cColorBits=32 cRedBits=8 cRedShift=16 cGreenBits=8 cGreenShift=8 cBlueBits=8 cBlueShift=0 cDepthBits=24 cStencilBits=8 cAuxBuffers=4 iLayerType=0 cAlphaBits=8 cAlphaShift=24 "
createContext Creating context version 3 . 0 3 attributes
QWindowsGLContext 0x2f6a370 ARB  requested:  QSurfaceFormat(version 3.0, options QFlags<QSurfaceFormat::FormatOption>(DeprecatedFunctions), depthBufferSize 24, redBufferSize -1, greenBufferSize -1, blueBufferSize -1, alphaBufferSize -1, stencilBufferSize 8, samples -1, swapBehavior QSurfaceFormat::SwapBehavior(DoubleBuffer), swapInterval 0, profile  QSurfaceFormat::OpenGLContextProfile(CompatibilityProfile)) 
    obtained # 21 ARB QSurfaceFormat(version 3.0, options QFlags<QSurfaceFormat::FormatOption>(DeprecatedFunctions), depthBufferSize 24, redBufferSize 8, greenBufferSize 8, blueBufferSize 8, alphaBufferSize 8, stencilBufferSize 8, samples 0, swapBehavior QSurfaceFormat::SwapBehavior(DoubleBuffer), swapInterval 1, profile  QSurfaceFormat::OpenGLContextProfile(NoProfile)) 
     PIXELFORMATDESCRIPTOR dwFlags=0x8025 PFD_DRAW_TO_WINDOW PFD_SUPPORT_OPENGL PFD_SUPPORT_COMPOSITION PFD_DOUBLEBUFFER iPixelType=0 cColorBits=32 cRedBits=8 cRedShift=16 cGreenBits=8 cGreenShift=8 cBlueBits=8 cBlueShift=0 cDepthBits=24 cStencilBits=8 cAuxBuffers=4 iLayerType=0 cAlphaBits=8 cAlphaShift=24  swap interval:  0 
    default:  ContextFormat: v4.5 profile: QSurfaceFormat::OpenGLContextProfile(CompatibilityProfile) options: QFlags<QSurfaceFormat::FormatOption>(DeprecatedFunctions) 
    HGLRC= 0x30000
createPlatformOpenGLContext QSurfaceFormat(version 3.0, options QFlags<QSurfaceFormat::FormatOption>(DeprecatedFunctions), depthBufferSize 24, redBufferSize -1, greenBufferSize -1, blueBufferSize -1, alphaBufferSize -1, stencilBufferSize 8, samples -1, swapBehavior QSurfaceFormat::SwapBehavior(DoubleBuffer), swapInterval 0, profile  QSurfaceFormat::OpenGLContextProfile(CompatibilityProfile))
"choosePixelFormat  Attributes:  0x2003 , 0x2027 , 0x2010 , 0x1 , 0x2001 , 0x1 , 0x2014 , 0x18 , 0x2011 , 0x1 , 0x2022 , 0x18 , 0x2013 , 0x202b , 0x201b , 0x8 , 0x2023 , 0x8 , 0x2041 , 0x0 , \n    obtained px # 21  of  80 \n     PIXELFORMATDESCRIPTOR dwFlags=0x8025 PFD_DRAW_TO_WINDOW PFD_SUPPORT_OPENGL PFD_SUPPORT_COMPOSITION PFD_DOUBLEBUFFER iPixelType=0 cColorBits=32 cRedBits=8 cRedShift=16 cGreenBits=8 cGreenShift=8 cBlueBits=8 cBlueShift=0 cDepthBits=24 cStencilBits=8 cAuxBuffers=4 iLayerType=0 cAlphaBits=8 cAlphaShift=24 "
createContext Creating context version 3 . 0 3 attributes
QWindowsGLContext 0x2f9b000 ARB  requested:  QSurfaceFormat(version 3.0, options QFlags<QSurfaceFormat::FormatOption>(DeprecatedFunctions), depthBufferSize 24, redBufferSize -1, greenBufferSize -1, blueBufferSize -1, alphaBufferSize -1, stencilBufferSize 8, samples -1, swapBehavior QSurfaceFormat::SwapBehavior(DoubleBuffer), swapInterval 0, profile  QSurfaceFormat::OpenGLContextProfile(CompatibilityProfile)) 
    obtained # 21 ARB QSurfaceFormat(version 3.0, options QFlags<QSurfaceFormat::FormatOption>(DeprecatedFunctions), depthBufferSize 24, redBufferSize 8, greenBufferSize 8, blueBufferSize 8, alphaBufferSize 8, stencilBufferSize 8, samples 0, swapBehavior QSurfaceFormat::SwapBehavior(DoubleBuffer), swapInterval 1, profile  QSurfaceFormat::OpenGLContextProfile(NoProfile)) 
     PIXELFORMATDESCRIPTOR dwFlags=0x8025 PFD_DRAW_TO_WINDOW PFD_SUPPORT_OPENGL PFD_SUPPORT_COMPOSITION PFD_DOUBLEBUFFER iPixelType=0 cColorBits=32 cRedBits=8 cRedShift=16 cGreenBits=8 cGreenShift=8 cBlueBits=8 cBlueShift=0 cDepthBits=24 cStencilBits=8 cAuxBuffers=4 iLayerType=0 cAlphaBits=8 cAlphaShift=24  swap interval:  0 
    default:  ContextFormat: v4.5 profile: QSurfaceFormat::OpenGLContextProfile(CompatibilityProfile) options: QFlags<QSurfaceFormat::FormatOption>(DeprecatedFunctions) 
    HGLRC= 0x10001 
== end log ==
Comment 5 Azher Krimson 2017-11-15 13:19:26 UTC
(In reply to Alvin Wong from comment #2)
> What tablet device are you using?
> 
> Also, please provide the info from Krita "Help"->"Show system information
> for bug reports".
> 
> (Protip: Setting a process's priority to realtime does not do what you think
> it does. On Windows, mouse input doesn't even run as high as realtime
> priority, so if a realtime process ends up using 100% CPU you won't even be
> able to use the mouse.)

I have added the information ! I have an Intuos Pen and Touch small ( CTH-480 )
I have added system information to a separate comment.

I know it doesn't change that much but it has fixed some lag issues for me in the past so that was one of the first fixes that came to mind. But thanks for the tip !
Comment 6 Alvin Wong 2017-11-15 14:29:04 UTC
What if you disable "Canvas Graphics Acceleration" in configure krita->display? Or change renderer to ANGLE?
Comment 7 Azher Krimson 2017-11-17 03:55:32 UTC
(In reply to Alvin Wong from comment #6)
> What if you disable "Canvas Graphics Acceleration" in configure
> krita->display? Or change renderer to ANGLE?

Both fixes tried, not working :/
Comment 8 Alvin Wong 2017-11-18 09:14:56 UTC
Can you make a tablet log by following this? https://docs.krita.org/KritaFAQ#What_if_your_tablet_is_not_recognized_by_Krita.3F

Draw a few circles while making the log. Try to make at least one fast stroke and one slow stroke. Please also take a screenshot of the result so we can correlate the tablet log with the strokes drawn on the canvas.
Comment 9 Halla Rempt 2017-11-21 11:58:56 UTC
Marking as waiting for info -- we need to see the tablet log.
Comment 10 Azher Krimson 2017-12-15 09:23:55 UTC
Created attachment 109384 [details]
Tablet Log

This is a tablet log of me tracing three circles all showing the problem
Comment 11 Alvin Wong 2017-12-15 11:27:04 UTC
(In reply to Azher Krimson from comment #10)
> Created attachment 109384 [details]
> Tablet Log
> 
> This is a tablet log of me tracing three circles all showing the problem

Well, it's obvious from the log that the driver sends several move events with the same coordinates but varying pressure, then sends more move events with a big jump.

I'm feeling a bit dumb for not asking these earlier...

- Are you using the latest Wacom driver?
- Which version is it?
- Does it happen if you disable Windows Ink in the Wacom settings?
- Does it happen if you enable Windows Ink in the Wacom settings and change the tablet API in Krita to Windows pointer input? (You need to restart Krita for the changes to apply.)
- Does it really also happen with the mouse like you mentioned in the OP?
Comment 12 Azher Krimson 2017-12-15 12:04:00 UTC
Driver is updated to version 6.3.25-5 which should be the latest
The problem happens whatever Krita's pointer API is set to and whether or not windows ink is on.
Despite the log showing the driver malfunctioning, I must mention that photoshop on the exact same machine does not experience this issue at all and draws smooth lines from the get go.


(In reply to Alvin Wong from comment #11)
> (In reply to Azher Krimson from comment #10)
> > Created attachment 109384 [details]
> > Tablet Log
> > 
> > This is a tablet log of me tracing three circles all showing the problem
> 
> Well, it's obvious from the log that the driver sends several move events
> with the same coordinates but varying pressure, then sends more move events
> with a big jump.
> 
> I'm feeling a bit dumb for not asking these earlier...
> 
> - Are you using the latest Wacom driver?
> - Which version is it?
> - Does it happen if you disable Windows Ink in the Wacom settings?
> - Does it happen if you enable Windows Ink in the Wacom settings and change
> the tablet API in Krita to Windows pointer input? (You need to restart Krita
> for the changes to apply.)
> - Does it really also happen with the mouse like you mentioned in the OP?
Comment 13 Alvin Wong 2017-12-15 13:41:32 UTC
I literally just tried the same model CTH-480 with the same driver version 6.3.25-5 and there aren't any issues.

I suggest you reset the Wacom driver configuration completely with the Wacom Tablet Preference File Utility, make sure no remnants of possibly broken configurations are in place, uninstall the driver completely and install it again (_not_ simply reinstalling). If this doesn't change anything, I'm afraid there is something seriously wrong with your system that we can't fix here.
Comment 14 Azher Krimson 2017-12-15 14:36:51 UTC
Bug was probably due to an improper driver upgrade, thank you for your help. As obvious as it may sound I had not tried uninstalling and reinstalling the driver, because I thought the fault couldn't possibly come from it as every other program (including FireAlpaca, Photoshop, Paint and Sketchpad) were working perfectly fine.

Thank you for your time !

(In reply to Alvin Wong from comment #13)
> I literally just tried the same model CTH-480 with the same driver version
> 6.3.25-5 and there aren't any issues.
> 
> I suggest you reset the Wacom driver configuration completely with the Wacom
> Tablet Preference File Utility, make sure no remnants of possibly broken
> configurations are in place, uninstall the driver completely and install it
> again (_not_ simply reinstalling). If this doesn't change anything, I'm
> afraid there is something seriously wrong with your system that we can't fix
> here.