Warum 2D-Vektorgrafiken viel komplexer sind als 3D

In letzter Zeit sind viele fantastische Forschungen zum 2D-Rendering erschienen. Peter Kobalicek und Fabian Aizerman arbeiten an Blend2D : Dies ist einer der schnellsten und genauesten CPU-Rasterisierer auf dem Markt mit innovativer JIT-Technologie. Patz Walton von Mozilla studierte nicht nur einen, sondern drei verschiedene Ansätze in Pathfinder und gipfelte in Pathfinder v3. Raf Levien baute die Computer-Pipeline mit der Technologie auf, die in einem wissenschaftlichen Artikel von Ghana mit Kollegen über Vektortexturen (2014) beschrieben wurde . Es scheint, dass eine gewisse Distanzentwicklung durch Distanzfelder gekennzeichnet ist: Adam Simmons und Sarah Frisken arbeiten hier unabhängig voneinander.

Man könnte fragen: Warum gibt es so viel Rauschen um 2D? Es kann nicht viel schwieriger sein als 3D, oder? 3D ist eine ganz andere Dimension! Hier haben wir Echtzeit-Raytracing auf der Nase mit präziser Beleuchtung, und Sie können die einfachen 2D-Grafiken mit Volltonfarben nicht beherrschen?

Für diejenigen, die sich mit den Details der modernen GPU nicht sehr gut auskennen, ist dies wirklich sehr überraschend! 2D-Grafiken weisen jedoch viele einzigartige Einschränkungen auf, die es äußerst schwierig machen. Darüber hinaus eignet es sich nicht für die Parallelisierung. Machen wir einen Spaziergang auf dem historischen Weg, der uns hierher gebracht hat.

PostScript-Start


Am Anfang war ein Plotter. Das erste Grafikgerät, das mit einem Computer interagieren kann, wurde als „ Plotter “ (Plotter) bezeichnet: ein oder mehrere Stifte, die sich auf Papier bewegen können. Alles funktioniert gemäß dem Stift-Ab-Befehl, dann bewegt sich der Zeichenkopf auf einzigartige Weise, möglicherweise entlang einer Kurve, und der Stift-Auf-Befehl wird empfangen . HP, der Hersteller einiger der frühesten Plotter, verwendete auf dem Host-Computer eine BASIC-Variante namens AGL, die die Plotterbefehle in einer anderen Sprache wie HP-GL sendete. In den 1970er Jahren wurden Grafikterminals billiger und beliebter, beginnend mit dem Tektronix 4010 . Er zeigte das Bild mit einer CRT, ließ sich aber nicht täuschen: Dies ist keine Pixelanzeige. Tektronix stammt aus der Industrie der analogen Oszilloskope, und diese Maschinen steuern den Elektronenstrahl entlang eines bestimmten Pfades . Somit hatte der Tektronix 4010 keine Pixelausgabe. Stattdessen haben Sie ihm Befehle im einfachen Grafikmodus gesendet, mit denen Linien gezeichnet werden können, aber auch im Modus "Ausfedern", "Auffedern".

Wie in vielen anderen Bereichen hat alles die Erfindung von Xerox PARC verändert. Die Forscher begannen, einen neuen Druckertyp zu entwickeln, der rechnerisch aussagekräftiger ist als ein Plotter. Dieser neue Drucker arbeitete in einer kleinen gestapelten Turing-vollständigen Programmiersprache ähnlich wie Forth und hieß ... Interpress ! Offensichtlich konnte Xerox keine würdige Anwendung für ihn finden, daher verließen die Erfinder das Schiff und gründeten ein kleines Startup namens Adobe. Sie nahmen Interpress mit, und als sie korrigiert und verbessert wurden, änderte sich dies bis zur Unkenntlichkeit, sodass sie ihm einen anderen Namen gaben: PostScript. Neben der süßen, vollständig stapelbaren Stapelsprache beschreibt das vierte Kapitel der ursprünglichen PostScript-Sprachreferenz das Imaging-Modell, das fast identisch mit modernen Programmierschnittstellen ist. Beispiel 4.1 aus dem Handbuch enthält Beispielcode, der fast zeilenweise in HTML5 <canvas> übersetzt werden kann.

