Eeschema poor rendering in open GL

Bug #1810196 reported by John Pateman
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
KiCad
Fix Released
Undecided
Tomasz Wlostowski

Bug Description

Trying out a nightly build on macOS 10.13 27" iMac 12GB RAM with ATI Radeon HD 4670 256 MB graphics.

Rendering looks OK when zoomed in but very unsatisfactory when zoomed out. When scrolling in both horizontal and vertical directions, the line width 'jumps' erratically. Text is very blocky and bitmapped. See attached screencast (Accelerated Canvas 2x supersampling mode - the best I could make it look)

Have tried all the options for accelerated modes and all look very bitmapped at low zoom levels. There are very odd rendering artefacts around junction dots which make the tracks look tapered in the 'High & Ultra' quality modes. The 4x sampling is not supported and although the 2x sampling is the best, it is really poor in comparison to 5.0.1. The fallback canvas is unusably blocky and slow.

Application: kicad
Version: (5.0.1-3-g963ef8bb5), release build
Libraries:
    wxWidgets 3.0.4
    libcurl/7.54.0 LibreSSL/2.0.20 zlib/1.2.11 nghttp2/1.24.0
Platform: Mac OS X (Darwin 17.7.0 x86_64), 64 bit, Little endian, wxMac
Build Info:
    wxWidgets: 3.0.4 (UTF-8,STL containers,compatible with 2.8)
    Boost: 1.67.0
    OpenCASCADE Community Edition: 6.9.1
    Curl: 7.54.0
    Compiler: Clang 10.0.0 with C++ ABI 1002

Build settings:
    USE_WX_GRAPHICS_CONTEXT=ON
    USE_WX_OVERLAY=ON
    KICAD_SCRIPTING=ON
    KICAD_SCRIPTING_MODULES=ON
    KICAD_SCRIPTING_WXPYTHON=ON
    KICAD_SCRIPTING_ACTION_MENU=ON
    BUILD_GITHUB_PLUGIN=ON
    KICAD_USE_OCE=ON
    KICAD_USE_OCC=OFF
    KICAD_SPICE=ON

Tags: eeschema gal
Revision history for this message
John Pateman (gasman2016) wrote :
Revision history for this message
Wayne Stambaugh (stambaughw) wrote :

That looks terrible compared to what I see with my nvidia GeForce GT 640 on windows. Anyone else with a mac using this graphics card seeing this kind of poor rendering?

Changed in kicad:
status: New → Incomplete
Revision history for this message
Seth Hillbrand (sethh) wrote :

This is confusing. @John- You said that you are using a nightly build but the version information you posted is for v5.0.1-3, which is not a nightly and doesn't have Accelerated canvas or anti-aliasing for Eeschema.

I just tried and observe some blockiness using Fallback but smooth and clear in Accelerated in Eeschema.

Application: eeschema
Version: (6.0.0-rc1-dev-1456-g49339cfd0), debug build
Libraries:
    wxWidgets 3.0.4
    libcurl/7.54.0 LibreSSL/2.6.4 zlib/1.2.11 nghttp2/1.24.1
Platform: Mac OS X (Darwin 18.0.0 x86_64), 64 bit, Little endian, wxMac
Build Info:
    wxWidgets: 3.0.4 (UTF-8,STL containers,compatible with 2.8)
    Boost: 1.68.0
    OpenCASCADE Community Edition: 6.9.1
    Curl: 7.51.0
    Compiler: Clang 8.0.0 with C++ ABI 1002

Build settings:
    USE_WX_GRAPHICS_CONTEXT=ON
    USE_WX_OVERLAY=ON
    KICAD_SCRIPTING=ON
    KICAD_SCRIPTING_MODULES=ON
    KICAD_SCRIPTING_PYTHON3=OFF
    KICAD_SCRIPTING_WXPYTHON=ON
    KICAD_SCRIPTING_WXPYTHON_PHOENIX=OFF
    KICAD_SCRIPTING_ACTION_MENU=ON
    BUILD_GITHUB_PLUGIN=ON
    KICAD_USE_OCE=ON
    KICAD_USE_OCC=OFF
    KICAD_SPICE=ON

Revision history for this message
John Pateman (gasman2016) wrote : Re: [Bug 1810196] Re: Eeschema poor rendering in open GL
Download full text (4.2 KiB)

