Later, someone was discussing video game accessibility on Twitter. I asked about this case, and in this thread on Twitter, Ian Hamilton replied:
One thing you definitely can't do is assume that popular games do a good job! Font size is pretty awful across the board. What your playtester was saying was that Pokémon and hamtaro are too small.So I did the math myself.
you can't multiply up like that, because the ratio between screen size and viewing distance is different
In the web formatting standard CSS, the unit px doesn't necessarily mean one hardware pixel. It's the round number of hardware pixels closest to 1/2688 of the distance from the eye to the screen. This approximates the length of a pixel on a desktop computer before high-density displays became common, or 96 dpi at 28 inches away. This 2688px per radian is slightly coarser than the nominal visual acuity of the eye: one pixel per arc minute, or 180*60/pi = 3438 pixels per radian. This is why a typical PC display, with one pixel per px, isn't considered a Retina display.
W3C's article "em, px, pt, cm, in…" serves as an accessible introduction to CSS units:
To get an idea of the appearance of a px, imagine a CRT computer monitor from the 1990s: the smallest dot it can display measures about 1/100th of an inch (0.25mm) or a little more. The px unit got its name from those screen pixels.From the official spec, "CSS Values and Units Module Level 3" section "Reference Pixel":
The reference pixel is the visual angle of one pixel on a device with a pixel density of 96dpi and a distance from the reader of an arm's length. For a nominal arm's length of 28 inches, the visual angle is therefore about 0.0213 degrees. For reading at arm's length, 1px thus corresponds to about 0.26 mm (1/96 inch).So how many CSS px are in the display of a Game Boy compact video game system? When I hold a handheld, my wrists rest on my ribcage, which is a lot closer than arm's length. I measured myself as holding my Game Boy 270 mm (10.6") away from my eyes. Its screen is roughly 64 mm (2.5") diagonally, and by the Pythagorean theorem, that's (160^2+144^2)^.5 = 215 hardware pixels. But at 270 mm away, a 64 mm screen subtends 64/270*2688 = 637px. Thus in CSS terms, 1px equals one-third of the length of a hardware pixel, implying a 3x zoom to 480x432 on a desktop monitor. This would make the 8 pixel tall font on the Game Boy equivalent to a 24px tall web font.
So I suspect that the observation "8 pixels is not tall enough" must have some other cause. I can make a couple guesses:
- The shadow effect, where the LCD blocks light on both the way in and the way out. The distance from the plane of the liquid crystal to the reflector combines with the oblique angle of incident light to cause parallax (misalignment) between inbound and outbound pixel planes. Apparent on Game Boy (DMG) and Game Boy Pocket (MGB); absent on Game Boy Color (CGB) and later.
- Presbyopia, or farsightedness (inability to focus on close-up things) due to hardening of the lens in an older person's eye. This is the sort of condition for which reading glasses or bifocals compensate.