9 ms·
>Everyone switched from bitmaps to vectors over a decade ago and now everything is fuzzy, antialiased, scalable, flat, hard to make out. That makes no sense. B
by dkonofalski 4y ago
>Everyone switched from bitmaps to vectors over a decade ago and now everything is fuzzy, antialiased, scalable, flat, hard to make out.
That makes no sense. Bitmaps have a fixed pixel density while vectors are infinitely scalable.
- xvolter 4y agoSounds like he used to be younger and needs to see an optometrist.
- NikolaNovak 4y agoNot necessarily; I fired up some old devices last month, and the way their bitmap icons and apps and screens appeared, can only be defined as "Crips" and "Sharp". I'm not saying prettily or beneficially so! But they were definitely very stark and constrasty (let alone colourful and "stand-out-ish"!) holding them next to my modern phone or PC. I don't think "Vector vs bitmap" is necessarily the cause - more of design sensibility. When I look at the lineup of google apps on my phone which all look EXACTLY the same (3 primary colours in random rotation; I can only effectively use / distinguish them if I memorize location of icon), and then the same as slack and my son's daycare app which also use swirls of same 3 primary colours; and when I compare my Windows desktop and icons and browsers to old apps - there's a definite brutal sharpness to old stuff.
- throwanem 4y agoBecause the pixels are larger on old display devices, I suspect.
- shadowgovt 4y agoBack in the day, the fixed pixel density of the bitmaps was 1-to-1 aligned with the pixel density of the monitors. Every line was crisp and clean because there was no antialiasing across partial pixels. The world in which we now live allows for a lot more crispness when it matters (because the pixel density approaches indistinguishable-by-the-human-eye-at-viewing-distance), but with the tradeoff that UIs designed to work at whatever scale on whatever monitor with whatever DPI do a lot of aliasing, and things tend to look, sometimes, just a tad muddier. Especially when vectorized icons get drawn in a rendering pipe that passes through the graphics accelerator.
- dkarl 4y agoVectors will scale to any pixel density, but they look irritatingly fuzzy at the lower pixel densities you commonly see in large widescreen monitors. Obviously it's not an apples-to-apples comparison, but decades ago bitmapped fonts could give you crisp text on any monitor, and in 2022 I'm using a popular, >$1300, very favorably reviewed monitor, and the text is ever-so-slightly fuzzy. It's plugged into my Macbook Pro right now, and the difference in how well the text renders on the two displays is plain. I guess as soon as Apple started making laptops with 300dpi screens, it became okay to render fuzzy text on any screen that wasn't 300dpi.
- jassmith87 4y agoThe problem is you have it plugged into a macbook. Apple doesn't support subpixel anti-aliasing in any of its latest releases. Your monitor looks so fuzzy because Apple has removed the capability to make it not look so fuzzy.
- js2 4y agoContext: https://mjtsai.com/blog/2018/07/13/macos-10-14-mojave-removes-subpixel-anti-aliasing/ https://mjtsai.com/blog/2018/07/13/macos-10-14-mojave-remove...
- p1necone 4y agoThis is only part of the reason. The other reason is that Apple doesn't actually do fractional UI scaling, they only ever render into a framebuffer at whole integer multiples of an internal "native" resolution and then scale down this framebuffer to the actual monitor resolution afaik (they still render natively to this multiplied resolution - no doubled pixels or anything like that). This results in less crisp output than you would get if you actually rendered vector based UI at the exact monitor resolution or if you natively rendered bitmap art 1:1 with the monitor resolution. This approach makes sense when you're only using Apples monitors because they can optimize their internal "native" resolutions for the handful of actual native resolutions they offer, but it falls apart when you start plugging in external third party lower dpi monitors. (I believe this is also the same approach that Gnome 3 uses to do (experimental, with a toggle) non integer multiple UI scaling.)
- deleted 4y ago[deleted]
- quietbritishjim 4y agoIf you have e.g. a diagonal line from a vector graphic then it will almost always be antialiased (i.e. light grey pixels along the edge of the black pixels - or maybe there aren't even any black pixels and they're just dark grey, which might look fuzzy to some). The alternative is that you convert the vector line with a "nearest neighbour" pixel algorithm (or cleverer but fundamentally similar algorithms e.g. [1]) but then you get the aliasing artefacts that anti-aliasing is meant to avoid. For example, two parallel lines that are rendered 2.5 pixels apart might end up having a gap between them that alternates between 1 and 2 pixels along its length, which looks even worse. [1] https://en.wikipedia.org/wiki/Bresenham%27s_line_algorithm https://en.wikipedia.org/wiki/Bresenham%27s_line_algorithm With hand-designed pixel graphics, this isn't a problem because you can manually choose to draw everything an integer number of pixels apart or avoid certain constructions altogether.