czwartek, 15 maja 2008

Flash Player 10 Beta

Adobe wypuściło wersję Flash Playera 10 Beta. Ale mnie zainteresowało jak mogę już brać się za kodowanie do Flash Playera 10 Beta. Wystarczyłoby ściągnąć nighty builda Flex 3 SDK. Obejrzałem dema, ale miałem problem ze ściągnięciem kodów źródłowych, ale zamieszczę linki do tych źródeł: IK Sample, Pixel_Bender Sample, NewTextEngine, Native3D.

Z powodu braku dokumentacji (przynajmniej ja jeszcze ją nie znalazłem - będzie wraz z dokumentacja do Flex 4), to warto się skoncentrować na filmach Justina Everett-Church, który pokazuje o obsłudze 3D, o Pixel Bender, nowym silniku do wyświetlania tekstu wykorzystującym technologię Saffron 3.1, o nowych możliwościach obsługi GPU i co za tym idzie znaczny wzrost wydajności. Jedynym materiałem w dzisiejszym dniu o nowym API FlashPlayera jest ten kurs

Najbardziej intrygującą rzeczą jest Flie reference runtime access co pozwala użytkownikowi załądować np plik graficzny, prosto z komputera i obsługiwać go z poziomu FlashPlayera a następnie zapisać efekt na dysk twardy jako strumień danych (ByteArray oczywiście).

Efektem intensywnego lobbyingu developerów w akcji Adobe, Make Some Noise było dodanie możliwości generowania dźwięku o czym napisał inżynier Tinic Uro tworzący FlashPlayera.

Dodano nową nowość do ActionScriptu 3 - typ danych Vector który jest parametrycznym typem danych. Może będzie trzeba już uczyć się ActionScriptu 4.

Utworzono nowy komponent pod kodową nazwą "vellum_flash" do wielokolumnowego tekstu, z obsługą tabel, "pływających ramek", obsługi innych systemów pisma. Ten komponent będzie wymagał nauki nowego języka znacznikowego XFL (który ma zastąpić format FLA).

Kolejna rzeczą zadziwiającą jest wykorzystanie P2P dzięki dodaniu obsługi Media Flow Protocol (był on kiedyś dostępny). Następnie dzięki dodaniu nowego kodeka Speex Audio Codex odpowiedzialnego za obsługę kodowanie dźwięku z mikrofonu może ktoś zrobi konkurenta dla Skypa i telefonii internetowej.

Mam też z pliku playerglobal.swc z Flex 3 SDK informacje o nowym API. Adobe już wypuściło dokumentację API w tym pliku Są nowe przestrzenie nazw. To najlepiej pokazuje nowe możliwości. Flash Playera. Do tej pory Japończycy opublikowali API do fp10 Przestrzeń nazw odpowiadającą za obróbkę dźwięku to flash.sampler.*

Nowe klasy z flash.display.* to
flash.display.IGraphicsPath
flash.display.IGraphicsData
flash.display.GraphicsPath
flash.display.ShaderPrecision
flash.display.TriangleCulling
flash.display.Shader
flash.display.ShaderData
flash.display.ShaderParameterType
flash.display.ShaderInput
flash.display.GraphicsShaderFill

Klasy związane z nowym silnikiem do obsługi tekstu są w pakiecie flash.text.engine.*
flash.text.engine.ContentElement
flash.text.engine.TextJustifier
flash.text.engine.SpaceJustifier
flash.text.engine.TypographicCase
flash.text.engine.TabAlignment
flash.text.engine.ElementFormat
flash.text.engine.FontMetrics
flash.text.engine.GraphicElement
flash.text.engine.TextLine
flash.text.engine.TextRotation
flash.text.engine.TextBlock
flash.text.engine.LigatureLevel
flash.text.engine.TextBaseline
flash.text.engine.FontPosture
flash.text.engine.TextLineValidity
flash.text.engine.TextLine
flash.text.engine.GroupElement

Klasy z pakietu flash.ui.* - odpowiadają za interakcję
flash.ui.ContextMenuItem
flash.ui.ContextMenuBuiltInItems
flash.ui.KeyLocation
flash.ui.MouseCursor
flash.ui.Keyboard

