Ich möchte eine Alternative zu David Postills gut durchdachter Antwort anbieten. In seiner Antwort näherte er sich der Frage nach quadratischen Pixeln, genau wie der Titel es vorschlug. In seiner Antwort machte er jedoch einen sehr aufschlussreichen Kommentar:
Einige würden argumentieren, dass sie niemals quadratisch sind ("Ein Pixel ist ein Punktmuster. Es existiert nur an einem Punkt.").
Diese Position kann tatsächlich eine ganz andere Antwort hervorrufen. Anstatt sich darauf zu konzentrieren, warum jedes Pixel ein Quadrat ist (oder nicht), kann es sich darauf konzentrieren, warum wir dazu neigen, diese Punktabtastungen in rechteckigen Gittern zu organisieren. Das war eigentlich nicht immer so!
Um dieses Argument hervorzuheben, werden wir zwischen der Behandlung eines Bildes als abstrakte Daten (wie z. B. ein Punktegitter) und deren Implementierung in Hardware hin und her gehen. Manchmal ist eine Ansicht sinnvoller als die andere.
Lassen Sie uns zunächst ganz weit zurückgehen. Die traditionelle Filmfotografie hatte überhaupt kein "Raster", was ein Grund dafür ist, dass die Bilder im Vergleich zu modernen digitalen immer so scharf aussahen. Stattdessen hatte es eine "Körnung", die eine zufällige Verteilung von Kristallen auf dem Film war. Es war ungefähr gleichförmig, aber es war keine schöne geradlinige Anordnung. Die Organisation dieser Körner ergab sich aus dem Herstellungsprozess des Films unter Verwendung chemischer Eigenschaften. Infolgedessen hatte der Film wirklich keine "Richtung". Es war nur ein zweidimensionales Spritzen von Informationen.
Schneller Vorlauf zum Fernseher, insbesondere zu den alten Scan-CRTs. CRTs brauchten etwas anderes als Fotos: Sie mussten in der Lage sein, ihren Inhalt als Daten darzustellen. Insbesondere mussten es Daten sein, die analog über eine Leitung übertragen werden konnten (in der Regel als sich kontinuierlich ändernder Satz von Spannungen). Das Foto war 2D, aber wir mussten es in eine 1D-Struktur umwandeln, damit es nur in einer Dimension (Zeit) variieren konnte. Die Lösung bestand darin, das Bild durch Linien (nicht Pixel!) Aufzuschneiden. Das Bild wurde zeilenweise codiert. Jede Zeile war ein analoger Datenstrom, keine digitale Abtastung, aber die Zeilen waren voneinander getrennt. Somit waren die Daten in vertikaler Richtung diskret, in horizontaler Richtung jedoch kontinuierlich.
Fernseher mussten diese Daten mit physischen Leuchtstoffen rendern, und ein Farbfernseher benötigte ein Raster, um sie in Pixel zu unterteilen. Jeder Fernseher kann dies in horizontaler Richtung anders machen und bietet mehr oder weniger Pixel, aber er muss die gleiche Anzahl von Zeilen haben. Theoretisch hätten sie jede zweite Pixelreihe genau so verschieben können, wie Sie es vorgeschlagen haben. In der Praxis wurde dies jedoch nicht benötigt. Sie gingen sogar noch weiter. Es wurde schnell klar, dass das menschliche Auge die Bewegung so handhabte, dass sie tatsächlich nur die Hälfte des Bildes pro Bild sendeten! In einem Frame würden sie die ungeradzahligen Zeilen senden, und im nächsten Frame würden sie die geradzahligen Zeilen senden und sie zusammenheften.
Seitdem ist das Digitalisieren dieser Interlaced-Bilder ein Trick. Wenn ich ein 480-Zeilen-Bild hätte, hätte ich aufgrund von Interlacing tatsächlich nur die Hälfte der Daten in jedem Frame. Das Ergebnis ist sehr gut sichtbar, wenn Sie versuchen, eine schnelle Bewegung auf dem Bildschirm zu beobachten: Jede Zeile ist zeitlich um ein Bild von der anderen verschoben, wodurch bei sich schnell bewegenden Objekten horizontale Streifen entstehen. Ich erwähne das, weil es ziemlich amüsant ist: Ihr Vorschlag versetzt jede zweite Zeile im Raster um ein halbes Pixel nach rechts, während Interlacing jede zweite Zeile im Raster um die Hälfte der Zeit verschiebt!
Ehrlich gesagt ist es einfacher, diese schönen rechteckigen Gitter für Dinge zu machen. Ohne technischen Grund, etwas Besseres zu tun, blieb es hängen. Dann haben wir das Computerzeitalter erreicht. Computer mussten diese Videosignale erzeugen, aber sie hatten keine analogen Fähigkeiten, um eine analoge Leitung auszuschreiben. Die Lösung war natürlich, die Daten wurden in Pixel aufgeteilt. Jetzt waren die Daten sowohl vertikal als auch horizontal diskret. Alles, was übrig blieb, war zu entscheiden, wie man das Gitter erstellt.
Es war äußerst natürlich, ein rechteckiges Gitter zu erstellen. Zuallererst tat es bereits jeder Fernseher da draußen! Zweitens ist das Zeichnen von Linien auf einem rechteckigen Raster viel einfacher als das Zeichnen auf einem sechseckigen Raster . Sie könnten sagen "aber Sie können glatte Linien in 3 Richtungen auf einem hexagonalen Gitter zeichnen, aber nur 2 in dem rechteckigen." Mit rechteckigen Gittern war es jedoch einfach, horizontale und vertikale Linien zu zeichnen. Sechseckige Gitter können nur zum Zeichnen des einen oder anderen verwendet werden. In dieser Zeit verwendeten nicht viele Menschen sechseckige Formen für ihre nicht-rechnerischen Zwecke (rechteckiges Papier, rechteckige Türen, rechteckige Häuser ...). Die Fähigkeit, horizontal und glatt zu machenVertikale Linien übertrafen den Wert, glatte Vollfarbbilder zu erstellen, bei weitem ... insbesondere, da die ersten Anzeigen einfarbig waren und es lange dauern würde, bis die Glätte der Bilder eine wichtige Rolle beim Denken spielte.
Von dort aus haben Sie einen sehr starken Präzedenzfall für ein rechteckiges Raster. Die Grafikhardware unterstützte das, was die Software tat (rechteckige Gitter), und die Software zielte auf die Hardware ab (rechteckige Gitter). Theoretisch hätte einige Hardware versucht, ein hexagonales Gitter zu erstellen, aber die Software hat es einfach nicht belohnt, und niemand wollte für doppelt so viel Hardware bezahlen!
Das spult uns bis heute vor. Wir wollen immer noch schöne glatte horizontale und vertikale Linien, aber mit High-End-Retina-Displays wird das immer einfacher. Entwickler sind jedoch immer noch darin geschult, in Bezug auf das alte rechteckige Raster zu denken. Wir sehen, dass einige neue APIs "logische Koordinaten" unterstützen und Anti-Aliasing durchführen, um den Eindruck zu erwecken, dass es einen vollständigen fortlaufenden 2D-Raum gibt, mit dem man spielen kann, anstatt mit einem Gitter aus starren 2D-Pixeln, aber es ist langsam. Möglicherweise sehen wir sechseckige Gitter.
Wir sehen sie tatsächlich, nur nicht mit Bildschirmen. Beim Drucken wird häufig ein sechseckiges Gitter verwendet. Das menschliche Auge akzeptiert das hexagonale Gitter viel schneller als ein rechteckiges Gitter. Es hat mit der Art und Weise zu tun, wie Linien "Alias" in den verschiedenen Systemen sind. Alias für hexagonale Gitter auf eine weniger harte Art und Weise, mit der das Auge besser zurechtkommt (wenn ein hexagonales Gitter eine Zeile nach oben oder unten gehen muss, können sie es reibungslos über einen diagonalen Übergang ausführen. Rechteckige Gitter müssen überspringen, wodurch ein sehr gutes Bild entsteht klare Diskontinuität)