/box { function box() { newpath ctx.beginPath(); 0 0 moveto ctx.moveTo(0, 0); 0 1 lineto ctx.lineTo(0, 1); 1 1 lineto ctx.lineTo(1, 1); 1 0 lineto ctx.lineTo(1, 0); closepath ctx.closePath(); } def } gsave ctx.save(); 72 72 scale ctx.scale(72, 72); box fill box(); ctx.fill(); 2 2 translate ctx.translate(2, 2); box fill box(); ctx.fill(); grestore ctx.restore(); 

Dies ist kein Zufall.

Steve Jobs von Apple traf sich während seines Besuchs bei PARC mit Interpress-Ingenieuren. Jobs hielt das Druckgeschäft für rentabel und versuchte, Adobe bei der Geburt zu kaufen. Adobe unterbreitete jedoch ein Gegenangebot und verkaufte Apple schließlich eine fünfjährige PostScript-Lizenz. Die dritte Säule in Jobs 'Plan war die Finanzierung eines kleinen Startups, Aldus, der eine WYSIWYG-Anwendung zum Erstellen von PostScript-Dokumenten erstellt hat. Es wurde PageMaker genannt. Anfang 1985 stellte Apple den ersten PostScript-kompatiblen Drucker vor, den Apple LaserWriter. Die Kombination von Macintosh, PageMaker und LaserWriter stellte die Druckindustrie sofort auf den Kopf und der neue Hit "Desktop Publishing" stärkte PostScript für seinen Platz in der Geschichte. Der Hauptkonkurrent von Hewlett-Packard erwarb schließlich auch eine PostScript-Lizenz für seine konkurrierende LaserJet-Druckerserie. Dies geschah 1991 auf Druck der Verbraucher.

PostScript wechselte langsam von einer Druckersteuerungssprache in ein Dateiformat. Intelligente Programmierer lernten, wie PostScript-Befehle an den Drucker gesendet werden - und begannen, PostScript-Dokumente manuell zu erstellen, indem sie ihren Dokumenten Diagramme, Grafiken und Zeichnungen hinzufügten, während PostScript zum Anzeigen von Grafiken verwendet wurde. Es besteht eine Nachfrage nach Grafiken außerhalb des Druckers! Adobe bemerkte dies und veröffentlichte schnell das Encapsulated PostScript- Format, das nicht mehr als einige speziell formatierte PostScript-Kommentare mit Metadaten zur Bildgröße und Einschränkungen bei der Verwendung von Druckerbefehlen wie „Seiten-Feed“ enthielt. Im selben Jahr begann Adobe mit der Entwicklung von Illustrator, einer Anwendung, bei der Künstler im Encapsulated PostScript-Format in einer praktischen Benutzeroberfläche arbeiteten. Dann könnten diese Dateien in ein Textverarbeitungsprogramm übertragen werden, das ... PostScript-Dokumente zum Senden an PostScript-Drucker erstellt. Die ganze Welt hat auf PostScript umgestellt, und Adobe könnte nicht glücklicher sein. Als Microsoft an Windows 1.0 arbeitete und eine eigene grafische API für Entwickler erstellen wollte, bestand das Hauptziel darin, sie mit vorhandenen Druckern kompatibel zu machen, damit an Drucker gesendete Grafiken so einfach wie ein Bildschirm sind. Diese API wurde schließlich als GDI veröffentlicht , die Kernkomponente, die von jedem Ingenieur während der schnell wachsenden Popularität von Windows in den 1990er Jahren verwendet wurde. Generationen von Windows-Programmierern haben begonnen, 2D-Vektorgrafiken unwissentlich mit dem PostScript-Bildmodell zu identifizieren und es mit diesem De-facto-Status zu sichern.