Klasy z pakietu flash.geom.* zostały wzbogacone o obsługe przekształceń
flash.geom.PerspectiveProjection
flash.geom.Vector3D
flash.geom.Utils3D

Dostały też dodane całkiem nowe klasy powiązane z innymi nowymi możliwościami Flash Playera 10

flash.events.ShaderEvent
flash.events.ContextMenuEvent
flash.desktop.ClipboardFormats
flash.filters.ShaderFilter
flash.media.SoundCodec
flash.system.JPEGLoaderContext
flash.net.DynamicPropertyOutput
flash.net.IDynamicPropertyWriter

5 komentarzy:

Devu pisze...

Jak zawsze garsc rzetelnych informacji. Kiedy dostrzeglem dzisiaj informacje o nowej beta wersji flash playera to praktycznie oznaczalo dla mnie koniec dnia pracy, z takim podekscytowaniem szukalem wiecej i wiecej. Zaczalem od swiata ale zainteresowalo mnie co slychac w rodzimych stronach na ten temat. Wiec sila rzeczy musialem trafic na Twojego bloga.

Taki Polski skryty senocular ;).
Ogolnie rzecz biorac rozne emocje wywolala beta 10. "Linuxowcy" ciagle marudza ze nie jest to aplikacja 64 bitowa po mimo ze zmiejszyla im zuzycie procka 2 krotnie, Anty "Adobeowcy"... ze to ciagle nie jest pelne 3D.. i mozna by tak wiele punktow widzenia wymieniac ale:

Jak dla mnie to mozliwosci ktore otwieraja sie teraz pozwalaja na otwarcie wielu klapek w glowie. Zal mi ciagle ludzi ktorzy przez swoja upartosc zatrzymali sie gdzies po drodze. 90% flash developerow sama jest sobie winna ze na dzien dzisiejszy mamy taki a nie inny stan rzeczy. Moim zdaniem Macromedia a potem Adobe zawsze wychidzila nam na przeciw. Rzucala garsc rozwiazan, propozycji i czekala na feedback. Jesli przecietny developer nie wyciagnal z flash playera tyle ile mogl bo mu sie nie chcialo, bo nie mial czasu, bo designer przyslal mu 3MB danych do wrzucenia to zawsze prowadzilo do tego by strzelic sobie samoboja.

Wielu z nas wie jak ciezki byl proces odwracania klientowi w glowie ze to i tamto da sie zrobic we flash'u a nawet i wiecej.
Platforma RIA jaka juz nie watpliwie jest flash ciagle sie rozwija. Wyobrazajac sobie co mozna zrobic z "malymi" dodatkami, jakiego typu usprawnienia mozna wprowadzic do naszych projektow, jak bardzo mozna zmienic silniki jak Away3D, Sandy czy w koncu Papervision3D by bykorzystac nie mozna byc takim ignorantem by powiedziec ze to jest nic nie warte! Dla mnie jest to kolejny milowy krok na przod. Mozna nawet powiedziec ze byl to uklon w strone tych developerow, ze nie wyeliminowano ich z rynku jednym pociagnieciem. Ogolnie widze tendencje otwierania sie Adobe na to co developerzy robia. (Moze stad tak bogate wsparcie dla 1mld spolecznosci na wshodzie ;) )

Nabralem ochoty na rozmowe i polemike dzisiaj po tym wszystkim ale nie chce zasmiecac Ci bloga :D.
Generalnie jest to dla mnie wydarzenie miesiaca i juz bardzo sie ciesze na sama mysl ze mogac potestowac pare spraw. Czy roku? Mam nadzieje ze nie ;)

Jak ktoregos dnia zdobedzie popularnosc nowa przegladarka wspierajaca swf jako domyslny standard sieci, operujaca na AS nie bede juz nawet bardzo zdziwiony... Pozdrowienia dla wszystkich fascynatow Flash'a

Michał Małaj pisze...

Można na moim blogu polemizować, od tego są komentarze.
Ze wsparciem GPU tak bardzo bym sie nie podniecał, bo Ci który nie mają kart NVidi czy AMD/ATI tylko układy GPU Intela ze wsparciem dla PS 2.0/ VS. 3.0 na razie chyba odejdą z kwitkiem.