Oops - sorry I made two bug reports today and copied the wrong info on this one. The correct info is appended - apologies.

For info, this is what it looks like with Subpixel Antialiasing (High Quality) set - these are the weird tapered lines I mentioned

Application: kicad
Version: (6.0.0-rc1-dev-1453-gf26eb94a1), debug build
Libraries:
    wxWidgets 3.0.4
    libcurl/7.54.0 LibreSSL/2.0.20 zlib/1.2.11 nghttp2/1.24.0
Platform: Mac OS X (Darwin 17.7.0 x86_64), 64 bit, Little endian, wxMac
Build Info:
    wxWidgets: 3.0.4 (UTF-8,STL containers,compatible with 2.8)
    Boost: 1.68.0
    OpenCASCADE Community Edition: 6.9.1
    Curl: 7.54.0
    Compiler: Clang 9.0.0 with C++ ABI 1002

Build settings:
    USE_WX_GRAPHICS_CONTEXT=ON
    USE_WX_OVERLAY=ON
    KICAD_SCRIPTING=ON
    KICAD_SCRIPTING_MODULES=ON
    KICAD_SCRIPTING_PYTHON3=OFF
    KICAD_SCRIPTING_WXPYTHON=ON
    KICAD_SCRIPTING_WXPYTHON_PHOENIX=OFF
    KICAD_SCRIPTING_ACTION_MENU=ON
    BUILD_GITHUB_PLUGIN=ON
    KICAD_USE_OCE=ON
    KICAD_USE_OCC=OFF
    KICAD_SPICE=ON

> On 1 Jan 2019, at 21:36, Seth Hillbrand <email address hidden> wrote:
>
> This is confusing. @John- You said that you are using a nightly build
> but the version information you posted is for v5.0.1-3, which is not a
> nightly and doesn't have Accelerated canvas or anti-aliasing for
> Eeschema.
>
> I just tried and observe some blockiness using Fallback but smooth and
> clear in Accelerated in Eeschema.
>
> Application: eeschema
> Version: (6.0.0-rc1-dev-1456-g49339cfd0), debug build
> Libraries:
> wxWidgets 3.0.4
> libcurl/7.54.0 LibreSSL/2.6.4 zlib/1.2.11 nghttp2/1.24.1
> Platform: Mac OS X (Darwin 18.0.0 x86_64), 64 bit, Little endian, wxMac
> Build Info:
> wxWidgets: 3.0.4 (UTF-8,STL containers,compatible with 2.8)
> Boost: 1.68.0
> OpenCASCADE Community Edition: 6.9.1
> Curl: 7.51.0
> Compiler: Clang 8.0.0 with C++ ABI 1002
>
> Build settings:
> USE_WX_GRAPHICS_CONTEXT=ON
> USE_WX_OVERLAY=ON
> KICAD_SCRIPTING=ON
> KICAD_SCRIPTING_MODULES=ON
> KICAD_SCRIPTING_PYTHON3=OFF
> KICAD_SCRIPTING_WXPYTHON=ON
> KICAD_SCRIPTING_WXPYTHON_PHOENIX=OFF
> KICAD_SCRIPTING_ACTION_MENU=ON
> BUILD_GITHUB_PLUGIN=ON
> KICAD_USE_OCE=ON
> KICAD_USE_OCC=OFF
> KICAD_SPICE=ON
>
> --
> You received this bug notification because you are subscribed to the bug
> report.
> https://bugs.launchpad.net/bugs/1810196
>
> Title:
> Eeschema poor rendering in open GL
>
> Status in KiCad:
> Incomplete
>
> Bug description:
> Trying out a nightly build on macOS 10.13 27" iMac 12GB RAM with ATI
> Radeon HD 4670 256 MB graphics.
>
> Rendering looks OK when zoomed in but very unsatisfactory when zoomed
> out. When scrolling in both horizontal and vertical directions, the
> line width 'jumps' erratically. Text is very blocky and bitmapped. See
> attached screencast (Accelerated Canvas 2x supersampling mode - the
> best I could make it look)
>
> Have tried all the options for accelerated modes and all look very
> bitmapped at low zoom levels. There are very odd rendering artefacts
> around junction dots which make the tracks look tapered in the 'High &
> Ultra' quali...

