Paint line stroke - interpolation steps/aliasing #52610
Labels
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
4 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: blender/blender#52610
Loading…
Reference in New Issue
No description provided.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
System Information
Suse Leap 42.2
NVidia GTX 560ti (official drivers)
Blender Version
Broken: 2.78c
Worked: unknown
Short description of error
The paint line stroke doesn't properly interpolate, which causes regular steps/aliasing along the length - most noticeable on shallow angled lines.
Exact steps for others to reproduce the error
Changed status to: 'Open'
Added subscriber: @intracube
Added subscriber: @FloridaJo
I'm thinking this is normal with a low pixel width line.
I wouldn't think it would generate a scalable vector type file.
I'll let someone else decide though.
It's not an issue caused by the resolution or scale. Compare with GIMP's paint line tool:
Canvas resolution and zoom scaling are the same for both.
It looks as though Blender is actually drawing diagonal lines as a set of segmented horizontal (or vertical) lines.
A bit of a wild guess, but does the brush rendering code not allow sub-pixel placement? It would explain the stepping effect.
EDIT: Drawing in the 3d viewport gives clean results
Added subscriber: @mont29
Changed status from 'Open' to: 'Archived'
Thanks for the report, but that is no bug, rather feature/enhancement request. which are not accepted on this tracker.
I can't see how this would be considered either a feature or enhancement.
There should be a baseline of functionality. For a program as established as Blender, it's reasonable to expect a line drawing tool to produce clean results without obvious jaggies/aliasing.
Right now, the line (and curve) tools give poor results in the 2d image editor.
Changed status from 'Archived' to: 'Open'
Some examples drawn in the 2d editor and 3d viewport:
Changed status from 'Open' to: 'Archived'
This is no bug, period. Triaging tracker is heavy and annoying enough task not to have to do it twice.
The crux of this seems to be - "it's not a bug because the code works as intended, therefore it's a feature request" vs "the original design specification has a bug".
(It's possible to have a bug in a software design spec as well as final code)
If we can break this down to clarify:
What are the intended common uses for the paint tool's line and curve modes?
This seems self explanatory, the artist will use it to draw lines/strokes of varying thickness.
Is the tool is being used in an unusual way (corner case issue) for the aliasing to appear?
Drawing medium width lines with the standard in-built brush and most default values has to be one of the most common uses for the line and curve modes.
Is it reasonable to expect aliasing/stepping to this degree?
I don't think most artists would say so. It means the line/curve isn't usable in a significant number of cases.
I'd welcome some feedback on this, but please don't automatically close bugs without giving your reasoning. Certainly not within a few days as this means other people and devs don't have a chance to comment on it.
Added subscriber: @brecht
The issue is that the brush painting code in the image editor does not not work at a sub-pixel level. Supporting that would be good to improve quality, but it's a lot of work and for that reason out of the scope of what we handle in this bug tracker.
We can argue about the semantics of the word "bug", but it's not really about that, more about what we decide to give as a minimum support with limited resources, vs. what goes on the longer term to do list for which we can't promise anything.
OK, thanks for confirming the cause. I still feel this is a notable issue with the painting tool, but I understand the limited resources.
Could this be transferred to the To Do section?
I've added it to the list here:
https://wiki.blender.org/index.php/Dev:Source/Development/Todo/Tools#Painting
Thanks