Die JavaScript graphics library hat die beste Leistung?
Ich mache einige der Forschung für ein JavaScript-Projekt, wo die Leistung der Zeichnung einfache primitive (z.B. Linien) ist mit Abstand die höchste Priorität.
Antworten auf diese Frage bieten eine große Liste von JS Grafik-Bibliotheken. Während ich erkennen, dass die Wahl des Browsers hat eine größere Wirkung, als die Bibliothek, ich würde gerne wissen, ob es irgendwelche Unterschiede zwischen Ihnen, vor der Auswahl einer.
Hat jemand getan, ein performance-Vergleich zwischen diesen?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Aktualisierte Antwort (2019):
Den Kern der Beratung ist immer noch die gleiche: für maximale Leistung verwenden Sie eine dünne Wrapper oder verwenden Sie raw-browser-API ist, und vermeiden Sie auch die DOM-oder DOM-Struktur. Im Jahr 2019 bedeutet dies die Vermeidung von SVG (und jede Bibliothek drauf gebaut), weil es kann zu performance-Problemen, wenn Sie versuchen, sich rasch ändern Sie die DOM.
Leinwand ist die go-to-Lösung für high-performance web-Grafiken, die sowohl für die 2d und 3d (webgl) zusammenhängen. Flash ist tot, also nicht mehr eine option, aber selbst wenn es nicht seine Leistung wurde schließlich abgestimmt durch die native browser-API.
Ursprüngliche Antwort (2009):
Wenn man nichts tut, 3d, verwenden Sie einfach raw canvas mit excanvas wie ein explorer-fall-back. Dein Flaschenhals wird die Ausführung von javascript-Geschwindigkeit, nicht-line-rendering-Geschwindigkeit. Außer für den IE, das hängt nach unten, wenn die Szene zu Komplex, weil VML tatsächlich baut einen dom.
Wenn Sie wirklich besorgt über die Leistung, obwohl, auf jeden Fall gehen, mit Blitz und schreiben das ganze in actionscript. Sie erhalten eine um eine Größenordnung bessere performance, und mit dem flex-sdk Sie müssen noch nicht einmal alles zu kaufen. Es gibt mehrere gute Bibliotheken für 3d in flash/flex verfügbar.
Raphael-JavaScript-Bibliothek
http://raphaeljs.com
Keiner von Ihnen haben gute Leistung. Es ist 2009 und den Zustand der programmierbaren Grafik-Darstellung in web-Browsern ist wirklich deprimierend. Ich tun konnte, schneller Interaktivität, die auf einer vt125 terminal vor 25 Jahren. Wenn Sie etwas zu tun, interactive, denken über die Verwendung von Flash... Sonst würde ich gehen für einige server-Seite schwere Lösung je nach Ihren Bedürfnissen
Bis jetzt - wird verwendet, processing.js (javascript-canvas-Umsetzung der "Verarbeitung" Sprache) und/oder raphael.js (klein und handlich VML/SVG-javascript-Bibliothek).
Die Leistung der Empfehlungen hängt davon ab, Aufgabe:
hoch dynamischen, komplexen primitive (oder riesige Menge von es) - Leinwand (Pixel, low-level-API)
geringere Menge von primitiven, die hoch skalierbare, integrierte DOM - SVG/VML (vector, high-level-API)
Ich weiß, Sie sagten, browser hatte mehr Einfluss, also warum nicht halten mit den Einsatz optimierter SVG Anrufe? Dann, es "könnte" funktionieren in allen Browsern, aber...
Chrome ist robust genug, um das Rendern der 3D-Modellierung effizient:
http://www.chromeexperiments.com/detail/monster/
Wie etwa http://www.jsgl.org? Es verwendet SVG/VML.
Für basic-Zeichnung (wie Linien, Kreise, Polygone), würde ich empfehlen,Walter Zorn-Grafik-Bibliothek. Es wurde mit Leistung im Verstand und arbeitet in einer Vielzahl von Browsern.