Das einzige große Problem bei PostScript war die vollständige Vollständigkeit: Wenn Sie die 86. Seite eines Dokuments anzeigen, müssen Sie zuerst das Skript für die Seiten 1 bis 85 ausführen. Und es kann langsam sein. Adobe erfuhr von den Nutzern von dieser Beschwerde und beschloss, ein neues Dokumentformat zu erstellen, das keine solchen Einschränkungen aufweist. Es wurde als "Portable Document Format" oder kurz "PDF" bezeichnet. Die Programmiersprache wurde herausgeworfen, aber die Grafiktechnologie blieb dieselbe. Zitat aus den PDF-Spezifikationen, Kapitel 2.1, „Bildmodell“ :

PDF basiert auf seiner Fähigkeit, das Erscheinungsbild komplexer Grafiken und Typografien zu beschreiben. Diese Funktion wird durch die Verwendung des Adobe-Bildmodells erreicht, der gleichen geräteunabhängigen Präsentation auf hoher Ebene, die auch in der PostScript-Seitenbeschreibungssprache verwendet wird.

Als das W3C-Konsortium Bewerber für die Auszeichnungssprache von 2D-Grafiken im Internet in Betracht zog, verteidigte Adobe XML- basierte PGML , die auf dem PostScript-Grafikmodell basierte:

PGML muss ein PDF / PostScript-Bildmodell enthalten, um skalierbare 2D-Grafiken zu gewährleisten, die sowohl den Anforderungen allgemeiner Benutzer als auch von Grafikprofis entsprechen.

Das konkurrierende VML- Format von Microsoft basierte auf GDI, von dem wir wissen, dass es auf PostScript basiert. Die beiden konkurrierenden Vorschläge, bei denen es sich im Wesentlichen noch um PostScript handelte, wurden zusammengeführt, sodass das W3C den SVG-Standard (Scalable Vector Graphics) übernahm, den wir heute kennen und lieben.

Auch wenn er alt ist, tun wir nicht so, als wären die auf diese Welt gebrachten PostScript-Innovationen alles andere als ein technologisches Wunder. Der LaserWriter PostScript-Drucker von Apple war doppelt so leistungsfähig wie der Macintosh, der ihn kontrollierte, nur um PostScript zu interpretieren und Vektorpfade zu Punkten auf Papier zu rastern. Dies mag übertrieben erscheinen, aber wenn Sie bereits einen modischen Drucker mit einem Laser gekauft haben , sollten Sie sich nicht über einen teuren Prozessor wundern. In seiner ersten Inkarnation hat PostScript ein ziemlich ausgeklügeltes Visualisierungsmodell mit allen Funktionen erfunden, die wir heute für selbstverständlich halten. Was ist die mächtigste und beeindruckendste Funktion? Schriftarten Zu dieser Zeit wurden Schriften mit einem Lineal und einem Winkelmesser von Hand gezeichnet und für den photochemischen Druck auf Film gegossen. Im Jahr 1977 zeigte Donald Knut der Welt, wozu sein METAFONT- System in der Lage war, das er mit dem TeX-Texteditor einführte, das jedoch keine Wurzeln schlug. Der Benutzer musste eine mathematische Beschreibung der Schriftarten mit Pinseln und Kurven haben. Die meisten Schriftentwickler wollten dies nicht lernen. Und bizarre Biegungen mit kleinen Größen wurden zu einem Chaos: Die Drucker dieser Zeit hatten keine ausreichende Auflösung, sodass die Buchstaben verschwammen und miteinander verschmolzen. PostScript hat eine neue Lösung vorgeschlagen: einen Algorithmus zum „Verknüpfen“ von Konturen mit gröberen Gittern, die von Druckern verwendet werden. Dies wird als Gitteranpassung bezeichnet. Um eine zu starke Verzerrung der Geometrie zu vermeiden, konnten die Schriftarten „Hinweise“ festlegen, welche Teile der Geometrie am wichtigsten sind und welche beibehalten werden sollten.

