Mobilne akceleratory grafiki
|
|
- Dominik Socha
- 9 lat temu
- Przeglądów:
Transkrypt
1 Mobilne akceleratory grafiki Kamil Trzciński Zakład Grafiki Komputerowej Instytut Informatyki Politechniki Warszawskiej 29 stycznia 2013 Streszczenie W ostatnim czasie obserwujemy ogromny wzrost znaczenia branży mobilnej. Telefony komórkowe oraz tablety powoli zastępują komputery i konsole w szeroko pojętej wirtualnej rozrywce. Skutkiem tego jest niezwykle dynamiczny rozwój mobilnych akceleratorów grafiki odpowiedzialnych za wizualizację wirtualnych światów gier i aplikacji. Dynamizm wzrostu wydajności mobilnych kart graficznych jest wyższy niż ten obserwowany dla innych segmentów rynku. Firma nvidia przewiduje, że wydajność urządzeń mobilnych w 2014 roku zrówna się z wydajnością obecnej generacji konsol. Celem tego artykułu jest zaznajomienie czytelnika z obecnymi oraz przyszłymi technologiami mobilnymi. Dokument przedstawia możliwości oraz ograniczenia obecnie wykorzystywanych API programistycznych, podstawowe problemy z obecnymi technologiami oraz zarysowuje prawdopodobny kierunku rozwoju mobilnej grafiki. 1 Wstęp Od kilku lat obserwujemy bardzo dużą popularyzację smartfonów (ang. smartphone). Przenośnych urządzeń telefonicznych łączących w sobie funkcję telefonu komórkowego i komputera kieszonkowego (PDA). Bardzo często zastępują one laptopa, komputer PC a nawet konsolę do gier. Potrafią wyświetlać pełne strony Internetowe jak i zoptymalizowane wersje mobilne. Pozwalają na szybki dostęp do Internetu poprzez WiFi lub szerokopasmową sieć komórkową. Jednakże największy wpływ na popularyzację smartfonów miały sklepy z mobilnymi aplikacjami. Urządzenia mobilne zbudowane są obecnie na bazie wielordzeniowych procesorów, wydajnych akceleratorów grafiki, wielomegapikselowych aparatów fotograficznych, gigabajtowych wbudowanych kart pamięci, megapikselowej rozdzielczosći ekranu obsługującego wielodotyk. 1
2 Rysunek 1: Obrazek przedstawia dochód sklepów z mobilnymi aplikacjami http: // en. wikipedia. org/ wiki/ File: Global_ Mobile_ Applications_ Store_ Revenue. svg Te i inne czynniki doprowadziły do eksplozji popularności na rynku gier mobilnych. Najnowsze dane pokazują, że wartość tego segmentu rynku w 2012 będzie około 7,8 miliarda $ a w 2016 osiągnie 18,3 miliarda $ 1. Większość przychodów pochodzi lub będzie pochodzić ze sprzedaży gier oraz dodatków. Obecnie użytkownicy tabletów spędzają 67% czasu na graniu w mobilne gry. W przypadku telefonów jest to 39% 2. Przewiduje się powolną erozję popularności konsol do gier na rzecz właśnie urządzeń mobilnych, smartfonów i tabletów. Zapotrzebowanie na pełniejsze doznania wymusza nieprzerwany rozwój tej branży. Wynika to ze stałego wzrostu wielkości urządzeń (powoli się stabilizującego), zwiększania rozdzielczości matryc, jakości aparatów oraz wymagań gier i aplikacji mobile-apps-upending-video-game-industry/unpw0t2zbnylj83iz6uhjk/story.html 2
3 Rysunek 2: Gra Need For Speed: Most Wanted dla systemu Android 2 Wiodące platformy mobilne Obecnie używanymi mobilnymi systemami operacyjnymi są Google Android, Apple ios, BlackBerry OS, Samsung Bada, Microsoft Windows Phone oraz inne platformy oparte o system Linux. Rozdział ten ma na celu przedstawienie najpopularniejszych. 2.1 ios Jest to system operacyjny Apple Inc. dla urządzeń mobilnych iphone, ipod touch oraz ipad. Obecna nazwa funkcjonuje od 7 czerwca 2010, wcześniej system był znany jako iphone OS. Bazuje on na systemie operacyjnym Mac OS X 10.5 i tym samym jądrze Darwin. ios obsługuje dwa API graficzne: Core Graphics / Quartz 2D - jest to API dedykowane urządzeniom Apple, będące częścią Core Graphics. Wykorzystywane głównie do akceleracji interfejsu użytkownika. OpenGL ES - jest to mobilna wersja wieloplatformowej biblioteki graficznej OpenGL. Biblioteka jest interfejsem programowania aplikacji. Wersja 1.1 jest obsługiwana na wszystkich urządzeniach Apple, natomiast nowsza 2.0 dopiero od ipada, ipada Mini, iphone 3GS oraz ipod Tocuh trzeciej generacji. 3
4 iphone oraz ipad są obecnie najpopularniejszymi mobilnymi platformami dla gier. Większość najnowszych produkcji powstaje właśnie na system ios. Po części wynika to z relatywnie małego piractwa oraz stosunkowo dużego zysku z publikowanych w sklepie aplikacji. 2.2 Android Android jest to system operacyjny oparty na jądrze Linuxa, zaprojektowany dla dotykowych urządzeń mobilnych tj.: smartfony lub mobilne komputery. Kod źródłowy systemu jest otwarty i udostępniany przez Google na licencji Apache. Otwartosć systemu pozwala na dowolną modyfikację i dystrybucję urządzeń opartych o Androida. Te i inne czynniki pozwoliły stać się Androidowi najczęściej wykorzystywaną platformą mobilną. System operacyjny obsługuję rendering grafiki 2D i 3D. Wykorzystuje w tym celu OpenGL ES. OpenGL jest specyfikacją uniwersalnego API do generowania grafiki. ES jest natomiast rozszerzeniem specyfikacji przystosowanej do wykorzystania na urządzeniach mobilnych. OpenGL ES 1.0 oraz 1.1 jest obsługiwany od pierwszej wersji Androida. OpenGL ES 2.0 obsługiwany jest od Android Windows Phone Jest to najmłodsza z opisywanych w niniejszym artykule platform. Windows Phone jest platformą mobilną zaprojektowaną przez Microsoft. Jest następcą Windows Mobile, jednakże niekompatybilnym z tą platformą. System operacyjny wykorzystuje innowacyjny interfejs Modern i jest kierowany na rynek konsumencki, a nie tak jak poprzednio rynek biznesowy. Najnowsza odsłona systemu, to Windows Phone 8. Wersja ta zastępuje poprzednią architekturę opartą na Windows CE na Windows NT. Wiele komponentów jest współdzielonych z systemem Windows 8, co ułatwia przenoszenie aplikacji między tymi systemami. Aplikacje oraz gry dla Windows Phone są pisane z wykorzystaniem XNA, zoptymalizowanej wersji Silverlight, głównie w języku C#. Windows Phone 8.0 wprowadził możliwość pisania aplikacji z wykorzystaniem komponentów kodu natywnego. Umożliwia to prostsze niż poprzednio przenoszenie aplikacji między różnymi platformami. Kod pisany jest w C/C++ z wykorzystaniem uproszczonej wersji Windows API oraz DirectX 11. Windows Phone jako platforma deweloperska udostępnia najlepsze i najszybsze narzędzia do programowania spośród wszystkich opisywanych wcześniej systemów operacyjnych. 4
5 3 Układy sprzętowe Jednym z czynników, które przyczyniły się do znaczącego wzrostu popularności urządzeń mobilnych była widoczna poprawa jakości wyświetlaczy graficznych. Pierwsze urządzanie cechowały się wyświetlaczami monochromatycznymi o rozdzielczości 4k pikseli. Obecnym standardem dla telefonów są wyświetlacze o 1M pikseli, a dla tabletów 2M-3M pikselowe. Kierunek tej tendencji raczej się nie zmieni. Już zapowiedziane są smartfony z wyświetlaczami 2M pikselowymi (jest kwestia miesięcy kiedy wejdą do sprzedaży). Obecne urządzenia cechują się mocą obliczeniową porównywalną z komputerami klasy PC sprzed 5 lat. Różnica jest natomiast w wielkości i poborze mocy. Najwydajniejsze obecnie urządzenia potrafią podczas intensywnego korzystania wytrzymać po godzin 3 [glb]. To ciągłe współzawodnictwo między producentami wymusza wprowadzanie nowych i szybszych technologii oraz dalszą miniaturyzacją układów scalonych. Praktycznie wszystkie obecnie produkowane urządzenia zbudowane są w technologii SoC 4 (ang. System-on-a-chip). Opis według Wikipedii brzmi następująco: SoC (ang. System-on-a-chip) lub SOC (ang. System On Chip) mianem tym określa się układ scalony zawierający kompletny system elektroniczny, w tym układy cyfrowe, analogowe (także radiowe) oraz cyfrowo-analogowe. Poszczególne moduły tego systemu, (...), pochodzą zwykle od różnych dostawców. (...) Typowym obszarem zastosowań SoC są systemy wbudowane, a najbardziej rozpowszechnionym przedstawicielem tego rozwiązania są systemy oparte na procesorach w architekturze ARM. (...). W odróżnieniu od mikrokontrolerów SoC są wyposażone w CPU o stosunkowo dużej mocy obliczeniowej (pozwalającej uruchamiać systemy operacyjne takie jak Linux i Windows CE) oraz bardziej specjalizowane peryferia. Obecnie na rynku funkcjonuje wielu dostawców systemów SoC oraz mobilnych akceleratorów grafiki. Dokument ten przedstawia układy mające największy procentowy udział w urządzeniach mobilnych. 3.1 ARM Mali Mali jest akceleratorem graficznym (GPU), produktem firmy ARM. Firma ARM jest projektantem większości dostępnych na rynku układów 3 Galaxy-S3-lepszy-niz-iPhone.html 4 5
6 Rysunek 3: Matryca układu NVIDIA Tegra 3, Kolorem żółtym oznaczone są rdzenie procesora A9 http: // www. anandtech. com/ show/ 5072/ nvidias-tegra-3-launched-architecture-revealed ARM (m.in. nowych Cortex-A8, A9 i A15) oraz popularnych układów graficznych dla urządzeń mobilnych Mali, znanych chociażby z Samsungów Galaxy S II, Galaxy S III czy Galaxy Note. Układ, tak jak większość procesorów dedykowanych do obsługi 3D, nie udostępnia kontrolera wyświetlania na monitorze. Procesor implementuje jedynie funkcje renderingu 3D do pamięci operacyjnej, która może być następnie przetworzona i wyświetlona na panelu LCD. Obecnie na rynku jest dostępnych wiele układów bazujących na tej architekturze. Standardem jest obsługa standardu OpenGL ES 2.0 oraz OpenVG. 3.2 PowerVR PowerVR jest dywizją Imagination Technologies będącej twórcą rozwiązań sprzętowych i programowych przeznaczonych do renderingu 2D i 3D. Początkowo projektowane urządzenia były przeznaczone na rynek PC gdzie miały konkurować z takimi firmami jak NVIDIA, czy AMD. Ich przewaga nad konkurencją był głównie lepszy współczynnik ceny do wydajności. Jednakże bardzo dynamiczny rozwój technologii desktopowych zmusił mniejszych graczy tj. PowerVR do zmiany strategii biznesowej. Odpowiedzią firmy na te zdarzenia było zaprojektowanie procesorów grafiki przeznaczonych dla urządzeń niskonapięciowych. Z czasem urządzenia te zostały wcielone w układy SoC dedykowane dla urządzeń 6
7 mobilnych. Architektura procesora jest w pełni skalowalna i z powodzeniem może być wykorzystywana w tanich urządzeniach jak i wysoko wydajnych. Układ potrafi realizować funkcję poprzez wykorzystanie techniki GPGPU. Pozwala to GPU zwykle zajmującym się obliczeniami związanymi z grafiką komputerową na wykonywanie obliczeń ogólnego przeznaczenia, tak jak CPU. Umożliwia również wykonywanie wielu obliczeń równolegle, szybciej niż z wykorzystaniem procesora ogólnego przeznaczenia. PowerVR wykorzystuje do wizualizacji grafiki 3D metodę zwaną odroczonym kafelkowym mechanizemem renderingu. Obraz jest renderowany dopiero w momencie, gdy wszystkie renderowane poligony zostaną przesłane dla danej ramki. Kosztowne operacje, tj.: teksturowanie i cieniowanie pikseli jest odroczone do momentu, gdy będzie znana widoczność wszystkich pikseli renderowanego obrazu. Obraz następnie jest dzielony na kafle o rozmiarze 32x32 piksele. Do każdego kafla przypisana jest lista wpływających na wynikowy obraz trójkątów. Obraz jest następnie renderowany techniką podobną do rzucania promieniami (ang. ray-casting). Większość obecnie dostępnych układów obsługuje najważniejsze API programistyczne, tj.: OpenGL ES 1.1, 2.0, OpenVG 1.1, DirectX 9, 10.1 oraz OpenCL. Seria układów od PowerVR jest z powodzeniem wykorzystywana w najnowszych urządzeniach firmy Apple: wszystkie wersje ipada, iphone 4S i 5 oraz urządzeniach innych producentów, np.: Samsung. 3.3 NVIDIA Tegra NVIDIA Tegra[nVI11] seria układów scalonych zbudowanych w systemie System-on-a-chip dedykowanych dla mobilnych platform na architekturze ARM przeznaczona głównie dla urządzeń mobilnych. Układy można te znaleźć w wielu dostępnych urządzeniach: 1 Motorola Xoom 2 Samsung Galaxy R 3 LG Optimus 2X 4 Nexus 7 Obecnie na rynku dostępne są: Tegra 2 - druga generacja układu SoC zbudowana na bazie dwurdzeniowego procesora ARM Cortex-A9. Jako układ graficzny został wykorzystany Ultra low power GeForce z 4 jednostkami cieniowania wierzchołków i pikseli, 32 bitowym kontrolerem pamięci, 32KB cache L1 dla rdzenia oraz 1MB współdzielonej pamięci L2. Tegra 3 - trzecia generacja układu SoC zbudowana na bazie czterordzeniowego procesora ARM Cortex-A9 oraz piątego rdzenia. Piąty rdzeń pracuje jako układ o małej wydajności, zoptymalizowany do długiej pracy na baterii. Układ ma wbudowane mechanizmy automatycznego przenoszenia zadań między normalnymi rdzeniami, a piątym. Układ graficzny wykorzystuje 12 jednostek cieniowania 7
8 wierzchołków i pikseli taktowanych wyższą częstotliwością niżw Tegra 2. Tegra 4 - najnowsza wersja układu, jeszcze niedostępna w sprzedaży. Przewiduje się, że układ jest 20x szybszy niż Tegra 2 oraz 6x szybszy niż Tegra 3. 4 API graficzne Obecne karty graficzne mogą być programowane przy pomocy różnych interfejsów graficznych. Dwa najpopularniejsze i konkurencyjne to OpenGL i DirectX. OpenGL jest uniwersalnym API do generowania grafiki dostępnym na prawie wszystkich platformach. DirectX jest własnościowym produktem firmy Microsoft ograniczonym tylko do platformy Windows i systemów zależnych. Firmy produkujące silniki graficzne, aby zapewnić współpracę ze wszystkimi urządzeniami zmuszone są tak przygotować kod, aby był w stanie działać z każdym z nich. Każdy z interfejsów posiada wiele różnych wersji: inne wersje dla komputerów PC, inne dla urządzeń mobilnych i jeszcze inne dla konsol. Pokrótce postaram się przedstawić idee, stojące za każdym z nich. 4.1 OpenGL OpenGL [JN94][MS07] (ang. Open Graphics Library) jest to specyfikacja uniwersalnego API do generowania grafiki. Zestaw funkcji składa się z 250 podstawowych wywołań, umożliwiających budowanie złożonych trójwymiarowych scen z podstawowych figur geometrycznych. OpenGL wykorzystywany jest często przez gry komputerowe i wygaszacze ekranu, spełnia rolę analogiczną jak konkurencyjny Direct3D (część DirectX) w systemie Windows firmy Microsoft. Również programy do przedstawiania wyników badań naukowych, CAD, oraz wirtualnej rzeczywistości używają OpenGL. Idea działania w najnowszych wersjach OpenGL jest bardzo podobna do DirectX. Różnica jest w API. Interfejs biblioteki OpenGL jest interfejsem niskopoziomowym, wykorzystującym programowanie strukturalne, gdzie interfejs dla biblioteki DirectX opiera się o wykorzystanie interfejsów pełniących rolę obiektów, umożliwiających dostęp do konkretnych metod. OpenGL został zaprojektowany w taki sposób, aby producenci sprzętu graficznego mogli rozszerzać jego funkcjonalność poprzez własne rozszerzenia [nvi07]. Rozszerzenia takie dystrybuowane są poprzez publikację zarówno sterowników obsługujących dane funkcje, jak również plików nagłówkowych z definicjami tychże, aby z funkcji tych mogli skorzystać programiści piszący oprogramowanie używające OpenGL. 8
9 Funkcje lub stałe występujące w rozszerzeniach oznaczane są skrótami przyporządkowanymi poszczególnym producentom (np. funkcje firmy NVIDIA oznaczane są skrótem NV). Jeśli funkcja jest używana przez więcej niż jednego producenta, oznaczana jest skrótem EXT. W przypadku, gdy zostanie oficjalnie zaakceptowana przez Architectural Review Board, staje się ona rozszerzeniem standardowym i otrzymuje oznaczenie ARB. Później, rozszerzenie może zostać oficjalnie częścią standardu OpenGL, w kolejnej jego wersji. Wyróżniamy specjalną wersję biblioteki przygotowaną dla potrzeb urządzeń mobilnych: OpenGL ES[gle] (ang. OpenGL for Embedded Systems). OpenGL ES jest podzbiorem OpenGL 3D zaprojektowanym m.in. dla urządzeń mobilnych typu telefony komórkowe, palmtopy i konsole do gier. Jest zdefiniowany i rozpowszechniany przez Khronos Group. Wykorzystywany w systemach operacyjnych, tj.: Symbian, Android i ios. Obecnie na rynku funkcjonuje kilka wersji specyfikacji OpenGL ES. Pokrótce są one przedstawione w rozdziałach poniżej. 4.2 OpenGL ES 1.0 Jest to najstarsza wersja biblioteki. Została ona zaprojektowana na podstawie specyfikacji OpenGL 1.3. Korzystanie z tej biblioteki wiązało się z: 1. Rezygnacją z wykorzystania funkcji glbegin() i glend() 2. Całość obliczeń opierała się na arytmetyce stałoliczbowej 3. Rezygnacją z ręcznego wywołania funkcji renderujących na rzecz buforów wierzchołków 4. Usunięciem wielu typów renderowanych objektów, tj.: kwadratów, poligonów, linii 5. Usunięciem obsługi bufora akumulacji, list wyświetlania oraz niektórych parametrów materiałowych Wersja tej biblioteki jest obsługiwana przez starsze urządzenia mobilne, jak i również konsolę Playstation OpenGL ES 1.1 Jest to rozszerzenie możliwości wersji OpenGL ES 1.0. Dodano następujące funkcje: 1. Bufory danych - funkcja umożliwiła zapisywanie wierzchołków i indeksów w pamięci karty graficznej 9
10 2. Multiteksturing - funkcja umożliwiła nakładanie wielu tekstur w jednym przebiegu renderingu, pozwoliło to np. na wykonywanie operacji iloczynu skalarnego 3. Automatyczną generację poziomów szczegółowości - aplikacje nie musiały implementować lub zapisywać dalszych poziomów szczegółowości dla tekstur, operację tą wykonywała karta graficzna lub sterownik karty graficznej 4.4 OpenGL ES 2.0 Trzecia wersja biblioteki była pewnym przełomem. Wprowadziła zamiast nieprogramowalnego (stałego) potoku renderingu, programowalny. Wszystkie operacje, tj.: transformacja, oświetlenie, parametry materiału, parametry oświetlenia zostały zastąpione specjalnie przygotowywanymi programami cieniującymi wierzchołki i piksele (ang. shaders). Te małe fragmenty kodu były przygotowywane przez programistę. Z tego powodu biblioteka OpenGL ES 2.0 nie jest wstecznie kompatybilna z 1.0/ OpenGL ES 3.0 Jest to najnowsza wersja specyfikacji, zaprezentowana w sierpniu Specyfikacja zachowuje wsteczną kompatybilność z OpenGL ES 2.0 dodając tylko nowe funkcje pozwalające programować nowe efekty wizualne w aplikacjach. Do nowości dodanych do biblioteki należą: 1. Określanie widoczności obiektów (occlusion queries) 2. Wyświetlanie wielu obiektów jednocześnie (instanced rendering) 3. Obsługa wielu buforów renderingu (MRT) 4. Obsługa stało oraz zmiennoprzecinkowych operacji w shaderach 5. Obsługa tekstur głębokości (depth textures) 6. Rozszerzenie obsługiwanych formatów tekstur, buforów renderingu oraz ich wielkości 7. Wymuszenie większej spójności implementacyjnej między różnymi urządzeniami 4.6 DirectX DirectX to zestaw funkcji API wspomagających generowanie grafiki (dwu- i trójwymiarowej), dźwięku oraz innych zadań związanych zwykle z grami i innymi aplikacjami multimedialnymi. Najczęściej 10
11 jest wykorzystywany do obsługi grafiki w grach komputerowych. Używany jest również do pisania programów do specyficznych zadań z wykorzystaniem np. grafiki trójwymiarowej (np. symulacja komputerowa). DirectX jest produktem firmy Microsoft, dostępnym tylko na platformę Windows, platformy mobilne oparte o Windows Phone oraz konsolę Xbox. Obecnie dostępna jest wersja DirectX 11, która została wprowadzona wraz z premierą systemu operacyjnego Microsoft Windows 7. Wraz z biblioteką DirectX 10[Lun08] wprowadzono tzw. poziomy funkcjonalności (ang. feature levels). Najnowsza wersja API DirectX udostępnia tylko funkcje programowalnego potoku renderingu[mic11b][sl05][mic11a]. Zakres programowalności zależy wtedy od wybranego poziomu funkcjonalności: obsługa Shader Model 2.0/2.x, instancing, tekstury 4K oraz wolumetryczne, kompresję DXT, MRT, mieszanie z wykorzystaniem formatów zmiennoprzecinkowych obsługę Shader Model 4.0/4.1, cieniowania geometrii, renderowania do bufora wierzchołków, tekstury 8K oraz MSAA, dwustronny bufor szablonowy, tablice tekstur obsługę Shader Model 5.0, bufory stałych, teselację, obsługę GPGPU (DirectCompute), tekstury 16K Na komputerach osobistych obecnie dostępna jest specyfikacja oznaczona jako Natomiast telefony oparte o najnowszy system Windows Phone wykorzystują 9.3. Unifikacja interfejsu oraz wprowadzenie poziomów funkcjonalności ułatwia proces przygotowania i utrzymania kodu aplikacji. Nowsze poziomy są wstecznie kompatybilne. W większości przypadków rozszerzenie funkcjonalności aplikacji wymaga zmiany poziomu na wyższy oraz dodanie implementacji nowych efektów. 5 Narzędzia programistyczne Na rynku jest dostępnych wiele narzędzi, które ułatwiają proces tworzenia gier i aplikacji wykorzystujących wizualizację 2D i 3D. Pokrótce przedstawię kilka z nich. 5.1 Unity Unity jest to komercyjne narzędzie do tworzenia gier trójwymiarowych lub innych materiałów interaktywnych takich jak wizualizacje czy animacje trójwymiarowe. Środowisko działa na platformie Microsoft Windows, OS X oraz Linux, a gry wyprodukowane na tym silniku mogą działać na takich platformach jak Windows, Linux, Mac OS, Xbox 360, PlayStation 3, Wii, ipad, iphone i Android. 11
12 Unity było pierwszym silnikiem graficznym dostępnym na iphone. Obecnie jest to najpopularniejsze narzędzie wykorzystywane przez deweloperów na platformach mobilnych (53,1% 5 deweloperów). Środowisko posiada bogatą bibliotekę zasobów. Biblioteka jest dostępna bezpośrednio z edytora Unity. Znajduje się w niej około 5000 paczek z różnymi modelami, teksturami, materiałami, efektami cząsteczkowymi oraz dźwiękowymi. Rysunek 4: Obrazek z gry Drift Mania Championship na bazie Unity3D 5.2 OGRE OGRE (ang. Object-Oriented Graphics Rendering Engine) silnik graficzny 3D napisany w C++. Obsługuje zarówno Direct3D jak i OpenGL. Jest to jeden z popularniejszych narzędzi OpenSource, mocno wspierany przez hobbystów. Projekty napisane z wykorzystaniem OGRE są uruchamiane m.in. na Androidzie, ios. Można też znaleźć informacje o udanych próbach uruchomienia dem na Windows Phone cocos2d Biblioteka cocos2d zapewnia wygodny i łatwy w użyciu zestaw klas, które pozwalają na szybkie tworzenie dwuwymiarowych gier na platformy mobilne. Obecnie dostępne są implementacje dla iphone, Androida oraz 5 leans_heavily_toward_ios_unity.php#.uqd8kr-pnkh
13 Windows Phone (oparta na XNA). Biblioteka obsługuje: 1. Zarządzanie sceną 2. Duszki oraz obiekty 3. Różne funkcje akcji, m.in.: przesunięcie, rotacja, skalowanie, sekwencja, powtórzenie, sinusojda, kamera 4. Prosty interfejs UI 5. Obsługę symulacji fizyki opartą o Box2D oraz Chipmunk 6. System cząsteczkowy 7. Obsługę ekranów dotykowych i akcelerometrów 8. Obsługę dźwięku Rysunek 5: Obrazek z gry Fishing Frenzy napisany na bazie Cocos2d http: // newsicare. wordpress. com/ 2010/ 07/ 24/ cocos2d 5.4 ANGLE Projekt implementuje funkcjonalność API graficznego OpenGL ES 2.0 na systemach Windows wykorzystując do tego celu m.in. środowisko DirectX 9. Projekt jest wykorzystywany jako platforma dla WebGL. WebGL jest rozszerzeniem możliwości języka JavaScript, zapewniającym dostęp do trójwymiarowego API w przeglądarce internetowej. Analiza kodu źródłowego projektu dostarcza cennych informacji o działaniu OpenGL ES 2.0. Mechanizmy wykorzystywane w projekcie, tj.: automatyczna translacja kodu GLSL na HLSL, czy rozbudowane mechanizmy walidacji wywołań API, pozwalają na zapewnienie szerokiej kompatybilności aplikacji WebGL na różnych przeglądarkach WWW oraz systemach operacyjnych. 13
14 5.5 Optymalizator kodu GLSL Projekt GLSL Optimizer[gls] celuje w zniwelowanie obecnego problemu kompilatorów GLSL w urządzeniach mobilnych, dokładniej ich słabej jakości. Optymalizator pozwala w znaczący sposób przyspieszyć szybkość jednostek cieniujących wykorzystujących API OpenGL ES 2.0. Jego analiza dostarcza odpowiedzi na pytanie: W jaki sposób należy optymalizować kod programów cieniujących, aby osiągnąć możliwie jak najwyższą wydajność. 6 Podsumowanie Obecnie obserwujemy dużą popularyzację urządzeń mobilnych, szczególnie smartfonów. Wyniki sprzedażowe największych firm na świecie liczone są w dziesiątkach milionów sprzedanych urządzeń. Na rynku pojawia się coraz więcej producentów z Chin, które swoją ceną oraz coraz lepszą jakością z powodzeniem konkurują z firmami amerykańskimi oraz koreańskimi. Należy spodziewać się pojawienia kolejnych coraz lepszych urządzeń mobilnych. Oczekuje się, że wraz z popularyzacją nowych specyfikacji interfejsów graficznych (OpenGL ES 3.0) nastąpi kolejny skok jakościowy. Według wielu firm z branży (m.in. NVIDIA) w perspektywie 2-3 lat mobilne akceleratory grafiki powinny osiągnąć wydajność obecnej generacji konsol6. Od paru lat dynamizm rynku mobilnego znacząco przewyższa ten obserwowany na rynku PC i konsol. Wzrost szybkości akceleratorów już nie jest tak spektakularny jak miało to miejsce na początku tysiąclecia. Najprawdopodobniej wynika, to w dużej mierze z negatywnego wpływu obecnej (trzeciej) generacji konsol. Powszechną opinią jest, że brak nowych i wydajniejszych konsol wpływa na stagnację rynku. Przekłada się to na całą branżę PC a korzysta na tym głównie branża mobilna. Literatura [AMS08] [Bly08] T. Akenine-Moller and J. Strom. Graphics processing units for handhelds. Proceedings of the IEEE, 96(5): , may D. Blythe. Rise of the graphics processor. Proceedings of the IEEE, 96(5): , may [CPAM08] T. Capin, K. Pulli, and T. Akenine-Moller. The state of the art in mobile graphics research. Computer Graphics and Applications, IEEE, 28(4):74 84, july-aug [glb] Top performance results of devices in GLBenchmark. http: // 14
15 Rysunek 6: Wydajność akceleratorów grafiki http: // www. anandtech. com/ show/ 5762 [gle] OpenGL ES - The Standard For Embedded Accelerated 3D Graphics. [gls] GLSL Optimizer. glsl-optimizer/. [JN94] M. Woo J. Neider, T. Davis. OpenGL Programming Guide (The Red Book). Silicon Graphics, [Lun08] F. D. Luna. Introduction to 3D Game Programming with DirectX R 10. Jones & Bartlett Learning, [Mic11a] Microsoft. Dynamic Linking. en-us/library/windows/desktop/ff471420(v=vs.85).aspx, [Mic11b] Microsoft. Programming Guide for HLSL. http: //msdn.microsoft.com/en-us/library/windows/desktop/ bb509635(v=vs.85).aspx, [MS07] K. Akeley M. Segal. The OpenGL Graphics System: A Specification. Silicon Graphics, [nvi07] nvidia. NVIDIA OpenGL Extension Specifications for the GeForce 8 Series Architecture (G8x). nvidia,
16 [nvi11] nvidia. Bringing High-End Graphics to Handheld Devices. Technical report, [SL05] S. St-Laurent. The COMPLETE Effect And HLSL Guide. Paradoxal Press, [Tun11] Bruno Tunjic. Computer Graphics on Mobile Devices
Karty graficzne możemy podzielić na:
KARTY GRAFICZNE Karta graficzna karta rozszerzeo odpowiedzialna generowanie sygnału graficznego dla ekranu monitora. Podstawowym zadaniem karty graficznej jest odbiór i przetwarzanie otrzymywanych od komputera
Plan wykładu. Akcelerator 3D Potok graficzny
Plan wykładu Akcelerator 3D Potok graficzny Akcelerator 3D W 1996 r. opracowana została specjalna karta rozszerzeń o nazwie marketingowej Voodoo, którą z racji wspomagania procesu generowania grafiki 3D
GLKit. Wykład 10. Programowanie aplikacji mobilnych na urządzenia Apple (IOS i ObjectiveC) #import "Fraction.h" #import <stdio.h>
#import "Fraction.h" #import @implementation Fraction -(Fraction*) initwithnumerator: (int) n denominator: (int) d { self = [super init]; } if ( self ) { [self setnumerator: n anddenominator:
Podsystem graficzny. W skład podsystemu graficznego wchodzą: karta graficzna monitor
Plan wykładu 1. Pojęcie podsystemu graficznego i karty graficznej 2. Typy kart graficznych 3. Budowa karty graficznej: procesor graficzny (GPU), pamięć podręczna RAM, konwerter cyfrowo-analogowy (DAC),
CMS, CRM, sklepy internetowe, aplikacje Web
CMS, CRM, sklepy internetowe, aplikacje Web Aplikacje PHP, open source, dodatki Add-ins, templatki, moduły na zamówienie Aplikacje mobilne jquery Mobile + PhoneGap Kilka platform w cenie jednego kodu JavaScript!
Zaawansowane systemy programowania grafiki. Wprowadzenie. Podstawy OpenGL
Zaawansowane systemy programowania grafiki. Wprowadzenie. Podstawy OpenGL Aleksander Denisiuk Uniwersytet Warmińsko-Mazurski Olsztyn, ul. Słoneczna 54 denisjuk@matman.uwm.edu.pl 7 października 2014 1 /
JavaFX. Technologie Biznesu Elektronicznego. Wydział Informatyki i Zarządzania Politechnika Wrocławska
JavaFX - wprowadzenie JavaFX Wydział Informatyki i Zarządzania Politechnika Wrocławska Definicja JavaFX - wprowadzenie Definicja Historia JavaFX Script Rich Internet Application JavaFX - rodzina technologii
Grafika komputerowa i wizualizacja
Grafika komputerowa i wizualizacja Radosław Mantiuk ( rmantiuk@wi.zut.edu.pl, p. 315 WI2) http://rmantiuk.zut.edu.pl Katedra Systemów Multimedialnych Wydział Informatyki, Zachodniopomorski Uniwersytet
Karta graficzna karta rozszerzeo odpowiedzialna generowanie sygnału graficznego dla ekranu monitora. Podstawowym zadaniem karty graficznej jest
KARTA GRAFICZNA Karta graficzna karta rozszerzeo odpowiedzialna generowanie sygnału graficznego dla ekranu monitora. Podstawowym zadaniem karty graficznej jest odbiór i przetwarzanie otrzymywanych od komputera
MonoGame. Wieloplatformowe gry w C# Mateusz Cicheński
MonoGame Wieloplatformowe gry w C# Mateusz Cicheński Plan prezentacji Założenia Alternatywy Narzędzia Różnice między WP8, ios, Android DEMO Podsumowanie Założenia CEL: Stworzenie wieloplatformowej gry
GRAFIKA CZASU RZECZYWISTEGO Wstęp do programowania grafiki czasu rzeczywistego.
GRAFIKA CZASU RZECZYWISTEGO Wstęp do programowania grafiki czasu rzeczywistego. http://bazyluk.net/zpsb Grafika Komputerowa, Informatyka, I Rok PROGRAMOWANIE GRAFIKI KOMPUTEROWEJ CZASU RZECZYWISTEGO Grafika
Politechnika Poznańska, Instytut Informatyki, TWO/GE. Programowanie dla ios
Politechnika Poznańska, Instytut Informatyki, TWO/GE Programowanie dla ios 13 stycznia 2012 Urządzenia ios Urządzenie Data prezentacji iphone 9.01.2007/06.2007 ipod touch 5.09.2007 iphone 3G 9.06.2008
Systemy graficzne. dr inż. Mariusz Szwoch
Systemy graficzne dr inż. Mariusz Szwoch Systemy Graficzne Sem. 2 studiów magisterskich Przedmiot specjalności ISI i uzupełniający Wymiar: wykład 15 h (7 2h + 1h zaliczenie) laboratorium 15 h (5 3h) Prowadzący
Android - wprowadzenie. Łukasz Przywarty 171018
Android - wprowadzenie Łukasz Przywarty 171018 Ramowy plan prezentacji Czym jest Android: definicja, krótka historia. Architektura systemu. Architektura aplikacji. Właściwości systemu. Środowisko deweloperskie.
Wprowadzenie do grafiki maszynowej. Wprowadzenie do historii OpenGL
Wprowadzenie do grafiki maszynowej. Wprowadzenie do historii OpenGL Aleksander Denisiuk Uniwersytet Warmińsko-Mazurski Olsztyn, ul. Słoneczna 54 denisjuk@matman.uwm.edu.pl 1 / 29 Wprowadzenie do historii
Wprowadzenie do QT OpenGL
Wprowadzenie do QT mgr inż. Michał Chwesiuk mgr inż. Tomasz Sergej inż. Patryk Piotrowski 1/21 - Open Graphics Library Open Graphics Library API pozwalające na wykorzystanie akceleracji sprzętowej do renderowania
Karta przedmiotu. Podstawy programowania procesorów graficznych. realizowanego w ramach projektu PO WER
Karta przedmiotu Podstawy programowania procesorów graficznych realizowanego w ramach projektu PO WER 2017-2019 Wydział Inżynierii Elektrycznej i Komputerowej Kierunek studiów: Informatyka Profil: Ogólnoakademicki
KATEDRA SYSTEMÓW MULTIMEDIALNYCH SEMINARIUM MULTIMEDIALNE SYSTEMY MEDYCZNE
KATEDRA SYSTEMÓW MULTIMEDIALNYCH SEMINARIUM MULTIMEDIALNE SYSTEMY MEDYCZNE Seminarium nr 1: Wprowadzenie do platformy Intel Galileo Opracowanie: mgr inż. Janusz Cichowski 1. WPROWADZENIE Celem ćwiczenia
GRAFIKA KOMPUTEROWA. Rozwiązania sprzętowe i programowe. Przyspieszanie sprzętowe. Synteza i obróbka obrazu
Synteza i obróbka obrazu GRAFIKA KOMPUTEROWA Rozwiązania sprzętowe i programowe Przyspieszanie sprzętowe Generowanie obrazu 3D wymaga złożonych obliczeń, szczególnie jeżeli chodzi o generowanie płynnej
Systemy operacyjne na platformach mobilnych 3 Wstęp do systemu Android
Systemy operacyjne na platformach mobilnych 3 Wstęp do systemu Android Prezentacja jest współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego w projekcie pt. Innowacyjna dydaktyka
GRAFIKA KOMPUTEROWA. Rozwiązania sprzętowe i programowe. Przyspieszanie sprzętowe. Synteza dźwięku i obrazu
Synteza dźwięku i obrazu GRAFIKA KOMPUTEROWA Rozwiązania sprzętowe i programowe Przyspieszanie sprzętowe Generowanie obrazu 3D wymaga złożonych obliczeń, szczególnie jeżeli chodzi o generowanie płynnej
OpenGL - Open Graphics Library. Programowanie grafiki komputerowej. OpenGL 3.0. OpenGL - Architektura (1)
OpenGL - Open Graphics Library Programowanie grafiki komputerowej Rados$aw Mantiuk Wydzia$ Informatyki Zachodniopomorski Uniwersytet Technologiczny! OpenGL: architektura systemu do programowania grafiki
Gry Komputerowe Laboratorium 1. Zajęcia organizacyjne Animacja z uwzględnieniem czasu. mgr inż. Michał Chwesiuk 1/22. Szczecin,
Gry Komputerowe Laboratorium 1 Zajęcia organizacyjne mgr inż. Michał Chwesiuk 1/22 projektowych Zajęcia projektowe składają się zajęć (plus jedno zajęcie godzinne). Zajęcia polegają na programowania grafiki
Tablet MODECOM FreeTAB 2096+ HD X2
Wprowadzenie MODECOM FreeTAB 2096+ HD X2 to kompaktowych rozmiarów tablet multimedialny wyposażony w wysokiej klasy 7 wyświetlacz o rozdzielczości 1024 x 600 pikseli oraz proporcji 16:9 Produkt ten stanowi
Symulator doboru koloru i przetłoczenia bramy garażowej oraz wzoru drzwi wejściowych. do elewacji budynku klienta
Symulator doboru koloru i przetłoczenia bramy garażowej oraz wzoru drzwi wejściowych do elewacji budynku klienta Wszechobecna nowa technologia Smartfony obecnie coraz częściej zastępują zwykłe telefony
Projekt inżynierski uwagi
Politechnika Śląska Instytut Matematyki Wydział Matematyki Stosowanej Ważne! Dokumentacja projektu inżynierskiego Metodyka pracy Literatura Aplikacja Ta prezentacja zawiera ogólne uwagi, które nie muszą
Projektowanie gier komputerowych. dr inż. Mariusz Szwoch
Projektowanie gier komputerowych dr inż. Mariusz Szwoch Projektowanie gier komputerowych Sem. 7 studiów dziennych Profil dyplomowania: Inteligentne systemy interaktywne Wymiar: wykład 15 h (7 2h+1h) laboratorium
Bibliografia: pl.wikipedia.org www.intel.com. Historia i rodzaje procesorów w firmy Intel
Bibliografia: pl.wikipedia.org www.intel.com Historia i rodzaje procesorów w firmy Intel Specyfikacja Lista mikroprocesorów produkowanych przez firmę Intel 4-bitowe 4004 4040 8-bitowe x86 IA-64 8008 8080
PRZEWODNIK PO PRZEDMIOCIE
Nazwa przedmiotu: Kierunek: Informatyka Rodzaj przedmiotu: moduł specjalności obowiązkowy: Inżynieria oprogramowania Rodzaj zajęć: wykład, laboratorium I KARTA PRZEDMIOTU CEL PRZEDMIOTU GRAFICZNE MODELOWANIE
T-Bull S.A. Made by gamers for gamers. STRATEGIA ROZWOJU T-Bull S.A. na lata Wrocław, 19 września 2017 r.
T-Bull S.A. Made by gamers for gamers STRATEGIA ROZWOJU T-Bull S.A. na lata 2017 2022 Wrocław, 19 września 2017 r. 1 7 60 265 lat doświadczenia w branży gier mobilnych -osobowy zespół pasjonatów gier milionów
Wykład 4. Rendering (1) Informacje podstawowe
Wykład 4. Rendering (1) Informacje podstawowe Z punktu widzenia dzisiejszego programowania gier: Direct3D jest najczęściej wykorzystywanym przez profesjonalnych deweloperów gier API graficznym na platformie
CUDA Median Filter filtr medianowy wykorzystujący bibliotekę CUDA sprawozdanie z projektu
CUDA Median Filter filtr medianowy wykorzystujący bibliotekę CUDA sprawozdanie z projektu inż. Daniel Solarz Wydział Fizyki i Informatyki Stosowanej AGH 1. Cel projektu. Celem projektu było napisanie wtyczki
Nowinki technologiczne procesorów
Elbląg 22.04.2010 Nowinki technologiczne procesorów Przygotował: Radosław Kubryń VIII semestr PDBiOU 1 Spis treści 1. Wstęp 2. Intel Hyper-Threading 3. Enhanced Intel Speed Technology 4. Intel HD Graphics
Projektowanie, tworzenie aplikacji mobilnych na platformie Android
Program szkolenia: Projektowanie, tworzenie aplikacji mobilnych na platformie Android Informacje: Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania: Forma: Projektowanie, tworzenie aplikacji mobilnych
Projektowanie aplikacji graficznych. dr inż. Jarosław Zubrzycki
Projektowanie aplikacji graficznych dr inż. Jarosław Zubrzycki DirectX DirectX to zestaw funkcji API wspomagających generowanie grafiki (dwu- i trójwymiarowej), dźwięku oraz innych zadań związanych zwykle
/wpisać: model, symbol, producent urządzenia/
Załącznik nr 4a do Części I SIWZ Lp. Nazwa komponentu Wymagane minimalne parametry techniczne komputerów FORMULARZ CENOWY dla części I zamówienia Informacje dot. oferowanego urządzenia Ilość sztuk Cena
BUDOWA APLIKACJI NA PLATFORMĘ IPHONE/IPAD. dr inż. Marcin Tomana
BUDOWA APLIKACJI NA PLATFORMĘ IPHONE/IPAD dr inż. Marcin Tomana ipod Touch ipod nano - najpopularniejsze urządzenie do odtwarzania muzyki - ograniczone jednak funkcje! ipod Touch - to możliwości prawie
Moc płynąca z kart graficznych
Moc płynąca z kart graficznych Cuda za darmo! Czyli programowanie generalnego przeznaczenia na kartach graficznych (GPGPU) 22 października 2013 Paweł Napieracz /20 Poruszane aspekty Przetwarzanie równoległe
Opracował: Jan Front
Opracował: Jan Front Sterownik PLC PLC (Programowalny Sterownik Logiczny) (ang. Programmable Logic Controller) mikroprocesorowe urządzenie sterujące układami automatyki. PLC wykonuje w sposób cykliczny
Zagadnienia wstępne WSTĘP DO PROGRAMOWANIA APLIKACJI MOBILNYCH DLA SYSTEMU ANDROID
WSTĘP DO PROGRAMOWANIA APLIKACJI MOBILNYCH DLA SYSTEMU ANDROID Zagadnienia wstępne Wykorzystane materiały: SDJ (różne numery); mat. UW; StatCounter i inne Co to jest urządzenie mobilne? Wikipedia: Przenośne
Budowa komputera. Magistrala. Procesor Pamięć Układy I/O
Budowa komputera Magistrala Procesor Pamięć Układy I/O 1 Procesor to CPU (Central Processing Unit) centralny układ elektroniczny realizujący przetwarzanie informacji Zmiana stanu tranzystorów wewnątrz
Wstęp do Informatyki. Klasyfikacja oprogramowania
Wstęp do Informatyki Klasyfikacja oprogramowania Oprogramowanie komputerowe Funkcjonalność komputera jest wynikiem zarówno jego budowy, jak i zainstalowanego oprogramowania Komputer danej klasy znajduje
Nowinki technologiczne procesorów
Elbląg 22.04.2010 Nowinki technologiczne procesorów Przygotował: Radosław Kubryń VIII semestr PDBiOU 1 Spis treści 1. Wstęp 2. Intel Hyper-Threading 3. Enhanced Intel Speed Technology 4. Intel HD Graphics
Specjalność Systemy Aplikacyjne Grafiki i Multimediów. Wydział Informatyki, Politechnika Białostocka
Specjalność Systemy Aplikacyjne Grafiki i Multimediów Wydział Informatyki, Politechnika Białostocka 1 2/4/2013 Agenda Sylwetka absolwenta Siatka zajęć Wykorzystanie grafiki komputerowej Znaczenie gospodarcze
Wymagania systemowe dla Qlik Sense. Qlik Sense February 2018 Copyright QlikTech International AB. Wszelkie prawa zastrzeżone.
Wymagania systemowe dla Qlik Sense Qlik Sense February 2018 Copyright 1993-2018 QlikTech International AB. Wszelkie prawa zastrzeżone. Copyright 1993-2018 QlikTech International AB. Wszelkie prawa zastrzeżone.
Przegląd architektury PlayStation 3
Przegląd architektury PlayStation 3 1 Your Name Your Title Your Organization (Line #1) Your Organization (Line #2) Sony PlayStation 3 Konsola siódmej generacji Premiera: listopad 2006 33,5 mln sprzedanych
Podział komputerów. Wykład z Technologii Informacyjnych. Piotr Mika
Podział komputerów Wykład z Technologii Informacyjnych Piotr Mika Superkomputery Przeznaczone do wykonywania skomplikowanych obliczeń numerycznych, modelowania giełdy, symulacje, modelowanie atmosfery
Sprzęt komputerowy 2. Autor prezentacji: 1 prof. dr hab. Maria Hilczer
Sprzęt komputerowy 2 Autor prezentacji: 1 prof. dr hab. Maria Hilczer Budowa komputera Magistrala Procesor Pamięć Układy I/O 2 Procesor to CPU (Central Processing Unit) centralny układ elektroniczny realizujący
SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE
SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE WINDOWS 1 SO i SK/WIN 007 Tryb rzeczywisty i chroniony procesora 2 SO i SK/WIN Wszystkie 32-bitowe procesory (386 i nowsze) mogą pracować w kilku trybach. Tryby pracy
Grafika Komputerowa Wykład 4. Synteza grafiki 3D. mgr inż. Michał Chwesiuk 1/30
Wykład 4 mgr inż. 1/30 Synteza grafiki polega na stworzeniu obrazu w oparciu o jego opis. Synteza obrazu w grafice komputerowej polega na wykorzystaniu algorytmów komputerowych do uzyskania obrazu cyfrowego
Większe możliwości dzięki LabVIEW 2009: programowanie równoległe, technologie bezprzewodowe i funkcje matematyczne w systemach czasu rzeczywistego
Większe możliwości dzięki LabVIEW 2009: programowanie równoległe, technologie bezprzewodowe i funkcje matematyczne w systemach czasu rzeczywistego Dziś bardziej niż kiedykolwiek narzędzia używane przez
Tablet MODECOM FreeTAB 7001 HD IC
WPROWADZENIE MODECOM FreeTAB 7001 HD IC to siedmiocalowy tablet, którego sercem jest ultrawydajny, dwurdzeniowy procesor Intel Atom Z2520 z technologią Intel Hyper- Threading. Oprócz renomowanego procesora,
System zarządzający grami programistycznymi Meridius
System zarządzający grami programistycznymi Meridius Instytut Informatyki, Uniwersytet Wrocławski 20 września 2011 Promotor: prof. Krzysztof Loryś Gry komputerowe a programistyczne Gry komputerowe Z punktu
Piotr Orzechowski. Technologie Biznesu Elektronicznego
Wydział Informatyki i Zarządzania Politechnika Wrocławska Cele prezentacji Urządzenia mobilne Rynek aplikacji dla urządzeń mobilnych Cele prezentacji 1. Zapoznanie się z charakterystyką rynku aplikacji
GUI - projektowanie interfejsów
Katedra Inżynierii Wiedzy, Uniwersytet Ekonomiczny w Katowicach Wykład 1 e-mail: przemyslaw.juszczuk@ue.katowice.pl pjuszczuk.pl Warunki zaliczenia Test z części teoretycznej (materiały z wykładów); Projekt
Krótka Historia. Co to jest NetBeans? Historia. NetBeans Platform NetBeans IDE NetBeans Mobility Pack Zintegrowane moduły. Paczki do NetBeans.
GRZEGORZ FURDYNA Krótka Historia Co to jest NetBeans? Historia Wersje NetBeans Platform NetBeans IDE NetBeans Mobility Pack Zintegrowane moduły NetBeans Profiler Narzędzie do projektowania GUI Edytor NetBeans
L.dz.: WETI /16/2014 Gdańsk, dn. 03.01.2014
L.dz.: WETI /16/2014 Gdańsk, dn. 03.01.2014 Dotyczy: postępowania o zamówienie publiczne, prowadzonego w trybie przetargu nieograniczonego, na Opracowania serwisu internetowego służącego do nauki języka
WYKORZYSTANIE PLATFORMY FireMonkey W PROCESIE URUCHAMIANIA I TESTOWANIA UKŁADÓW MIKROPROCESOROWYCH
Dr inż. Jacek WARCHULSKI Dr inż. Marcin WARCHULSKI Mgr inż. Witold BUŻANTOWICZ Wojskowa Akademia Techniczna Mgr inż. Grzegorz MUCHA MUCHTECH WYKORZYSTANIE PLATFORMY FireMonkey W PROCESIE URUCHAMIANIA I
MOBILNA BANKOWOŚĆ potrzeba czy moda?
MOBILNA BANKOWOŚĆ potrzeba czy moda? dr inż. Paweł Skrzyński, pskrzynski@mobiltek.pl Dyrektor IT AGENDA Co to jest bankowość mobilna? WWW vs Aplikacje mobilne Android/iOS Przegląd rynku bankowych aplikacji
Król Łukasz Nr albumu: 254102
Król Łukasz Nr albumu: 254102 Podstawy o Delphi Język programowania, którego można używać w środowiskach firmy Borland, Embarcadero, Microsoft (Delphi Prism), oraz w środowisku Lazarus. Narzędzia te są
Wprowadzenie. Artur Staszczyk Bartłomiej Filipek
Wprowadzenie Artur Staszczyk www.astaszczyk.com Bartłomiej Filipek www.bartlomiejfilipek.pl Bartlomiej.filipek@gmail.com Podstawy grafiki 3D GPU Co to jest OpenGL Potok Graficzny Inicjalizacja Rendering
Budowa komputera. Magistrala. Procesor Pamięć Układy I/O
Budowa komputera Magistrala Procesor Pamięć Układy I/O 1 Procesor to CPU (Central Processing Unit) centralny układ elektroniczny realizujący przetwarzanie informacji Zmiana stanu tranzystorów wewnątrz
Narzędzia uruchomieniowe dla systemów Embedded firmy Total Phase
1 Narzędzia uruchomieniowe dla systemów Embedded firmy Total Phase Narzędzia uruchomieniowe dla systemów Embedded firmy Total Phase Jednym z głównych aspektów procesu programowania systemów wbudowanych
Załącznik nr 6 do SIWZ nr postępowania II.2420.1.2014.005.13.MJ Zaoferowany. sprzęt L P. Parametry techniczne
L P Załącznik nr 6 do SIWZ nr postępowania II.2420.1.2014.005.13.MJ Zaoferowany Parametry techniczne Ilość sprzęt Gwaran Cena Cena Wartość Wartość (model cja jednostk % jednostkow ogółem ogółem i parametry
Systemy Geoinformatyczne
Politechnika Gdańska Wydział Elektroniki, Telekomunikacji i Informatyki Katedra Systemów Geoinformatycznych Profil dyplomowania: Systemy Geoinformatyczne Specjalność: Technologie geoinformatyczne i mobilne
Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki
Dariusz Brzeziński Politechnika Poznańska, Instytut Informatyki Język programowania prosty bezpieczny zorientowany obiektowo wielowątkowy rozproszony przenaszalny interpretowany dynamiczny wydajny Platforma
Programowanie procesorów graficznych GPGPU
Programowanie procesorów graficznych GPGPU 1 GPGPU Historia: lata 80 te popularyzacja systemów i programów z graficznym interfejsem specjalistyczne układy do przetwarzania grafiki 2D lata 90 te standaryzacja
Nowinkach technologicznych procesorów
Elbląg 22.04.2010 Nowinkach technologicznych procesorów Przygotował: Radosław Kubryń VIII semestr PDBiOU 1 Spis treści 1. Wstęp 2. Intel Hyper-Threading 3. Enhanced Intel Speed Technology 4. Intel HD Graphics
TABLET MULTIMEDIALNY MODECOM FreeTAB 1331 X2 HD
Wprowadzenie MODECOM FreeTAB 1331 X2 HD to nasz najnowszy tablet multimedialny charakteryzujący się wyświetlaczem o imponujących przekątnej 13,3 oraz 10-punktiwej funkcji multidotyku. To bez wątpienia
Wykład 5. Rendering (2) Geometria
Wykład 5. Rendering (2) Geometria 1. Z ogólnego, niezależnego od implementacji punktu widzenia, dane stanowiące opis geometrii modelu zorganizowane są w skończoną sekwencję (lub grupę sekwencji), którego
Spis treści. Wykaz ważniejszych skrótów Wprowadzenie Rdzeń Cortex-M Rodzina mikrokontrolerów XMC
Wykaz ważniejszych skrótów... 8 1. Wprowadzenie... 9 1.1. Wstęp... 10 1.2. Opis zawartości książki... 12 1.3. Korzyści płynące dla Czytelnika... 13 1.4. Profil Czytelnika... 13 2. Rdzeń Cortex-M0...15
ABIX Cyfrowa edukacja z oprogramowaniem Open Source www.cyfrowaszkola.waw.pl
Informacje o systemie interaktywnym Tablica interaktywna to urządzenie, które przypomina dużą białą tablicę i umożliwia współdziałanie z podłączonym do niej komputerem oraz projektorem multimedialnym.
Wymagania systemowe dla Qlik Sense. Qlik Sense June 2018 Copyright QlikTech International AB. Wszelkie prawa zastrzeżone.
Wymagania systemowe dla Qlik Sense Qlik Sense June 2018 Copyright 1993-2018 QlikTech International AB. Wszelkie prawa zastrzeżone. Copyright 1993-2018 QlikTech International AB. Wszelkie prawa zastrzeżone.
Karta sieciowa, 10/100/1000Mbit Dopuszcza się możliwość stosowania kart sieciowych zintegrowanych z płyta główną 8. Nagrywarka DVD+-RW DL SATA
CZEŚĆ I Komputer PC Procesor w architekturze x86 Częstotliwość taktowania procesora nie mniejsza niż: 2,6GHz Ilość rdzeni: 4 Technologia zapewniającą oszczędność energii lub procesor równoważny wydajnościowo
Architektura Komputerów
Architektura systemów Architektura Komputerów komputerowych Wykład nr. 9 dr Artur Bartoszewski Budowa karty graficznej Akceleratory graficzne Pamięć karty służy do przechowywania bitmapy przygotowanej
Pakiet nr 1. Zestawienie wymaganych parametrów technicznych - funkcjonalnych
Załącznik nr 1 do siwz Pakiet nr 1 Zestawienie wymaganych parametrów technicznych - funkcjonalnych Przedmiot zamówienia - Zestaw interaktywnych urządzeń wspomagających mechanicznie odtwarzanie funkcji
Google Android. Opracował Maciej Ciurlik
Google Android Opracował Maciej Ciurlik Plan prezentacji Wprowadzenie Architektura Cykl życia aplikacji Wprowadzenie Android - kompletny zbiór oprogramiwania dla urządzeń mobilnych. System operacyjny Middleware
Przyspieszanie sprzętowe
Synteza dźwięku i obrazu GRAFIKA KOMPUTEROWA Rozwiązania sprzętowe i programowe Przyspieszanie sprzętowe Generowanie obrazu 3D wymaga złoŝonych obliczeń, szczególnie jeŝeli chodzi o generowanie płynnej
MISJA AMD 2 HISTORIA AMD 2014
MISJA AMD Zajmować pozycję lidera w zakresie projektowania i wdrażania innowacyjnych, dostosowanych do potrzeb klienta rozwiązań technologicznych, które pozwalają przekroczyć granice możliwości 2 HISTORIA
Grafika 3D na przykładzie XNA 3.1
Jacek Matulewski, Tomasz Dziubak Grafika 3D na przykładzie XNA 3.1 ITA-106 Wersja 1.02 (XNA 3.1, PS 2.0) Toruo, listopad 2010 2010 Jacek Matulewski, Tomasz Dziubak. Autor udziela prawa do bezpłatnego kopiowania
Systemy operacyjne. Informatyka Stosowana, I rok. Krzysztof Wilk. Katedra Informatyki Stosowanej i Modelowania
Systemy operacyjne Informatyka Stosowana, I rok Krzysztof Wilk Katedra Informatyki Stosowanej i Modelowania wilk@metal.agh.edu.pl Konsultacje: poniedziałek, 11.30-13; B-4, pok. 207 Systemy operacyjne Wykłady:
Systemy operacyjne na platformach mobilnych 2 Programowanie aplikacji z graficznym interfejsem użytkownika w GTK+
Systemy operacyjne na platformach mobilnych 2 Programowanie aplikacji z graficznym interfejsem użytkownika w GTK+ Prezentacja jest współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu
Dla klientów biznesowych Microsoft przygotował dwie wersje systemu Windows Vista, w zależności od wielkości i skali działalności organizacji:
Windows Vista - Edycje i wymagania Wstęp W porównaniu do 4 edycji systemu Windows XP (Starter, Home, Professional, Media Center), Microsoft oferuje aż 6 edycji systemu Windows Vista: 2 wersje biznesowe
RESPONSYWNE INTERFEJSY. Klasy urządzeń klienckich Responsywne style CSS. Waldemar Korłub
RESPONSYWNE Waldemar Korłub INTERFEJSY Klasy urządzeń klienckich Responsywne style CSS Wytwarzanie Aplikacji Internetowych KASK ETI Politechnika Gdańska Klasy urządzeń klienckich Desktopy z zewnętrznymi
PROCESOR Z ODBLOKOWANYM MNOŻNIKIEM!!! PROCESOR INTEL CORE I7 4790K LGA1150 BOX
amigopc.pl 883-364-274 SKLEP@AMIGOPC.PL PROCESOR INTEL CORE I7-4790K QUAD CORE, 4.00GHZ, 8MB, LGA1150, 22NM, 84W, VGA, BOX CENA: 1 473,00 PLN CZAS WYSYŁKI: 24H PRODUCENT: INTEL NUMER KATALOGOWY: BX80646I74790K
Wymagania systemowe dla Qlik Sense. Qlik Sense 3.1 Copyright QlikTech International AB. Wszelkie prawa zastrzeżone.
Wymagania systemowe dla Qlik Sense Qlik Sense 3.1 Copyright 1993-2016 QlikTech International AB. Wszelkie prawa zastrzeżone. Copyright 1993-2016 QlikTech International AB. Wszelkie prawa zastrzeżone. Qlik,
Tworzenie aplikacji Web Alicja Zwiewka. Page 1
Tworzenie aplikacji Web Alicja Zwiewka Page 1 Co to są web-aplikacje? Aplikacja internetowa (ang. web application) program komputerowy, który pracuje na serwerze i komunikuje się poprzez sieć komputerową
Wymagania systemowe dla Qlik Sense. Qlik Sense June 2017 Copyright QlikTech International AB. Wszelkie prawa zastrzeżone.
Wymagania systemowe dla Qlik Sense Qlik Sense June 2017 Copyright 1993-2017 QlikTech International AB. Wszelkie prawa zastrzeżone. Copyright 1993-2017 QlikTech International AB. Wszelkie prawa zastrzeżone.
i3: internet - infrastruktury - innowacje
i3: internet - infrastruktury - innowacje Wykorzystanie procesorów graficznych do akceleracji obliczeń w modelu geofizycznym EULAG Roman Wyrzykowski Krzysztof Rojek Łukasz Szustak [roman, krojek, lszustak]@icis.pcz.pl
SPECYFIKACJA TECHNICZNA OPROGRAMOWANIA
Synergia Tech Sp. z o.o. ul. Szachowa 1 04-894 Warszawa tel.: +48 (22) 512 83 99 fax: +48 (22) 872 08 26 e-mail: biuro@intelidom.pl http: www.intelidom.pl Szanowny Pan, Janusz Jabłonowski Instytut Informatyki
Laptop Lenovo IdeaPad V
Laptop Lenovo IdeaPad V110-115 CECHY PRODUKTU: Pojemność SSD: - do 250 GB Przekątna Ekranu - do 15.6" System Operacyjny - Windows 10 Typ Procesora - Intel Core i3 NOWOŚĆ W OFERCIE 2397.00 zł 2397.00 zł
ZAKRES TEMATYCZNY KONKURSU 3/1.2/2016/POIR PROGRAMU SEKTOROWEGO GAMEINN. A.1 Innowacyjne rozwiązania w zakresie projektowania modeli rozgrywki w grach
ZAKRES TEMATYCZNY KONKURSU 3/1.2/2016/POIR PROGRAMU SEKTOROWEGO GAMEINN Poziom w strukturze Kod Opis Obszar badawczy A Projektowanie i wzornictwo w zakresie gier wideo A.1 Innowacyjne rozwiązania w zakresie
SPOSOBY POMIARU KĄTÓW W PROGRAMIE AutoCAD
Dr inż. Jacek WARCHULSKI Dr inż. Marcin WARCHULSKI Mgr inż. Witold BUŻANTOWICZ Wojskowa Akademia Techniczna SPOSOBY POMIARU KĄTÓW W PROGRAMIE AutoCAD Streszczenie: W referacie przedstawiono możliwości
opracował Adam Nowiński
opracował Adam Nowiński Projekt Glass, czyli? projekt rozwijany przez firmę Google mający na celu stworzenie okularów rozszerzonej rzeczywistości. Okulary te mają docelowo mieć funkcje standardowego smartfona,
Dokumentacja projektu QUAIKE Architektura oprogramowania
Licencjacka Pracownia Oprogramowania Instytut Informatyki Uniwersytetu Wrocławskiego Jakub Kowalski, Andrzej Pilarczyk, Marek Kembrowski, Bartłomiej Gałkowski Dokumentacja projektu QUAIKE Architektura
Systemy na Chipie. Robert Czerwiński
Systemy na Chipie Robert Czerwiński Cel kursu Celem kursu jest zapoznanie słuchaczy ze współczesnymi metodami projektowania cyfrowych układów specjalizowanych, ze szczególnym uwzględnieniem układów logiki
Tworzenie i obsługa wirtualnego laboratorium komputerowego
Uniwersytet Mikołaja Kopernika Wydział Fizyki, Astronomii i Informatyki Stosowanej Michał Ochociński nr albumu: 236401 Praca magisterska na kierunku informatyka stosowana Tworzenie i obsługa wirtualnego
Wykład 2. Mikrokontrolery z rdzeniami ARM
Źródło problemu 2 Wstęp Architektura ARM (Advanced RISC Machine, pierwotnie Acorn RISC Machine) jest 32-bitową architekturą (modelem programowym) procesorów typu RISC. Różne wersje procesorów ARM są szeroko
Programowanie dla ios
Programowanie dla ios Trochę historii 1 kwietnia 1976 r. - zostaje założona firma Apple Computer Company przez Steve a Jobsa, Stevena Wozniaka i Ronalda Weyna a W lipcu 1976 rozpoczęłą się sprzedaż Apple
Twórz mobilne aplikacje biznesowe dzięki SAP Mobile Platform
Ogólna charakterystyka rozwiązania SAP Technologia SAP Mobilna platforma SAP Cele Twórz aplikacje biznesowe dzięki SAP Mobile Platform Wykorzystaj szanse, jakie dają technologie Wykorzystaj szanse, jakie