Read more...

Revision history for this message
Seth Hillbrand (sethh) wrote :

The tapered lines will always be present for sub-pixel anti-aliasing. Unavoidable with this type of anti-aliasing. Using one of the super-sampling modes should help there.

The varying line thickness I though had been addressed with the sub-pixel alignment Tom was working on.

Revision history for this message
Jeff Young (jeyjey) wrote :

Tom hasn't (to my knowledge) implemented the sub-pixel alignment for this stuff. (Nor can I remember what he /did/ implement it for right now, but it wasn't general drawing.)

Revision history for this message
Tomasz Wlostowski (twlostow) wrote :

@Jeff: I haven't pushed the subpixel alignment patch yet, only correct single-pixel line scaling is available for the moment.

Tom

Changed in kicad:
assignee: nobody → Tomasz Wlostowski (twlostow)
Revision history for this message
Tomasz Wlostowski (twlostow) wrote :

PS. Is it a non-retina apple machine?

Tom

Revision history for this message
John Pateman (gasman2016) wrote :

Yes, I am using a non-retina iMac 27”. The inbuilt video card is an ATI Radeon HD 4670 256 MB.

It is quite old but runs High Sierra fine and I like the screen size.

The video is with 2x super sampling. 4x supersampling results in a black screen.

John Pateman

Sent from my iPhone

> On 2 Jan 2019, at 20:02, Tomasz Wlostowski <email address hidden> wrote:
>
> PS. Is it a non-retina apple machine?
>
> Tom
>
> --
> You received this bug notification because you are subscribed to the bug
> report.
> https://bugs.launchpad.net/bugs/1810196
>
> Title:
> Eeschema poor rendering in open GL
>
> Status in KiCad:
> Incomplete
>
> Bug description:
> Trying out a nightly build on macOS 10.13 27" iMac 12GB RAM with ATI
> Radeon HD 4670 256 MB graphics.
>
> Rendering looks OK when zoomed in but very unsatisfactory when zoomed
> out. When scrolling in both horizontal and vertical directions, the
> line width 'jumps' erratically. Text is very blocky and bitmapped. See
> attached screencast (Accelerated Canvas 2x supersampling mode - the
> best I could make it look)
>
> Have tried all the options for accelerated modes and all look very
> bitmapped at low zoom levels. There are very odd rendering artefacts
> around junction dots which make the tracks look tapered in the 'High &
> Ultra' quality modes. The 4x sampling is not supported and although
> the 2x sampling is the best, it is really poor in comparison to 5.0.1.
> The fallback canvas is unusably blocky and slow.
>
>
> Application: kicad
> Version: (5.0.1-3-g963ef8bb5), release build
> Libraries:
> wxWidgets 3.0.4
> libcurl/7.54.0 LibreSSL/2.0.20 zlib/1.2.11 nghttp2/1.24.0
> Platform: Mac OS X (Darwin 17.7.0 x86_64), 64 bit, Little endian, wxMac
> Build Info:
> wxWidgets: 3.0.4 (UTF-8,STL containers,compatible with 2.8)
> Boost: 1.67.0
> OpenCASCADE Community Edition: 6.9.1
> Curl: 7.54.0
> Compiler: Clang 10.0.0 with C++ ABI 1002
>
> Build settings:
> USE_WX_GRAPHICS_CONTEXT=ON
> USE_WX_OVERLAY=ON
> KICAD_SCRIPTING=ON
> KICAD_SCRIPTING_MODULES=ON
> KICAD_SCRIPTING_WXPYTHON=ON
> KICAD_SCRIPTING_ACTION_MENU=ON
> BUILD_GITHUB_PLUGIN=ON
> KICAD_USE_OCE=ON
> KICAD_USE_OCC=OFF
> KICAD_SPICE=ON
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/kicad/+bug/1810196/+subscriptions

Revision history for this message
Seth Hillbrand (sethh) wrote :

@John- Is this fixed for you now in 5.1?

Revision history for this message
John Pateman (gasman2016) wrote :

Yes, this is now fixed in 5.1 - however on my iMac 27” it is unfortunately now VERY slow to the point of unusability. It is very laggy - you start panning/scrolling and stop and the interface carries on for two or three seconds scrolling/panning past your region of interest. I have also upgraded a MacBookPro to 5.1 which works very well and is very smooth. The accelerated canvas has a different look and feel but I am sure I will soon get used to it.