Das ursprüngliche Geschäftsmodell von Adobe bestand darin, diese Schriftartentechnologie an Druckerentwickler zu verkaufen und spezielle neu erstellte Schriftarten von Publishern mit zusätzlichen Hinweisen zu verkaufen. Daher verkauft Adobe weiterhin seine Versionen von Times und Futura . Dies ist übrigens möglich, weil Schriftarten oder formell „Headsets“ eines von fünf Dingen sind, die vom US-amerikanischen Urheberrecht ausdrücklich ausgeschlossen sind , da sie ursprünglich als „zu einfach oder zweckmäßig, um kreativ zu arbeiten“ bezeichnet wurden. Stattdessen ist ein digitales Programm , das die Schriftart auf dem Bildschirm wiedergibt, urheberrechtlich geschützt. Damit Benutzer keine Adobe-Schriftarten kopieren und keine eigenen hinzufügen konnten, gehörte das Schriftformat Typ 1 ursprünglich Adobe und enthielt den Code für die „Schriftartenverschlüsselung“. Nur das PostScript von Adobe konnte Schriftarten vom Typ 1 interpretieren, und nur sie implementierten eine proprietäre Hinweistechnologie, die in kleinen Größen Schärfe liefert.

Mesh Fitting wurde übrigens so beliebt, dass Microsoft und Apple, als sie es satt hatten, Adobe-Lizenzgebühren zu zahlen, eine alternative Methode für ihr alternatives TrueType- Schriftformat erfanden. Anstatt deklarative „Hinweise“ anzugeben, bietet TrueType dem Schriftautor eine vollwertige Turing-Complete-Stack-Sprache, damit der Autor alle Aspekte der Rasteranpassung steuern kann (Vermeidung von Adobe-Patenten für deklarative Hinweise). Seit Jahren tobt ein Krieg zwischen Adobe Type 1 und TrueType, und Schriftentwickler stecken in der Mitte fest, sodass Benutzer beide Formate erhalten. Am Ende hat die Branche einen Kompromiss erreicht: OpenType . Aber anstatt den Gewinner realistisch zu bestimmen, haben sie einfach beide Spezifikationen in ein Dateiformat zusammengefasst. Adobe verdiente jetzt Geld nicht mit dem Verkauf von Typ 1-Schriftarten, sondern mit Photoshop und Illustrator. Daher wurde der Verschlüsselungsteil entfernt, das Format verfeinert und CFF / Typ 2-Schriftarten eingeführt, die alle in OpenType als cff-Tabelle enthalten waren . TrueType wurde dagegen als Glyf und andere Tabellen eingefügt. Obwohl etwas hässlich, schien OpenType die Arbeit für die Benutzer zu erledigen und sie größtenteils zu verhungern: Sie benötigen lediglich die gesamte Software, um beide Arten von Schriftarten zu unterstützen, da OpenType erfordert, dass Sie beide Arten von Schriftarten unterstützen.

Natürlich müssen wir fragen: Wenn nicht PostScript, was ist dann an seiner Stelle? Weitere erwägenswerte Optionen. Das zuvor erwähnte METAFONT verwendete keine streng definierten Umrisspfade (gefüllte Pfade). Stattdessen schlug Knut in seinem Artikel „Mathematische Typografie“ in typischer Weise ein mathematisches Konzept für die Typografie vor, das „am angenehmsten“ ist. Sie geben mehrere Punkte an, und einige Algorithmen finden durch sie die richtige "angenehmste" Kurve. Sie können diese Umrisse übereinander legen: Definieren Sie einen von ihnen als „Feder“ und ziehen Sie dann eine Feder durch eine andere Linie. Knut, im Herzen ein Informatiker, führte sogar eine Rekursion ein. Sein Schüler John Hobby hat Algorithmen entwickelt und implementiert, um die „angenehmste Kurve“ zu berechnen , verschachtelte Pfade zu überlagern und solche Kurven zu rastern . Für zusätzliche Informationen zu METAFONT, Kurven und der Geschichte der Typografie im Allgemeinen empfehle ich das Buch Fonts and Encodings sowie Artikel von John Hobby .