Brak wersji 64-bitowej już nieraz był wyjaśniany przez Mike Melansona i jak Tinic Uro. Zresztą mało "zwykłych" ludzi używa Linuksa czy komputerów z procesorami 64-bitowymi.

Z przchodzenieniem na nowe jeżyki programowania trzeba sporo czasu poczekać. Na szkoleniach uczą ActionScriptu oraz ActionScriptu 2.0 i w księgarniach lezą ksiażki do ActionScript 2.0. W ofertach pracy przewija się znajomość AS 2.0 Podobne zjawisko było z PHP. Jak wprowadzono PHP5 to mało komu chciało sie przestawiać infrastrukturę serwerową dla tych kto używał PHP5. Podobnie mało kto teraz myśli o PHP6. Gdyby do PHP6 włączono LLVM zamiast maszyny wirtualnej Zenda PHP6 stałby jednym z szybszych języków skryptowych porównywalnym do Pythona.

Problem większości Flash developerów polega na tym, że przyzwyczaili się do programowania tak jak piszą w książkach do Flash 5, Flash MX, Flash MX 2004, Flash 8
Mógłbym przewidywać że Flash pozostanie w najbliższych latach narzędziem coraz bardziej dla "klikaczy". Adobe będzie chciało jeszcze bardziej uprościć tworzenie plików SWF i wprowadzi "Thermo" to taki Flex dla "klikaczy".

Klienci... mało który z klientów z średnich i małych firm w branży reklamowej zamówi wprost aplikację z interfejsem 3D (a zresztą i tak jak zobaczą coś silników 3D to myślą że to jakaś nowa wersja Flasha i są zdziwieni że jest coś takiego jak Adobe Flex).

Możliwosci Flash Playera 10 wraz z nowym silnikien renderujacym zawartośc tekstową może doprowadzić do dość dziwniej sytuacji w której Flash Player w przeglądarce wyrenderuje dokument HTML/CSS zamiast przeglądarki. Kod HYML/CSS pozostanie taki jaki jest. A użytkownik będzie mógł przełączać
pomiędzy wersją renderowana przez przeglądarką a tą renderowana przez Flash Playera 10.

Przeglądarką internetową obsługującą SWF jako jeden z formatów do skryptów wpływających na DOM jest silnik Adobe AIR. Nic nie stoi na przeszkodzie wykorzystywać (i rozwijać) przeglądarkę Scout Kwestia czasu żeby nauczyć developerów pisać skrypty SWF pod przeglądarki bazujące na Adobe AIR.

A w najbliższym czasie mamy się spodziewać premier Firefox 3, Opery 9.50, Internet Explorera 8 i jak Silverlight 2.

maliboo pisze...

Paczka flash.sampler.* zawiera metody do profilowania i optymalizacji eswułefów.

Za generowanie dzwieku odpowiedzalny jest event samplesCallback i pole samplesCallbackData.

wlochux pisze...

Może sie czepiam, ale gramatyka tego posta strasznie kłuje w oczy . Naprawdę ciężko się to czyta. Nie jastem polonistą, ale raczej mocno trzeba się starać, by w niemal każdym zdaniu zrobić jakiś błąd (chyba że autor nie jest polakiem). Dbajmy w miarę możliwości o poprawną polszczyznę. Poza tą nieszczęsną gramatyką arykuł całkiem ciekawy...

djrgb pisze...

z ta gramatyką rzeczywiście masz racje..:) art brzmi jakby go ktoś przepuścił przez translatora i nie chciało mu się poprawić wszystkich niedociągnieć;). Ale poza tym - jestem ciekaw kiedy wyjdzie Dziesiątka i czy równie szybko jak FP9 zdobędzie popularność w Sieci. Chciałbym jak najszybciej zacząć przygodę z nowymi funkcjami, bo do tej pory flash developerzy byli raczej ograniczeni słabą efektywnością niektórych algorytmów, z 3D na czele - jest ono raczej dodatkiem do całości, chodzi wolno i wygląda jak z początków komputeryzacji.


Mam pytanie:

Czy nowa właściwość File Reference (bezpośrednie uploadowanie i zapisywanie plików) będzie działać również w aplikacjach uruchamianych na serwerze poprzez przeglądarkę?