niedziela, maja 02, 2010

Cieniowanie Gourauda w JavaScript part 2 - przyśpieszamy :-)

[Update podmieniłem demko, obecne działa na Chrome z prędkością od 90 do 100-110 klatek na sekundę :-)]Byłem zachwycony wynikiem z dzisiejszej nocy czyli 4-5 klatkami na sekundę, ale właśnie przed chwilą przyśpieszyłem do 30-40 klatek na sekundę :-) na co dowód na filmie :-) [tak naprawdę rzeczywista prędkość to około 50 klatek na sekundę, ale w trakcie nagrywania spadła do tych 30-40 klatek]
Wcześniej nie znając zbytnio obiektu Canvas z HTML5 używałem metody fillRect(int,int,int,int), która rysowała prostokąt o zadanych wymiarach w zadanej lokalizacji. Chwila profilowania tego kodu w Chrome pokazała, że to rysowanie oraz ustawianie koloru zabierają najwięcej czasu z całego procesu rysowania.Teraz zamiast rysować przy pomocy prymitywów tworzę obrazki jako pixele tak jak to logika nakazuje ;-)Udało mi się nawet obecną wersję uruchomić na moim G1 gdzie prędkość renderowania to około 0.5 klatki na sekundę :-)
Ze złych informacji, tym razem Opera 10.50 w ogóle zrezygnowała choć nie chciała powiedzieć co jej się nie podoba.Tutaj możecie zobaczyć jak szybko to działa u was :-) [u mnie na Chrome jest to zwykle około 50 klatek na sekundę, na Firefoksie 20-25 klatek na sekundę]
Dla tych co z RSSa/Buzza tutaj link bezpośredni do demka :-)Nadal jestem otwarty na głosy zachwytu ;-)


Podobne postybeta
Cieniowanie Gourauda w JavaScript :-)
Chrome, Firefox, IE9 preview i cieniowanie Gouraud'em w JavaScript
Nie taka Java wolna jak ją opisują...
HD
Lubię enumy

7 komentarzy:

  1. Lepiej! WOW (głos zachwytu!)!

    OdpowiedzUsuń
  2. Safari 4.0.5 (Bo pod FF mam za dużo okienek otwarte) mam wyniki rzędu 65fps

    OdpowiedzUsuń
  3. Chrome na win 7 - 125 klatek/s

    OdpowiedzUsuń
  4. Chrome dev. na win7 - 140 kl/s

    OdpowiedzUsuń
  5. 110fps w Chromium 6.0.414.0~svn20100524r48010 pod Kubuntu 10.04. Pewnie byłoby więcej gdyby procek był szybszy - Jakieś C2D 2GHz w laptopie.

    OdpowiedzUsuń