GNOME 42 Beta Released - Begins The UI / Feature / API Freeze, More Apps Ported To GTK4

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • yump
    replied
    Originally posted by mppix View Post
    Anyhow, complex font aliasing is on its way out on all platforms.
    Only the platforms of evil, Darth. 😜

    Also, one of those platforms is controlled by a hardware company that can simply Not Make anything with a low PPI display, and one of them 99% only runs on phones, which have extremely high PPI, an enormously high ratio of screen resolution to GPU power, and wide usage of pentile subpixel layouts.

    It triples/quadruples the effective pixels to manage.
    I think it only triples the effective alpha channels, and only then if you want total correctness on all foreground/background color pairs. So you go from 4 channels to 6. If you support colored text (emoji, etc.), you have to support 3 different color channels anyway.

    And it seems like GTK4 should be able to get subpixel AA essentially for free if they rendered their subpixel-positioned glyph cache at 1/3 px offsets instead of 1/4 px offsets. If the app knows which display it's drawn on, which it must to handle scaling, then that would even let you correctly handle monitors that are rotated or have different subpixel order.

    And people will use 8k+ multi-monitor setups during GTK4's life.
    First, are you or the Gnome project buying? If so, I will gladly post a bitcoin address. Including family, I have five displays to replace, two of which must be laptops.

    Second, people will also use <=1080p setups during GTK4's life. GTK4 is live now. 1080p is still at 67% share on the Steam hardware survey. And that's biased toward techies who buy new computers to run games on. By Mozilla's numbers, 1080p is rarer, but only because of even lower resolutions. 4k has less than half the userbase of 1280x800, has recently eclipsed the bizarre 1360x768, and is crawling along around %1 share. #OccupyGTK4

    Third the general direction the market is going for 4K desktop monitors is stuck around 150 PPI, 'til death do us part. It seems like most people don't want to eat the cost in GPU power or display cable bandwidth -- or literal cost -- unless they can get more screen real estate out of it. Dell made one 24" 4K display, but they discontinued it, and it didn't support modern features like refresh rates above 60 Hz or VRR. High-PPI is going to be laptop and smartphone only for the foreseeable future. Likely even restricted to high-end laptops, or budget ones that make substantial sacrifices elsewhere.

    Originally posted by mppix View Post
    I actually prefer grayscale AA (I cannot stand the rainbow effects of subpixel AA).
    There are no rainbow effects of properly-functioning subpixel AA. Proper functioning means subpixel order configured to match your monitor(s), and freetype's lcdfilter set to lcdlight or lcddefault, which unfortunately is often not the default. Alternately, Freetype Harmony, but for some reason most distros have that turned off in their build options. Rainbow effects are caused by the lcddnone or lcdlegacy filters, which allow above-nyquist-limit frequencies into the output image. That is, glyphs with stems that are too narrow.

    The usual explanation of subpixel AA -- that it emulates 3x horizontal resolution -- is wrong, and trying to do that does create color fringes. What subpixel AA really does is correct for a predictable convergence error of the monitor. You are rendering each color plane shifted by 1/3 px or a little less, to compensate for the fact that the they are shifted the other direction by the same amount on the physical display.

    Leave a comment:


  • ⲣⲂaggins
    replied
    Originally posted by mppix View Post
    Why should the rasterizer be faster? What about memory and communication bandwidths of 4x8k screens or also 2x16k running at 60Hz or higher? GTK4 will probably have to deal with it at some point.
    Sorry, I was referring to (any) GPU rasteriser. Anyway, with both approaches to glyph rendering, the bandwidth issues are the same, more or less negligible, and also independent of the screen size.

    Leave a comment:


  • mppix
    replied
    Originally posted by ⲣⲂaggins View Post
    That's what Pathfinder says about itself. The reality is that it's more or less ceased development. So indeed not all of its functionality is there - not all SVG filters, for example. But the basic rasteriser needed for font rendering should be all there, and perfectly usable in a DE.

    That's what Pathfinder says about itself. The reality is that it's more or less ceased development. So indeed not all of its functionality is there - not all SVG filters, for example. But the basic rasteriser needed for font rendering should be all there, and perfectly usable in a DE.
    I find this project interesting and hope it gets its fair share of use. Thanks for bringing it up.


    Originally posted by ⲣⲂaggins View Post
    Sure, but they don't use its hinting capabilities. ...
    Well, they don't use hinting because they use subpixel positioning.

    Originally posted by ⲣⲂaggins View Post
    Sure, but they don't use its hinting capabilities. For them, the fact that GTK might want to sometimes display text rotated at angle (which precludes the use of hinting) means that they can never use hinting. Even though it would have massive benefits for 99.9% of the text you actually see, and they could certainly find a way to active it only for pixel-grid aligned text if they wanted to. it sounds like a case of developers being so focused on the cool feature they're working on (scenegraphs, animations, transforms) that they forget what it's actually all about (legible text).
    Is this really about hinting? I'm under the impression that it is more abotu subpixel AA.
    For what it is worth, I prefer the new rendering as I cannot stand the rainbow artefacts.
    Anyhow, new/better fonts would do wonders.

    Originally posted by ⲣⲂaggins View Post
    Not a problem if your rasteriser is more than 3/4 times as fast, and also well worth the extra time.
    Why should the rasterizer be faster? What about memory and communication bandwidths of 4x8k screens or also 2x16k running at 60Hz or higher? GTK4 will probably have to deal with it at some point.
    Last edited by mppix; 23 February 2022, 10:26 PM.

    Leave a comment:


  • ⲣⲂaggins
    replied
    Originally posted by openminded
    "GTK4 supports rotating text" - oh I can only guess the ginormous amount of users who rotate their text on a daily basis and can't live without their simple stupid file browser rotated...
    Originally posted by mppix View Post
    Both statements should hold up reasonably well.
    For the latter, people tend to rotate screens quite regularly for all sorts of reasons (openminded?)
    You have confused rotating the screen (by increments of 90 degrees) with arbitrary rotation of text.

    Leave a comment:


  • ⲣⲂaggins
    replied
    Originally posted by user1
    I really hope subpixel AA won't be dropped in Gnome.
    Originally posted by mppix View Post
    GTK3 and GTK4 rendering is not the same. GTK4 with cairo >1.17.4 does subpixel positioning.
    Subpixel positioning != subpixel AA.

    Leave a comment:


  • ⲣⲂaggins
    replied
    Originally posted by mppix View Post
    Pathfinder intends to do what FreeType does, just on GPU. It is under heavy development and nowhere near ready for use in a DE.
    That's what Pathfinder says about itself. The reality is that it's more or less ceased development. So indeed not all of its functionality is there - not all SVG filters, for example. But the basic rasteriser needed for font rendering should be all there, and perfectly usable in a DE.

    Sure, but they don't use its hinting capabilities. For them, the fact that GTK might want to sometimes display text rotated at angle (which precludes the use of hinting) means that they can never use hinting. Even though it would have massive benefits for 99.9% of the text you actually see, and they could certainly find a way to active it only for pixel-grid aligned text if they wanted to. it sounds like a case of developers being so focused on the cool feature they're working on (scenegraphs, animations, transforms) that they forget what it's actually all about (legible text).

    It triples/quadruples the effective pixels to manage.
    Not a problem if your rasteriser is more than 3/4 times as fast, and also well worth the extra time.

    Leave a comment:


  • openminded
    replied
    Originally posted by mppix View Post

    Both statements should hold up reasonably well.
    For the latter, people tend to rotate screens quite regularly for all sorts of reasons (openminded?)
    Yeah maybe too openminded for you to understand...
    Fun fact: the amount of monitors using regular landscape position is way bigger than those with vertical orientation. That's out of blue right?
    What you're defending is "let's break well-established setups used by most regular folks to support rare cases used by minor number of professionals because we're too lazy to do it properly instead. Apple does it, we want be like Apple, we can't though but we want it so much let's pretend we're Apple".

    Leave a comment:


  • mppix
    replied
    Originally posted by user1 View Post
    I have a standard 1080p display, so I just tried using both Grayscale and Subpixel font AA and OMG.. The difference is night and day. I really hope subpixel AA won't be dropped in Gnome.
    GTK3 and GTK4 rendering is not the same. GTK4 with cairo >1.17.4 does subpixel positioning.

    There is some drama to this


    I actually prefer grayscale AA (I cannot stand the rainbow effects of subpixel AA).

    However, Gnome would need a new font family (even if it is IBM PLEX). The old(er) fonts just don't work well and that contributes to this discussion quite a bit.

    Leave a comment:


  • mppix
    replied
    Originally posted by openminded View Post
    Some points there are even more brilliant.
    * "Most modern monitors are high DPI" (no prooflink of course)
    * "GTK4 supports rotating text" - oh I can only guess the ginormous amount of users who rotate their text on a daily basis and can't live without their simple stupid file browser rotated...
    Both statements should hold up reasonably well.
    For the latter, people tend to rotate screens quite regularly for all sorts of reasons (openminded?)
    Last edited by mppix; 23 February 2022, 07:41 PM.

    Leave a comment:


  • mppix
    replied
    Originally posted by ⲣⲂaggins View Post
    To add more detail now that I have time, in case the above comes off as an attempt at trolling:
    • The GTK4 developers committed to rendering text using a texture atlas approach.
    • That approach doesn't work well with subpixel rendering.
    • They then claimed that the problem was with subpixel rendering, not with their approach.
    What's the problem in bullet point 2?

    It's only too complex because they committed to a bad design in the first place: glyph caching. GPU rasterisers like Pathfinder are basically made for this problem. They can render text at any transform, even perspective transforms, all with subpixel antialiasing done correctly, i.e. in screen space, not than in glyph cache space where the purported MR tries to do it, and is consequently rejected. This is why that MR is going nowhere.

    Not only does GTK4 do a worse job that Pathfinder at supporting arbitrary transforms, they also do a worse job than FreeType at supporting pixel-grid aligned text. FreeType has a sophisticated hinting engine, which GTK4 just rounds to a 1/4 of a pixel, because they only cache 1/4 subpixel positions. All this is despite the fact that almost all the text users will actually be reading is pixel-grid aligned.

    In a nutshell, they reinvented the wheel, twice, badly.

    All of the rebuttals against subpixel antialiasing in that thread essentially fall into a few categories, all of them invalid:
    • Google Chrome developer syndrome - throwing resources at a problem to make it go away, in this case HiDPI screens. (1, 2)
    • Apple and/or Google's don't do it any more! (1, 9, 10)
    • Design limitations. (1, 3, 4, 5, 6, 8)
    Point 7 is the exception. It fall into the category of "we'd have to add a setting for that".
    I don't know if I understand this.
    Pathfinder intends to do what FreeType does, just on GPU. It is under heavy development and nowhere near ready for use in a DE.
    Gnome _uses_ FreeType. https://developer.gnome.org/document...libraries.html

    Anyhow, complex font aliasing is on its way out on all platforms.
    It triples/quadruples the effective pixels to manage. And people will use 8k+ multi-monitor setups during GTK4's life.

    Leave a comment:

Working...
X