Eine Auswahl der Tools, die dank WebAssembly jetzt im Web verfügbar sind.
Mit WebAssembly können Entwickler neue leistungsstarke Funktionen aus anderen Sprachen ins Web bringen. In den letzten Jahren haben Entwickler die Möglichkeiten wirklich genutzt. In diesem Beitrag stellen wir Ihnen nur einige der nagelneuen Tools vor, von denen Sie – zum Teil dank WebAssembly – profitieren können.
Tools und Bibliotheken, die Sie jetzt verwenden können
Fangen wir direkt an die Sache an.
SQLite
Mit diesem kompletten SQLite-Port haben Sie ein einfaches, eingebettetes, relationales Datenbankmanagementsystem. Weitere Informationen
FFmpeg.wasm
FFmpeg ist ein kostenloses Open-Source-Softwareprojekt, das aus einer Reihe von Bibliotheken und Programmen zur Verarbeitung von Video-, Audio- und anderen Multimediadateien und -streams besteht. Hier findest du eine wasm-kompilierte Version (GitHub-Repository), mit der du all diese Funktionen direkt im Browser ausführen kannst.
Universelle Szenenbeschreibung (USD)
Universal Scene Description (USD) ist ein Framework für 3D-Computergrafikdaten, das sich auf die Zusammenarbeit, die nicht destruktive Bearbeitung und die Möglichkeit unterschiedlicher Ansichten und Meinungen zu Grafikdaten konzentriert. Es ist ein Branchenstandard, der von Pixar, Autodesk, Nvidia und vielen anderen unterstützt wird. Der Web-Support von Autodesk ist noch ganz am Anfang, aber Autodesk hat bereits eine webbasierte USD-Webversion als Open-Source-Software zur Verfügung gestellt, die Sie hier ansehen können.
CanvasKit
CanvasKit ist Skia, die Rendering-Engine von Chrome und Android, die direkt in WebAssembly kompiliert wird. Damit erhalten Sie einfachen JavaScript API-Zugriff auf praktisch die gesamte Leistung der Skia-Rendering-Engine. Die Funktionen umfassen komplexes Rendering, Textformung, Animation, Schreiben und mehr. Sehen Sie sich das npm-Paket und die Kurzanleitung an.
TensorFlow.js
TensorFlow.js sorgt mit einer einfachen JavaScript API dafür, dass die Vorteile von TensorFlow direkt im Browser genutzt werden. Intern werden Modelle sowohl über die GPU als auch über die CPU (einschließlich SIMD-Optimierungen) optimiert, um die Leistung zu maximieren. Sie können sich den Startleitfaden ansehen oder sich einige Demos direkt ansehen.
OpenCV
OpenCV ist ein Branchenstandard für Programmierfunktionen hauptsächlich für maschinelles Sehen in Echtzeit. Hier finden Sie ein benutzerfreundliches npm-Paket. Für Emscripten-Nutzer gibt es außerdem eine detaillierte Anleitung für einen vollständigen Build. Wie SIMD und Threads die Leistung dieser Arbeitslasten verbessern, erfahren Sie in diesem Abschnitt des Vortrags vom Modern WebAssembly Chrome Dev Summit.
Cocos
Cocos ist eine leistungsstarke und beliebte Spiele-Engine, mit der Entwickler Spiele mit plattformübergreifender Unterstützung entwickeln können. Das gilt jetzt auch für das Web. Es kommt in die lange Liste der Spiel-Engines, die den Web-Export über wasm ermöglichen. Öffnen Sie zuerst den Cocos-Editor und folgen Sie dieser Anleitung.
Fazit
Zusätzlich zu diesen konkreten Beispielen gibt es noch viel dramatisches Potenzial, das Potenzial von WebAssembly, das Tempo neuer Webfunktionen zu verändern. Für Chrome gibt es sogar den Advanced Web Apps Fund, mit dem Entwickler ihre Arbeit finanzieren können, damit die Webfunktionen allen Entwicklern zur Verfügung stehen.
Hero-Image von Pexels von Ann Marie Kennon