Nowe funkcje dla programistów udostępniane przez WebAssembly

Prezentacja narzędzi dostępnych teraz w internecie dzięki WebAssembly.

Thomas Nattestad
Thomas Nattestad

WebAssembly umożliwia deweloperom tworzenie nowych, wydajnych funkcji w innych językach. W ostatnich latach deweloperzy naprawdę wykorzystywali te możliwości. W tym poście prezentujemy tylko kilka nowych narzędzi, z których możesz korzystać dzięki WebAssembly.

Narzędzia i biblioteki, których możesz używać już teraz

Bez zbędnych ceregieli przejdźmy do rzeczy :D

SQLite

Ten pełny port SQLite zapewnia lekki, wbudowany system zarządzania relacyjną bazą danych. Więcej informacji znajdziesz w tym poście na blogu, w którym prezentujemy ten niesamowity port i mówimy o tym, jak z niego korzystać.

FFmpeg.wasm

FFmpeg to bezpłatny projekt oprogramowania typu open source, który składa się z pakietu bibliotek i programów do obsługi plików i strumieni wideo, dźwięku i innych plików multimedialnych. Tutaj możesz znaleźć wersję kompilowaną w wasm (repozytorium GitHub), która umożliwia korzystanie z wszystkich tych funkcji bezpośrednio w przeglądarce.

Opis sceny uniwersalnej (USD)

Universal Scene Description (USD) to platforma do danych 3D do grafiki komputerowej, która koncentruje się na współpracy, edytowaniu bez zniszczenia i umożliwianiu wielu widoków oraz opinii na temat danych graficznych. Jest to standard branżowy obsługiwany przez takie firmy jak Pixar, Autodesk, Nvidia i wiele innych. Wsparcie dla przeglądarek jest jeszcze w początkowej fazie, ale Autodesk udostępnił już przeglądarkę USD na podstawie otwartego kodu, którą możesz zobaczyć tutaj.

CanvasKit

CanvasKit to Skia, mechanizm renderowania w Chrome i Androidzie, skompilowany bezpośrednio do WebAssembly. Dzięki niemu możesz uzyskać dostęp do interfejsu JavaScript API, który umożliwia korzystanie z praktycznie wszystkich funkcji silnika renderowania Skia. Funkcje te obejmują m.in. złożone renderowanie, kształtowanie tekstu, animację i rysowanie. Zapoznaj się z pakietem npm i przewodnikiem dla początkujących.

TensorFlow.js

TensorFlow.js przenosi możliwości TensorFlow bezpośrednio do przeglądarki za pomocą prostego interfejsu JavaScript API. W tle optymalizuje on modele zarówno na GPU, jak i na CPU (w tym za pomocą optymalizacji SIMD), aby zmaksymalizować wydajność. Możesz zapoznać się z przewodnikiem dla początkujących lub obejrzeć demo.

OpenCV

OpenCV to standard branżowy funkcji programowania, głównie do zastosowań związanych z systemami komputerowego widzenia w czasie rzeczywistym. Tutaj znajdziesz łatwy w użyciu pakiet npm, a dla użytkowników Emscripten przygotowaliśmy szczegółowe instrukcje tworzenia pełnej kompilacji. Aby dowiedzieć się, jak SIMD i wątki poprawiają wydajność tych zadań, obejrzyj tę sekcję wystąpienia na temat nowoczesnego WebAssembly na Chrome Dev Summit.

Wyspy Kokosowe

Cocos to zaawansowany i popularny silnik do tworzenia gier, który umożliwia deweloperom tworzenie gier z obsługą wielu platform, w tym internetu. Dołącza do długiej listy silników gier, które umożliwiają eksportowanie do internetu za pomocą WASM. Aby rozpocząć, otwórz edytor Cocos i postępuj zgodnie z tymi instrukcjami.

Podsumowanie

Poza tymi przykładami WebAssembly może też przyspieszyć tempo tworzenia nowych funkcji internetowych. W Chrome utworzyliśmy nawet fundusz zaawansowanych aplikacji internetowych, który może pomóc deweloperom w finansowaniu ich pracy nad ulepszaniem funkcji internetowych dostępnych dla wszystkich deweloperów.

Baner powitalny z Pexels autorstwa Ann Marie Kennon.