Glücklicherweise führte das erneute Interesse an der 2D-Grafikforschung dazu, dass Knut- und Hobby-Splines nicht vollständig vergessen wurden. Obwohl sie definitiv abstrus und unkonventionell sind, haben sie kürzlich den Weg zur Apple iWork Suite gefunden und sind dort der Standard-Spline-Typ.

Dreiecke abnehmen


Ohne zu weit in den mathematischen Dschungel zu gehen, nennen wir auf hoher Ebene Ansätze wie Bezier-Kurven und Hobby-Splines implizite Kurven , da sie als mathematische Funktion angezeigt werden, die eine Kurve erzeugt. Sie sehen bei jeder Auflösung gut aus, was sich hervorragend für 2D-Bilder eignet, die für die Skalierung entwickelt wurden.

2D-Grafiken unterstützten den Impuls um diese impliziten Kurven, die bei der Modellierung von Glyphen fast obligatorisch sind. Die Hardware und Software zur Berechnung dieser Pfade in Echtzeit war teuer, aber die Druckindustrie hat einen großen Schub für Vektorgrafiken ausgeübt, und der größte Teil der vorhandenen Industrieanlagen war bereits viel teurer als ein Laserdrucker mit einem ausgefallenen Prozessor.

3D-Grafiken gingen jedoch einen völlig anderen Weg. Ein fast universeller Ansatz war von Anfang an die Verwendung von Polygonen (Polygonen), die häufig manuell beschriftet und manuell in den Computer eingegeben wurden . Dieser Ansatz war jedoch nicht universell. Das 3D-Äquivalent einer impliziten Kurve ist eine implizite Oberfläche , die aus geometrischen Grundelementen wie Kugeln, Zylindern und Würfeln besteht. Eine ideale Kugel mit unendlicher Auflösung kann durch eine einfache Gleichung dargestellt werden. Zu Beginn der Entwicklung von 3D für die Geometrie war sie Polygonen eindeutig vorzuziehen . Eines der wenigen Unternehmen, das Grafiken mit impliziten Oberflächen entwarf, war MAGI . In Kombination mit der geschickten künstlerischen Verwendung prozeduraler Texturen gewannen sie 1982 einen Disney-Vertrag für das Design von Lightbikes für den Tron-Film. Leider wurde dieser Ansatz schnell zunichte gemacht. Dank der Beschleunigung der CPU und der Untersuchung von Problemen wie „Entfernen der verborgenen Oberfläche“ wuchs die Anzahl der Dreiecke, die in der Szene angezeigt werden konnten, schnell, und bei komplexen Formen war es für Künstler viel einfacher, über Polygone und Scheitelpunkte nachzudenken, die angeklickt und gezogen werden können, anstatt Verwenden Sie Kombinationen von Würfeln und Zylindern.

Dies bedeutet nicht, dass implizite Oberflächen im Modellierungsprozess nicht verwendet wurden . Techniken wie der Catmell-Clark-Algorithmus wurden Anfang der 80er Jahre zu einem allgemein anerkannten Industriestandard, der es Künstlern ermöglichte, glatte, organische, einfache geometrische Formen zu erstellen. Obwohl der Catell-Clark-Algorithmus bis Anfang der 2000er Jahre nicht einmal als „implizite Oberfläche“ definiert wurde, die mit der Gleichung berechnet werden kann. Dann wurde es als iterativer Algorithmus betrachtet: eine Möglichkeit, Polygone in noch mehr Polygone zu unterteilen.

