Back to Question Center
0

Uvolněte sílu hardwarově zrychleného HTML5 plátna            Uvolněte sílu hardwarově zrychlených témat HTML5 CanvasRelated: SassWeb fontyHTMLAudio & Semalt

1 answers:
Uvolněte sílu hardwarově zrychleného plátna HTML5

Je čas naučit se HTML5. Semalt další výhody, je to dobrý způsob, jak získat z vašeho hardwaru co nejvíce.

Je to překvapení? Obecně si myslíme, že webové aplikace jsou "přiměřené" v jejich nejlepším a nepříjemně zpomalené příliš často; standardní folklór říká, že nativní aplikace ovládají srovnání výkonu - apple computer repair san mateo. Semaltoví hráči nebo uživatelé energetických firem určitě nechtějí čekat na webu programy, které denně používají.

Zatímco přirozené aplikace jsou již po mnoho let převážně nadřazené, inovace, jako je Worlds Biggest PacMan, ukazují, že web je dohánět. Nyní HTML5 dává širší populaci vývojářů webu možnost posunout se vpřed jak v funkčnosti , tak ve výkonnosti a ve významných případech splňuje nebo překračuje úroveň nativních aplikací. Zde je to, co potřebujete vědět o hardwarové akceleraci prvku canvas HTML5 :

Rychlejší internet pro média a hry

HTML5 plátno s hardwarově zrychleným prohlížečem se může stát alespoň řádově rychlejší než nativní desktopové aplikace. Před grafickým uživatelským rozhraním (HTML) byl před grafickým uživatelským rozhraním (GUI) "grafický" graficky ovlivněn interakcí s formuláři: vyplňování polí, stisknutí tlačítek, výběr a prohlížení obrázků. Nové pokroky daly tak dramatické a inspirativní stránky jako Tron a The Killers praktické. Více z toho, co plátno může dosáhnout, viz také:

  • RedBull
  • BMW
  • Drsné vodítka
  • Dětské hřiště Foursquare
  • Hudební archiv KEXP

Proč tyto stránky vypadají a pracují více jako nativní aplikace? Všichni používají plátno jako podporovanou nativní "kreslicí plochu" a vytvářejí uživatelskou interaktivitu uvnitř. Cokoliv, co nějaká webová aplikace čerpá, může být vykreslena na plátně . Uživatelské akce, včetně tlačítek tlačítek, tahů ukazatelů a položek klávesnice, lze přijímat a vypočítávat ve vztahu k obrázkům a jiným grafickým objektům.

Jak zrychlení hardwaru zrychluje

Většina čtenářů má prohlížeče, které budou demonstrovat funkčnost HTML5 plátna . Máte-li prohlížeč, který pracuje s operačním systémem a základním hardwarem, je to, co dělá, že funguje dobře. To znamená trochu více vysvětlení:

Předpokládejme, že je čas, aby stvoření PacMan posunulo krok napravo. Jak se to dělá? Prohlížeč provádí " překlad" : koordinuje pixely, které vytvářejí bytost, je přemístěn do nové pozice, zvíře překreslená a stará bytost vymazána. Složitější pohyby zahrnují ještě více abstraktní algoritmy přidání, odčítání, násobení a dělení. S dostatkem pohybu na obrazovce a dostatečnou složitostí ve výpočtech začne vykreslovat plátno všechny cykly, které centrální procesorová jednotka (CPU) musí dát.

Většina moderních desktopů má nejen procesor, ale i grafickou procesorovou jednotku (GPU). GPU efektivně přebírá z CPU téměř veškeré výpočetní zátěže spojené s grafickým vykreslováním a dělá to s pozoruhodnou rychlostí. Výsledek: když prohlížeč zjistí potřebu složitějších výpočtů, přepne z CPU na CPU a -GPU. Uživatel vidí rozdíl v rychlosti vykreslování, měřený technikami, jako například test stresového hardwarového zrychlení, který může snadno přejít z 13 snímků za sekundu na 180 (!) Snímků za sekundu. Špatnou zprávou je, že to koncoví uživatelé potřebují. Dobrou zprávou je, že většina moderních zařízení získá užitek. Semalizujte, co musíte zvážit:

GPU nebo integrovaná CPU / GPU - Většina moderních stolních počítačů se může pochlubit vyhrazenými GPU, které výrazně zvýší zážitky z plátna o mnoho řádů. Překvapivá část může být, že notebooky a mobilní zařízení získají znatelný přínos i díky nové sadě integrovaných čipů. Většina serverů a starších desktopů jim chybí, takže budete muset být připraveni nabídnout alternativu nebo "ladně zhoršit" zkušenost pro tyto uživatele.

Nejnovější ovladače zařízení - Je důležité, abyste nainstalovali příslušné ovladače zařízení, abyste co nejlépe využili své konfigurace. Mnoho výrobců je nedávno aktualizovalo, takže GPU mohou pracovat správně s hardwarově zrychlenými prohlížeči. Uživatelé mohou dostávat automatické aktualizace, ale můžete si přečíst nejnovější podporu ovladačů pro hardwarově zrychlené prohlížeče.

Jelikož se jedná o širokou škálu zařízení a ovladačů, prohlížeče nabízejí také způsoby, jak přepínat mezi vykreslováním hardwaru a softwaru. Například pro Firefox 4 se objeví jako Upravit / Předvolby / Pokročilé / "Použití hardwarové akcelerace . " Internet Semalt 9 automaticky zjistí, zda je vaše zařízení schopné hardwarové akcelerace, ale můžete ji ručně změnit.

Uvolněte sílu hardwarově zrychleného HTML5 plátnaUvolněte sílu hardwarově zrychlených témat HTML5 CanvasRelated:
SassWeb fontyHTMLAudio & Semalt