I appreciate that my machine ( 27" iMac 12GB RAM with ATIRadeon HD 4670 256 MB graphics) is old hardware, nevertheless it runs macOS 10.13 without any problems. I presume that the poor GAL performance relates to the relatively underpowered graphics card on this machine - unfortunately there isn’t a simple upgrade path for this and I like the 27” screen.

BW

John

> On 19 Mar 2019, at 02:18, Seth Hillbrand <email address hidden> wrote:
>
> @John- Is this fixed for you now in 5.1?
>
> --
> You received this bug notification because you are subscribed to the bug
> report.
> https://bugs.launchpad.net/bugs/1810196
>
> Title:
> Eeschema poor rendering in open GL
>
> Status in KiCad:
> Incomplete
>
> Bug description:
> Trying out a nightly build on macOS 10.13 27" iMac 12GB RAM with ATI
> Radeon HD 4670 256 MB graphics.
>
> Rendering looks OK when zoomed in but very unsatisfactory when zoomed
> out. When scrolling in both horizontal and vertical directions, the
> line width 'jumps' erratically. Text is very blocky and bitmapped. See
> attached screencast (Accelerated Canvas 2x supersampling mode - the
> best I could make it look)
>
> Have tried all the options for accelerated modes and all look very
> bitmapped at low zoom levels. There are very odd rendering artefacts
> around junction dots which make the tracks look tapered in the 'High &
> Ultra' quality modes. The 4x sampling is not supported and although
> the 2x sampling is the best, it is really poor in comparison to 5.0.1.
> The fallback canvas is unusably blocky and slow.
>
>
> Application: kicad
> Version: (5.0.1-3-g963ef8bb5), release build
> Libraries:
> wxWidgets 3.0.4
> libcurl/7.54.0 LibreSSL/2.0.20 zlib/1.2.11 nghttp2/1.24.0
> Platform: Mac OS X (Darwin 17.7.0 x86_64), 64 bit, Little endian, wxMac
> Build Info:
> wxWidgets: 3.0.4 (UTF-8,STL containers,compatible with 2.8)
> Boost: 1.67.0
> OpenCASCADE Community Edition: 6.9.1
> Curl: 7.54.0
> Compiler: Clang 10.0.0 with C++ ABI 1002
>
> Build settings:
> USE_WX_GRAPHICS_CONTEXT=ON
> USE_WX_OVERLAY=ON
> KICAD_SCRIPTING=ON
> KICAD_SCRIPTING_MODULES=ON
> KICAD_SCRIPTING_WXPYTHON=ON
> KICAD_SCRIPTING_ACTION_MENU=ON
> BUILD_GITHUB_PLUGIN=ON
> KICAD_USE_OCE=ON
> KICAD_USE_OCC=OFF
> KICAD_SPICE=ON
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/kicad/+bug/1810196/+subscriptions

Revision history for this message
Seth Hillbrand (sethh) wrote :

@John- You don't mention whether you are using Accelerated or Fallback rendering. Please try both and ensure that you have Anti-aliasing turned off for greatest speed.

Changed in kicad:
status: Incomplete → Fix Released
Revision history for this message
John Pateman (gasman2016) wrote : Re: [Bug 1810196] Eeschema poor rendering in open GL
Download full text (4.6 KiB)

@Seth

OK, I have had a further test with a fresh install of 5.1.0 and a restart. This has improved things somewhat but there are still some issues.
NB These issues are only affecting my iMac 27” 12GB RAM with ATI Radeon HD 4670 256 MB graphics.

EEschema(Modern);
No antialias - Work well and smoothly but eeschema graphics are a bit blocky & bitmapped (no surprise there!)
Subpixel Antialiasing (High quality) - Weird wedge shaped junctions still persist - more marked at certain zoom levels. Rendering transition on extreme zoom is not smooth - appears quite bitmapped at low zoom levels but smooth at higher zooms. Seems to jump between these appearances seems to happen when A4 sheet is about ¾ full screen. However, responsive and usable.
Subpixel antialiasing (Ultra quality) - Appearance much as above - certainly no better. V slow and laggy although not as bad as it was previously. Not a mode I could use.
Supersampling x 2 - Very slow and laggy but looks good. Fonts appear a bit ‘heavy’ to my eye and don’t zoom entirely smoothly - i.e. appear different weights at different zoom levels. Unfortunately the lagginess makes this unusable on this machine.
Supersampling x 4 - Crashes with no error handling :(

EEschema(Fallback);
No antialias - slow and blocky
Fast antialias - less blocky but unusably slow.
High Quality - Still has blockiness at various zoom levels, certainly not smooth. Too slow to be of use but actually seems no slower than Fast antialias.,

PCBNew (ModernToolset)

All of the options are pretty much equivalent - they are all pretty responsive and detailed. There is no significant bitmapping in any mode except 'No antialias’ but this is surprisingly minor.

PCBNew (Fallback)
No antialias - Usable but has some weird horizontal artefacts
No other modes are usable - they are all too laggy and slow.

What surprises me somewhat is that the rendering of more complex views within pcbnew is better than the rendering within eeschema.

However, I think that I can use the no antialiasing or sub pixel (High Quality) modes so at least I have a usable solution on this machine. On my MacBook Pro - the Supersampling x4 mode looks very good and is smooth and responsive.

Happy to do some screenshots / casts if you need anything specific but I have to accept that this machine is a bit challenged and can’t be supported.

BW

John

> On 19 Mar 2019, at 15:36, Seth Hillbrand <email address hidden> wrote:
>
> @John- You don't mention whether you are using Accelerated or Fallback
> rendering. Please try both and ensure that you have Anti-aliasing
> turned off for greatest speed.
>
> ** Changed in: kicad
> Status: Incomplete => Fix Released
>
> --
> You received this bug notification because you are subscribed to the bug
> report.
> https://bugs.launchpad.net/bugs/1810196
>
> Title:
> Eeschema poor rendering in open GL
>
> Status in KiCad:
> Fix Released
>
> Bug description:
> Trying out a nightly build on macOS 10.13 27" iMac 12GB RAM with ATI
> Radeon HD 4670 256 MB graphics.
>
> Rendering looks OK when zoomed in but very unsatisfactory when zoomed
> out. When scrolling in both horizontal and vertical direction...

Read more...

Revision history for this message
Seth Hillbrand (sethh) wrote :

Thanks for the tests.

The speed has mostly to do with redraws. Eeschema does a few more. I'm glad that there is a usable configuration. We'll have to look at the crashing when out of memory business but that's a different bug report (already reported I think)

The wedge-shaped antialias artifacts are simply that: artifacts of the antialiasing mode. Nothing that we can do about them except to get rid of that antialiasing mode for Eeschema.

Revision history for this message
Jeff Young (jeyjey) wrote :

The “Subpixel Antialiasing” algorithms are optimized for video games and the like, not CAD packages. The wedge artefacts are a known side-effect of this. “Supersampling” will produce better results for CAD. (Which sort of begs the question: should we be offering the subpixel modes at all?)

On my MacBook Pro, I get laggy behaviour with Supersampling x4, but Supersampling x2 is faster than the old legacy canvas was and looks good enough.

I think John's iMac’s graphics card is just too underpowered for the anti-aliasing modes. From https://www.techpowerup.com/gpu-specs/radeon-hd-4670.c234: <https://www.techpowerup.com/gpu-specs/radeon-hd-4670.c234:> “The Radeon HD 4670 was an entry-level graphics card by ATI, launched in September 2008.”

Revision history for this message
Jeff Young (jeyjey) wrote : Re: [Bug 1810196] Re: Eeschema poor rendering in open GL

Ooops; cross-posted with Seth. I see he had some of the same thoughts….

Revision history for this message
Tomasz Wlostowski (twlostow) wrote :

Hi John,

Most of the issues have been already explained by Seth & John. I'm curious about the 'different weights at different zoom levels' issue you reported for the x2 supersampling mode as well as blockiness in no-AA OpenGL. Could you make some screenshots or videos and post them here?

Concerning the supersampling modes - they eat a lot of VRAM. X2 supersampling means the framebuffer is 4x larger, conversely 4x eats 16x the memory. This is something difficult to overcome.

Did you consider swapping the video card in the iMac (you can buy MXM modules that are powerful enough for smooth Kicad experience for ~60 USD)...

Tom

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.