Dreiecke drangen in die Welt ein, gefolgt von Werkzeugen zum Erstellen von 3D-Inhalten. Neue Entwickler und Designer von Videospielen und Spezialeffekten in Filmen wurden ausschließlich in Modellierungsprogrammen mit Polygonnetzen wie Maya, 3DS Max und Softimage geschult. Als Ende der 80er Jahre „3D-Grafikbeschleuniger“ (GPUs) auf den Markt kamen, wurden sie speziell entwickelt, um vorhandene Inhalte zu beschleunigen: Dreiecke. Frühe GPU-Projekte wie NVIDIA NV1 hatten zwar nur eine eingeschränkte Hardwareunterstützung für Kurven, waren jedoch fehlerhaft und wurden schnell aus der Produktlinie entfernt.

Diese Kultur erstreckt sich hauptsächlich auf das, was wir heute sehen. Das dominierende PostScript 2D-Bildmodell begann mit einem Produkt, das Kurven in "Echtzeit" anzeigen konnte. Gleichzeitig ignorierte die 3D-Industrie Kurven, mit denen schwer zu arbeiten war, und verließ sich stattdessen auf eigenständige Lösungen, um Kurven in Dreiecke umzuwandeln.

Implizite Flächen werden zurückgegeben


Aber warum konnten implizite 2D-Kurven in den 80er Jahren auf einem Drucker in Echtzeit berechnet werden, und dieselben impliziten 3D-Kurven sind in den frühen 2000er Jahren immer noch sehr fehlerhaft? Nun, der Catell-Clark-Algorithmus ist viel komplizierter als die Bezier-Kurve. Bezier-Kurven in 3D werden als B-Splines bezeichnet und sind gut berechenbar. Es gibt jedoch den Nachteil, dass sie die Art und Weise einschränken, in der das Gitter angeschlossen ist. Oberflächen wie Catmell-Clark und NURBS ermöglichen es willkürlich verbundenen Gittern, die Fähigkeiten von Künstlern zu erweitern. Dies kann jedoch zu Polynomen von mehr als viertem Grad führen, die in der Regel keine analytische Lösung haben . Stattdessen erhalten Sie Näherungswerte basierend auf der Trennung von Polygonen, wie dies in Pixars OpenSubdiv der Fall ist . Wenn jemand jemals eine analytische Lösung findet, um Catmells Wurzeln zu finden - Clark oder NURBS -, wird Autodesk ihm viel bezahlen. Im Vergleich zu ihnen scheinen Dreiecke viel schöner zu sein: Berechnen Sie einfach drei lineare Gleichungen in einer Ebene , und Sie haben eine einfache Antwort.

... aber was ist, wenn wir keine genaue Lösung brauchen? Dies ist genau die Frage, die sich der Grafikdesigner Iñigo Quilles stellte, als er implizite Oberflächen untersuchte. Lösung? Signierte Distanzfelder (SDF) Anstatt den genauen Schnittpunkt mit der Oberfläche anzugeben, geben sie an, wie weit Sie davon entfernt sind. Ähnlich wie beim Unterschied zwischen dem analytisch berechneten Integral und dem Euler-Integral können Sie, wenn Sie eine Entfernung zum nächsten Objekt haben, um die Szene "marschieren", an einem bestimmten Punkt fragen, wie weit Sie sind, und diese Entfernung überschreiten. Solche Oberflächen haben der Branche durch die Demoszene und Gemeinschaften wie Shadertoy ein ganz neues Leben eingehaucht. Der Hack der alten MAGI-Modellierungstechnik bringt uns unglaubliche Funde wie Killes ' Surfer Boy , die mit unendlicher Präzision als implizite Oberfläche berechnet wurden. Sie müssen nicht nach den algebraischen Wurzeln von Surfer Boy suchen, sondern fühlen nur, wie die Szene verläuft.