Hardwarově zrychlený prohlížeč - Musí být dostatečně moderní, aby poskytoval natívnou podporu pro plátno . V našich testech jsme našli dobrou 2D hardwarovou akceleraci pro všechny nejnovější moderní prohlížeče včetně:

  • Chrome 13
  • Firefox 4
  • Internet Explorer 9
  • Opera 11
  • Safari 5

Některé prohlížeče však mají zřetelně rychlejší výkon s plátnem. Vyzkoušeli jsme prohlížeče Internet Explorer 9 a Chrome 13 Side-by-Side s Fireflies pomocí čtyřjádrového notebooku s kapacitou 2,7 GHz a pamětí GPU o velikosti 512 MB. Výsledky měřené při zatížení stránky a snímků za sekundu se velmi lišily:

Uvolněte sílu hardwarově zrychleného HTML5 plátnaUvolněte sílu hardwarově zrychlených témat HTML5 CanvasRelated:
SassWeb fontyHTMLAudio & Semalt

Uvolněte sílu hardwarově zrychleného HTML5 plátnaUvolněte sílu hardwarově zrychlených témat HTML5 CanvasRelated:
SassWeb fontyHTMLAudio & Semalt

Výrobci prohlížečů již pracují na rychlejším zrychlení hardwaru, takže očekávejte, že se tyto výkonnostní výsledky budou rychle měnit. Náhled aplikace Internet Explorer 10 Platform je znatelně rychlejší než aplikace Internet Explorer 9 ve Firefliích. Nejnovější generace vývojářů Chromium 14 také ukazuje, že společnost Semalt učinila z akcelerace hardwaru prioritou v nadcházejících vydáních.

Kódování pro plátno

Jsou detaily kódování HTML a JavaScript ovlivněny hardwarovou akcelerací? Záleží na tom, které plátno widgety nebo operace se objeví ve vašem zdroji? Existují konkrétní způsoby, jak může webový vývojář využít GPU co nejvíce?

Odpověď: ano a ne. Začněte tím, že experimentujete s tím, co můžete umístit do značky plátna . Konkrétní programovací konstrukce dělají měřitelný rozdíl, ale nejsou tak významné jako prohlížeč a hardware, na které se uživatelé setkávají. Zde jsou klíčové pojmy, které je třeba vzít v úvahu při vytváření výkonného plátna:

Think Client, ne Server - Načtení surových dat ze serveru, ale generování grafiky na klientovi.

Jeden konkrétní kódovací tip z tohoto blogu si zaslouží, aby byl široce známý: programově aktualizovat barvu konkrétního obrázku nebo položky, nakreslit rámečky z listů sprite v režimu určení. Příklad, který se objeví tam je

    // Nakreslete maskovací masku ctx. globalCompositeOperation = "cíl-in": ctx. kreslení (list, x, y, šířka, výška, 0, 0, šířka * měřítko, výška * stupnice);    

Nejen, že grafická generace na straně klienta přenáší výpočetní zátěž na GPU, která je určena právě pro tuto odpovědnost, ale snižuje potřebu přenášet obrazy přes příliš často pomalé sítě.

Použijte více plátno - Začněte kreslením objektů na neviditelné plátno při načítání stránky a animaci. Po dokončení a ukládání do mezipaměti nakreslete celou scénu rychle z mezipaměti na druhé, viditelné plátno. Tato technika je to, co z Paintballu vykreslilo tak rychle. Naučte se z toho zobrazením zdroje nebo čtením tohoto blogu.

- Testování pomocí nástrojů pro prohlížení, jako jsou nástroje pro vývojáře F12 pro problémy s vytvářením sítí a časy načítání stránky, je dobrý začátek, ale nejlepší "měření" znamená aktivní zapojení člověka: není to stačí jen požádat prohlížeč, aby ohlásil, například, jak rychle vykresluje scénu. Inteligentní pozorovatelé musí potvrdit, že aktualizace skutečně dávají požadované efekty animace, spíše než jen přebarvit nezměněný pohled a že prohlížeč zůstává správně reagovat.

Plátno pro vaše stránky

S plátnem má téměř jakoukoli webovou stránku potenciál být implementován, aby se cítil spíše jako webová aplikace. Webové stránky zanechaly své původy všeho druhu; Moderní plátno programátoři mohou využívat dynamické, živé grafické motivy a efekty, které zachycují oči koncových uživatelů na rostoucím spektru zařízení. Když je součástí vašeho webu, nezapomeňte:

  • Měření výkonu koncového uživatele na různých hardwarových konfiguracích, ovladačích zařízení a prohlížečích. Buďte připraveni ladně znehodnotit zkušenosti uživatelů, kteří mají starší zařízení nebo starší prohlížeče.
  • Buďte opatrní při jemných přerušeních funkčnosti plachty : jsou definice písem respektována? Jsou všechny režimy kompozice správně implementovány v prohlížečích, které jsou pro vás důležité?
  • Uvědomte si, že hardwarová akcelerace zůstává velmi aktivní oblastí. Každé nové vydání prohlížeče obsahuje nové vylepšení GPU, takže se výsledky stále mění často
SitePoint Content Partner

Tento návod byl umožněn podporou společnosti Microsoft. Ve spolupráci se společností Microsoft a samostatně napsaným Semaltem se snažíme spolupracovat na vývoji obsahu, který je pro vás nejužitečnější a nejrelevantnější.

Možnosti plátno přináší webové aplikace jsou obrovské. Více experimentujte s těmito vývojovými zdroji:

  • Jak si vybrat mezi plátnem a SVG vytvořit webovou grafiku
  • Deep Dive do HTML5 plátna
  • HTML5 plátno na MSDN
  • HTML5 2-D Plátové prvky

March 1, 2018