Wie TheBuzzSaw sagte, hängt es von vielen Dingen ab, einschließlich der Implementierung der gerasterten Grafiken gegenüber den Vektorgrafiken.
Im Folgenden finden Sie einige leistungsstarke Vektorgrafiken, die mit herkömmlichen Rastermethoden gerendert werden.
Loop und Blinn zeigen, wie Sie eine quadratische Bézier-Kurve für Vektorgrafiken rendern, indem Sie ein einzelnes Dreieck rendern und anhand der Texturkoordinaten in einem Pixel-Shader feststellen, ob sich ein Pixel über oder unter der Kurve befindet:
http: //www.msr-waypoint. net / de-de / um / people / cloop / LoopBlinn05.pdf
Die Grundidee ist, dass Sie Ihre Dreiecks-Eckpositionen auf die 3 Kontrollpunktpositionen setzen und die Texturkoordinaten an jeder Ecke auf (0,0), (0,5,0) bzw. (1,1) setzen. Wenn in Ihrem Shader die interpolierte Texturkoordinate (x * xy) <0 ist, befindet sich das Pixel unterhalb der Kurve, ansonsten oberhalb der Kurve.
Sie können eine faux Implementierung auf Shadertoy hier sehen:
https://www.shadertoy.com/view/4tj3Dy
Bei der zweiten Methode von Valve werden Abstände zu einer Form in einer Textur anstelle von Pixeldaten gespeichert, sodass Vektorgrafiken mithilfe von Texturabtastungen gezeichnet werden können. Die Dekodierung ist so einfach, dass sie sogar mit einem Alphatest auf Hardware mit festen Funktionen implementiert werden kann!
http://www.valvesoftware.com/publications/2007/SIGGRAPH2007_AlphaTestedMagnification.pdf
Um Ihnen eine Vorstellung davon zu geben, wie gut die zweite Technik funktioniert, wurde dieses 1024x768-Schnurrbartbild aus einem 64x32-Quellbild mit einem einzigen Farbkanal generiert! (aka 2KB unkomprimiert)
Ich habe auch einige Dinge darüber in meinem Blog geschrieben:
http://blog.demofox.org/2014/06/30/distance-field-textures/
Hier ist ein OpenCL-Beispielcode, der zeigt, wie einfach es ist:
float alpha = read_imagef(tex3dIn, g_textureSampler, textureCoords).w;
float3 color = (alpha < 0.5f) ? (float3)(1.0f) : (float3)(0.0f);
Beide Techniken sind superschnell und verwischen die Grenze zwischen Vektor- und gerasterten Grafiken ein wenig. Sie werden mithilfe von Rastertechniken gerendert, haben jedoch Zoom- / Skalierungseigenschaften wie Vektorgrafiktechniken.