Das Problem ist natürlich, dass nur ein Genie wie Killes einen Surfer Boy erschaffen kann. Es gibt noch keine Werkzeuge für die SDF-Geometrie. Der gesamte Code wird manuell geschrieben. Angesichts der aufregenden Wiederbelebung impliziter Oberflächen und der natürlichen Formen von Kurven besteht nun jedoch großes Interesse an dieser Technik. MediaMolecule Dreams auf PS4 ist ein Kit zur Erstellung von Inhalten, das auf einer Kombination impliziter Oberflächen basiert. Dabei werden die meisten traditionellen Grafiken zerstört und neu erstellt . Dies ist ein vielversprechender Ansatz, und die Tools sind intuitiv und interessant. Oculus Medium und unbound.io haben auch zu diesem Thema gute Forschung betrieben. Dies ist definitiv ein vielversprechender Blick darauf, wie die Zukunft von 3D-Grafiken und Tools der nächsten Generation aussehen könnte.

Einige dieser Ansätze eignen sich jedoch weniger für 2D als Sie vielleicht denken. Im Allgemeinen sind 3D-Spieleszenen in der Regel fortschrittliche Materialien und Texturen, aber nur wenige Geometrieberechnungen, wie viele Kritiker und Verkäufer fragwürdiger Produkte sofort betonen. Dies bedeutet, dass wir weniger Glättung benötigen, da Silhouetten nicht so wichtig sind. Ansätze wie 4x MSAA eignen sich möglicherweise für viele Spiele, aber für kleine Schriftarten mit Volltonfarben anstelle von 16 festen Beispielpositionen berechnen Sie lieber die genaue Fläche unter der Kurve für jedes Pixel, um so viel Auflösung zu erhalten, wie Sie möchten.

Das Drehen des Bildschirms in einem 3D-Spiel erzeugt ähnliche Effekte wie die Sakkadenunterdrückung , wenn das Gehirn ein neues Aussehen erhält. In vielen Spielen hilft dies dabei, Artefakte in Nachbearbeitungseffekten zu verbergen, z. B. temporäre Glättung , auf die Dreams und unbound.io stark angewiesen sind, um eine gute Szenenleistung zu erzielen. Umgekehrt haben wir in einer typischen 2D-Szene diese Luxusperspektive nicht. Wenn Sie also versuchen, sie zu verwenden, kochen und zittern die Glyphen und Formen mit diesen Artefakten vollständig. 2D sieht anders aus und die Erwartungen sind höher. Beim Zoomen, Schwenken und Scrollen ist Stabilität wichtig.

Keiner dieser Effekte kann auf der GPU implementiert werden, aber sie zeigen eine radikale Abweichung von „3D“ -Inhalten mit unterschiedlichen Prioritäten. Letztendlich ist das Rendern von 2D-Grafiken kompliziert, da es sich um Formen handelt - exakte Buchstaben und Symbole anstelle von Materialien und Beleuchtung, die größtenteils solide sind. Infolge der Evolution entschieden sich Grafikbeschleuniger, keine implizite Echtzeitgeometrie wie Kurven zu berechnen, sondern sich auf alles zu konzentrieren, was innerhalb dieser Kurven geschieht. Wenn PostScript nicht gewonnen hätte, hätten wir möglicherweise ein 2D-Bildmodell ohne Bezier-Kurven als Hauptanforderung für Echtzeit.Vielleicht würden in einer solchen Welt anstelle von Dreiecken die besten geometrischen Darstellungen verwendet, Tools zur Erstellung von Inhalten, die sich auf 3D-Splines konzentrieren, und GPUs, die Echtzeitkurven auf Hardwareebene unterstützen. Am Ende macht es immer Spaß zu träumen.

Source: https://habr.com/ru/post/de451394/


All Articles