Windows Vista i DirectX 10 to największe
|
|
- Andrzej Laskowski
- 8 lat temu
- Przeglądów:
Transkrypt
1 Nowe technologie Marcin Duszyński Jacek Matulewski XNA zarządzana platforma dla gier Windows Vista i DirectX 10 to największe nowości tego roku. Razem z nimi udostępniona została nowa wersja platformy.net o numerze 3.0, która ma być w zamierzeniu Microsoft nowym oficjalnym interfejsem programistycznym systemów Windows (nowym WinAPI). O tych trzech produktach było głośno. Nieco mniej informacji w prasie można znaleźć o innej nowości, która stanowi pewnego rodzaju łącznik między powyższymi technologiami, a mianowicie o XNA. Marcin Duszyński student fizyki technicznej, specjalizacji informatyka stosowana na Wydziale Fizyki, Astronomii i Informatyki Stosowanej Uniwersytetu Mikołaja Kopernika w Toruniu. Interesuje się platformą.net i tematyką gier komputerowych. Programowaniem interesuje się od szkoły podstawowej, od kiedy dostał pierwszy komputer Commodore C64. Niedawno uzyskał tytuł inżyniera. Tytułem pracy było: Modelowanie funkcji trójwymiarowych z wykorzystaniem platformy XNA. Kontakt z autorem: m.w.duszynski.s01@fizyka.umk.pl Jacek Matulewski - Fizyk zajmujący się na co dzień optyką kwantową i układami nieuporządkowanymi na Wydziale Fizyki, Astronomii i Informatyki Stosowanej Uniwersytetu Mikołaja Kopernika w Toruniu. Jego specjalnością są symulacje ewolucji układów kwantowych oddziaływujących z silnym światłem lasera. Od 1998 interesuje się programowaniem dla systemu Windows, w szczególności w środowisku Borland C++Builder. Ostatnio zainteresowany platformą.net i językiem C#. Wierny użytkownik kupionego w połowie lat osiemdziesiątych "komputera osobistego" ZX Spectrum 48k. Kontakt z autorem: jacek@fizyka.umk.pl XNA Nowe podejście do programowania gier Pojawienie się XNA jest ciekawą informacją zarówno dla graczy, jak i dla programistów. Gracza powinien zainteresować potencjał jaki tkwi w przenaszalności XNA. Samo Microsoft przygotowuje platformę XNA dla systemu Windows z zainstalowanym.net Framework (komputery PC) oraz dla konsoli gier Xbox 360 wyposażonych w.net Compact Framework. Z tego wynika, że gry korzystające z XNA powinny być jednocześnie dostępne dla obu platform i rzeczywiście w tej chwili przenaszalność kodu jest niemal stuprocentowa. Niezależnie od Microsoft w ramach projektu Mono powstaje Mono.XNA Framework wieloplatformowy interfejs oparty na OpenGL i SDL. Można zatem przypuszczać, że zarządzane gry przygotowywane dla platformy XNA będą mogły być uruchamiane na niemal dowolnym komputerze oraz na niektórych konsolach. Także entuzjaści konsoli Sony Playstation 3, która przecież dopiero co pojawiła się na rynku, już próbują uruchamiać gry XNA na swoich zabawkach korzystając z Mono.XNA pracującego w systemie Linux. Wprawdzie cały projekt jest jeszcze we wstępnej fazie realizacji, w szczególności grafika 3D realizowana jest jeszcze programowo, a nie sprzętowo, ale to z pewnością tylko kwestia czasu, aby i na Playstation 3 można było bawić się grami dla platformy XNA. Nowe perspektywy dla programistów gier Natomiast programiści powinni być zainteresowani perspektywą wydajnego tworzenia kodu gier w języku C# dla platformy zarządzanej, jaką jest platforma XNA. Przypomnijmy sobie zalety platformy.net: zwiększone bezpieczeństwo, konsekwentna obiektowość, zmniejszenie rozmiaru plików wykonywalnych dzięki umieszczeniu zestawu klas i komponentów w bibliotekach samej platformy oraz przenośność kodu pośredniego. Te wszystkie zalety przejmuje także platforma XNA. Ponadto XNA daje dostęp do bibliotek zarządzanych klas pozwalających na tworzenie grafiki trójwymiarowej. XNA ma być w tym względzie spadkobiercą bardzo udanego interfejsu Managed DirectX (MDX)1. W tej chwili biblioteki XNA komunikują się z kartą graficzną za pośrednictwem DirectX, a w szczególności jego modułu Direct3D. Wraz z platformą XNA udostępnione zostają narzędzia programistyczne pozwalające na tworzenie gier dla nowej platformy. Microsoft opublikował dodatek do darmowego środowiska programistycznego Visual C# 2005 Express Edition o nazwie XNA Game Studio Express (XNA GSE). Można go nieodpłatnie pobrać ze strony xna/. Wersja darmowa ma ograniczone możliwości i zgodnie z deklaracjami producenta przeznaczona jest głównie dla amatorów chałupniczego programowania gier i studentów. Jednak już w tym roku ma zostać wydana profesjonalna edycja XNA GSE integrująca się z pełną wersją Visual Studio 2005, która umożliwiać będzie tworzenie komercyjnych gier zarówno dla systemów Windows, jak i dla konsol Xbox 360. Nie można oczywiście oczekiwać, aby ta wersja była darmowa, ale jej cena nie została jeszcze ogłoszona. Celem XNA GSE jest zmiana podejścia do tworzenia gier. Do tej pory z programowaniem gier wiązało się tak wiele trudnych kwestii technicznych, 48 Software Developer s Journal 12/2007
2 XNA zarządzana platforma dla gier Czym jest XNA? XNA to nowa platforma uruchomieniowa bazująca na dobrze znanej nam wszystkim platformie.net. Pozwala na uruchamianie nie byle jakich aplikacji, bo korzystających z trójwymiarowej grafiki gier komputerowych. Nieco upraszczając można powiedzieć, że z punktu widzenia użytkownika komputera XNA jest zoptymalizowaną pod gry równoległą odmianą platformy.net. Samej platformie, którą można bezpłatnie pobrać ze strony towarzyszą także bezpłatne narzędzia do tworzenia gier. Taki zestaw jest stymulatorem do natychmiastowego powstania i dynamicznego rozwoju społeczności programistów zainteresowanych nową platformą. I dlatego prawie natychmiast powstały strony udostępniające poradniki, oferujące przykładowe kody i gotowe gry. Można zatem powiedzieć, że XNA to już nie tylko nowa technologia, to także związana z nią społeczność zapaleńców programowania gier, a w szczególności gier korzystających z grafiki 3D. Rysunek 1. Prezentacja finalnej wersji XNA że nierzadko programiści gubiąc się w ich gąszczu tracili z oczu pierwotny pomysł gry i te trudne do zdefiniowania elementy, które wpływają na jej grywalność. Przez to publikowanych jest wiele gier z nowoczesną, ładnie wyglądającą grafiką, ale nieciekawych. XNA ma to zmienić w zasadniczy sposób. Dołączone do XNA klasy implementujące interfejsy do bibliotek generujących grafikę oraz dźwięk mają znakomicie ułatwić programowanie tej technicznej sfery gier, a to pozwoli na skupienie się na tym, co najważniejsze, a więc na projektowaniu świata i logiki gry. Korzystanie z udogodnień środowiska Visual C#, choćby podpowiadanie i uzupełnianie kodu oraz dołączona pełna dokumentacja wraz z przykładami, i same zalety języka C# dają gwarancje, że te obietnice Microsoft mogą mieć pokrycie w rzeczywistości. Wykorzystanie zarządzanej platformy i nowoczesnego języka C# niewątpliwie będą miały również wpływ na stabilność gry. Teraz gry pisane są zwykle w C++, który ma opinię wydajnego (szybkiego, potężnego), ale czasami niebezpiecznego, nawet w doświadczonych rękach. Potwierdza to ilość błędów w grach, nawet tych komercyjnych. W tej sytuacji wykorzystanie zabezpieczeń wpisanych w zarządzaną platformę i język C# jest przynajmniej godna rozważenia. Ponadto XNA GSE będzie wyposażona w dodatkowe narzędzia, które mają wspomóc publikowanie gier. Najczęściej wspomnianym jest mechanizm weryfikowania wykorzystywanych przez gry plików, który ma usuwać z gotowego pakietu gry te pliki, które nie są przez nią wykorzystywane. A tych podobno jest zwykle całkiem sporo (Microsoft podaje jako przykład swoją własną grę, która po weryfikacji znacznie schudła ). Architektura XNA Platforma XNA podzielona jest na moduły. Może lepszym terminem jest warstwy. Najbliżej sprzętu, na którym uruchamiana jest gra jest warstwa aplikacji. Odpowiada za inicjalizację urządzeń oddanych we władanie XNA oraz za obsługę jej biblioteki komponentów na danej platformie sprzętowej. Wyżej leży warstwa grafiki. W tej chwili opiera się na wspomaganym sprzętowo interfejsie Direct3D w wersji z DirectX 9.0c. W przeciwieństwie do zarządzanego DirectX (MDX 1.0), XNA bazuje na programowalnym potoku shaderów. To ozna- Listing 1. Pełen kod gry zawierający rozszerzenie klasy Game namespace XNA2D public class Game1 : Microsoft.Xna.Framework.Game Texture2D stexture; SpriteBatch sspritebatch; protected override void LoadGraphicsContent(bool loadallcontent) if (loadallcontent) sspritebatch = new SpriteBatch(this.graphics.Gr aphicsdevice); stexture = content.load<texture2d>("xna") as Texture2D; protected override void Draw(GameTime gametime) graphics.graphicsdevice.clear(color.cornflowerblue); sspritebatch.begin(spriteblendmode.alphablend); sspritebatch.draw(stexture, new Rectangle(0, 0, 100, 50), new Rectangle(0, 0, stexture.width, stexture.height), Color.White); sspritebatch.end(); base.draw(gametime); Software Developer s Journal 12/
3 Nowe technologie Co oznacza skrót XNA? Pewnie Czytelnik zastanawia się dlaczego dotąd nie podaliśmy rozwinięcia skrótu XNA. Po prostu dlatego, że go nie ma. W FAQ można znaleźć nawet żart jego twórców, którzy na pytanie o to co kryje się za XNA odpowiadają: XNA s Not Acronymed. cza, że do wygenerowania każdej, nawet najbardziej prostej sceny będziemy musieli przygotować program dla Vertex i Pixel Shaderów. Programy dla jednostek cieniowania tworzy się tak samo jak dotychczas, tzn. za pomocą języka HLSL (ang. High Level Shader Language). Jednak aby uprościć życie początkującym programistom Microsoft przygotowało zbiór gotowych programów zawarty w klasie BasicEffect, który oferuje podstawowy tryb renderowania sceny z wykorzystaniem tekstur oraz światła. Kolejna warstwa odpowiedzialna jest za dźwięk. Zadaniem programisty-dźwiękowca jest przygotowanie paczek efektów dźwiękowych, które platforma XNA potrafi obsługiwać. Może do tego wykorzystać aplikację Microsoft Cross-Platform Audio Creation Tool (w skrócie XACT). W owych paczkach zawarta jest informacja o poziomie głośności, parametrach miksowania kanałów i inne parametry audio. Rola programisty scalającego projekt polega w przypadku dźwięku jedynie na włączeniu takiej paczki do projektu aplikacji, wczytaniu jej w odpowiednim miejscu do pamięci i uruchomieniu dźwięku. Nie interesują już go szczegóły dotyczące dźwięku te informacje zawarte zostały już w paczkach dźwięków pochodzących z aplikacji XACT. Najbliżej gracza jest warstwa wyjścia, która jest wspólnym dla XNA w Windows i w Xbox 360 interfejsem obsługującym kontrolery wykorzystywane do kontroli aplikacji (klawiatura, mysz, gamepad). XNA dysponuje też warstwą pomocniczą, która zajmuje się przekształceniami matematycznymi, które intensywnie wykorzystywane są w grach i przy transformacjach trójwymiarowych scen. Dostępne są zatem typy implementujące wektory trójwymiarowe, macierze, płaszczyzny wraz z metodami odpowiedzialnymi za ich algebrę i przekształcenia. Ciekawie brzmi również zapowiedź dodania warstwy odpowiedzialnej za realistyczną symulację zjawisk fizycznych (np. wpływ grawitacji na zachowanie przedmiotów na scenie), która, jeżeli wiązałaby się ze wsparciem sprzętowym, mogłaby doprowadzić do poważnego przełomu w realizmie gier komputerowych. Przyszłość XNA Microsoft deklaruje, że bezpłatna wersja XNA przeznaczona jest przede wszystkim dla hobbystów i eksperymentujących z programowaniem studentów. Nie trudno się jednak domyślić, że prawdziwym przeznaczeniem, podobnie jak w przypadku darmowej wersji środowiska Visual C#, jest promocja profesjonalnej edycji planowanej na lato tego roku. Nie zmienia to jednak faktu, że XNA i XNA GSE są niezwykle ciekawym pomysłem, który warty jest uważnej obserwacji. Jest to technologia, która nadal jest w początkowej fazie rozwoju, ale możemy się spodziewać, że dzięki wsparciu Microsoft wkrótce zaczną powstawać przeznaczone na nią profesjonalnie przygotowane gry. Nawet obecna darmowa wersja XNA GSE umożliwia tworzenie gier, które robią bardzo dobre wrażenie. A przy tym są przenaszalne - można je uruchomić na Windows i Xbox 360 (a dzięki Mono.XNA także na innych systemach i konsolach). W przypadku Xbox kryje się tu jednak pewien haczyk. Po pierwsze każdy kto zechce uruchomić przygotowany w XNA GSE kod na tej konsoli musi należeć do XNA Creators Club, a członkostwo w klubie kosztuje 99 dolarów rocznie i jest dostępne tylko dla osób, które maja wykupiony dostęp do Xbox Live. Po dru- Listing 2. Kod wyświetlający model z pliku namespace XNA3D public class Game1 : Microsoft.Xna.Framework.Game Model mymodel; Vector3 cameraposition = new Vector3(0.0f, 50.0f, f); float aspectratio = 640.0f / 480.0f; Vector3 modelposition = Vector3.Zero; protected override void LoadGraphicsContent(bool loadallcontent) if (loadallcontent) mymodel = content.load<model>("content\\models\ \statek"); protected override void Draw(GameTime gametime) graphics.graphicsdevice.clear(color.cornflowerblue); foreach (ModelMesh mesh in mymodel.meshes) foreach (BasicEffect effect in mesh.effects) effect.enabledefaultlighting(); effect.world = Matrix.CreateTranslation(mod elposition); effect.view = Matrix.CreateLookAt(cameraPos ition, Vector3.Zero, Vector3.Up); effect.projection = Matrix.CreatePerspectiv efieldofview( MathHelper.ToRadians(45.0f),aspectRatio, 1.0f, f); mesh.draw(); 50 Software Developer s Journal 12/2007
4 XNA zarządzana platforma dla gier Rysunek 2. Pocket- Jongg na platformie XNA gie gra może być wgrana do konsoli tylko za pośrednictwem komputera wyposażonego w Windows XP SP2. Użytkownicy konsoli liczą, że z czasem Microsoft udostępni jakąś witrynę pozwalająca na swobodną wymianę napisanych przez hobbystów gier XNA, ale na razie nie ma żadnego sygnału z Redmond, aby te nadzieje miały jakieś realne podstawy. Rysunek 3. Dokumentacja XNA Game Studio Express Pierwszy kontakt z XNA Czas na spojrzenie na XNA od bardziej praktycznej strony. Spróbujmy przygotować prostą aplikację, która ograniczać będzie się w prawdzie do wyświetlania prostych obiektów, ale do tego skorzystamy z większości typowych mechanizmów, na które napotykamy we wszystkich projektach XNA. Jak już wcześniej wspomnieliśmy, do tworzenia własnych aplikacji uruchamianych w platformie XNA potrzebujemy Microsoft Visual C# 2005 Express Edition oraz XNA Game Studio Express. Po ich instalacji możemy uruchomić Visual C#, w którym tworzymy nowy projekt typu Windows Game. W ten sposób powstanie szkielet nowej aplikacji. Przy projektowaniu gier dla XNA korzystamy z wszystkich zalet środowiska programistycznego Microsoft. Oznacza to, że dysponujemy możliwością uzupełniania kodu, która jest szczególnie użyteczna w przypadku nowopoznawanych bibliotek, informacją o argumentach metod i dokumentacją. Ponadto projekt, który stworzyliśmy zawiera już wszystkie standardowe metody niezbędne przy tworzeniu gry korzystającej z grafiki w XNA. Są one opatrzone wyczerpującymi komentarzami. W najprostszym przypadku zadaniem programisty jest zatem jedynie wypełnienie tych metod kodem, który określi działanie gry. Metoda, która wykonywana jest jako pierwsza to Initialize. Odpowiada za inicjalizację stanu wykorzystywanych obiektów oraz za wykonanie czynności wstępnych np. wczytanie paczek z dźwiękami. Następnie, w celu dostarczenia obiektów graficznych zostanie wykonana metoda LoadGraphicsContent, która odpowiada za wczytanie obiektów 2D (np. tekstur) i 3D do pamięci. Oczywiście jest również metoda odpowiedzialna za usunięcie tych obiektów z UnloadGraphicsContent. Przy prostych aplikacjach nie jest wykorzystywana przez programistę, ponieważ platforma XNA, podobnie, jak platforma.net jest zarządzana, a więc za usuwanie obiektów odpowiedzialny jest wbudowany w platformę garbage collector. Metoda ta może być jednak użyta w projektach w znacznym stopniu wykorzystujących pamięć komputera, w których warto usuwać niepotrzebne dane z pamięci, aby przygotować miejsce dla nowych danych potrzebnych do wygenerowania kolejnej sceny. Nasza aplikacja, jak każda gra, musi oczywiście reagować na bodźce z zewnątrz. Ich obróbką zajmuje się metoda Update. Jej zadaniem jest uaktualnianie stanu obiektów i przetwarzanie poleceń z zewnątrz. Tym samym to w tej metodzie zawarta będzie logika gry odpowiedzialną za przetwarzanie danych wejściowych (klawiatura, myszka, gamepad) w dane wyjściowe, a więc w wyświetlany obraz, a tym samym odpowiada za komunikacje z graczem. Polecenia rysowania obiektów na scenie nie są jednak umieszcza- Verba docent, exempla trahunt Słowa uczą, przykłady pociągają. Zgodnie z tą ideą Microsoft udostępnił zbiór tak zwanych Starter Kits, a więc projektów gier XNA, których uważna analiza może być bardziej pouczająca niż studiowanie książek o nowej platformie. Jeden z takich projektów jest nawet dołączony do XNA Game Studio Express. Jest to Spacewar Starter Kit projekt dwuwymiarowej gry dla dwóch graczy. Inny ciekawy projekt o nazwie The Racing Game Starter Kit dostępny jest na stronie creators.xna.com. Jest to bardzo rozbudowana trójwymiarowa gra wyścigowa. Po spędzeniu kilku chwil na graniu, warto zajrzeć pod jej maskę, a może nawet pokusić się o jej rozbudowę lub modyfikację. Rysunek 4. Demo techniczne prezentujące możliwości XNA wykorzystujące silnik Torque X Software Developer s Journal 12/
5 Nowe technologie ne w metodzie Update obraz powinien być tworzony w odrębnej metodzie Draw, która na podstawie uaktualnionego stanu obiektów przygotowuję scenę. Metoda ta może być bardzo rozbudowana. Nawet pusty szkielet kodu utworzony przez kreator można skompilować. Spróbujmy. Wciśnijmy w tym celu magiczny przycisk F5. Po chwili powinniśmy zobaczyć niebieską planszę okno naszej pierwszej gry. Nie jest to oczywiście nic szczególnego, obraz jest w zasadzie pusty, ale już na starcie wyposażony w trójwymiarową przestrzeń. Zresztą już za chwilę umieścimy w tej przestrzeni pierwsze obiekty. Grafika 2D Pomimo, że dzisiejszych czasach już prawie wszyscy zapomnieli o grach z grafiką 2D, naszym zdaniem programista który wchodzi w obszar programowania gier, powinien choćby liznąć generowanie płaskich obiektów, szczególnie, że ich tworzenie jest łatwiejsze niż obsługa magnetowidu. Tego typu obiekty od dawien dawna (tj. od epoki Commodore C64) nazywane są sprite ami, co zwykle tłumaczy się jako duszki. Proces tworzenia dwuwymiarowego obiektu rozpoczynamy od wczytania tekstury jaką zostanie on pokryty. Służy do tego metoda Load obiektu typu ContentManager. Pozwala ona przypisać plik z teksturą do obiektu typu Texture- 2D. Dzięki temu możemy swobodnie manipulować i wyświetlać zawartość tekstury (Listing 1). Jeżeli dysponujemy tymi obiektami, możemy bez przeszkód wyświetlić obiekt wywołując metodę Draw na rzecz instancji klasy SpriteBatch. Jej parametrami są: instancja klasy Texture2D z przypisaną teksturą, prostokąt, na którym ma być wyświetlony obiekt, prostokąt wyznaczający fragment tekstury, który ma być użyty oraz tzw. kolor modulacji. W przypadku, gdy za kolor modulacji użyta jest biel, kolory tekstury wyświetlane są bez modyfikacji. Na płycie dołączonej do czasopisma znajduje się opisana powyżej aplikacja w rozszerzonej wersji, która nadaje się do samodzielnej analizy. Wydaje nam się, że prześledzenie jej działania więcej nauczy Czytelnika o tworzeniu gier 2D niż kilka stron tekstu. Nawet teraz widać jednak, że tworzenie grafiki dwuwymiarowej w XNA jest łatwe i szybkie. Dzięki temu możemy skupić się na pracy nad logiką gry. Rysunek 5. Wyświetlanie dwuwymiarowego obiektu z teksturą Rysunek 6. Obiekt trójwymiarowy Grafika 3D Uznajmy, że grafikę 2D mamy już oswojoną. Możemy zatem wkroczyć w wirtualny świat trzech wymiarów. Siłą rzeczy w tym artykule, którego jedynym celem jest tylko zaprezentowanie nowej technologii, ograniczymy się do bardzo skromnego wstępu. Temat tworzenia gier 3D w XNA jest bowiem niemal nie do wyczerpania. Jednak, o czym zdążyliśmy się już przekonać, praca z XNA jest bardzo efektywna, ciekawe efekty możemy uzyskać już za pomocą kilku linii kodu. Taki będzie nasz przykład gry 3D. Sama filozofia tworzenia i wyświetlania obiektów 3D nie różni się bardzo od tworzenia sprite ów. Musimy jednak dysponować plikiem modelu, tj. plikiem zawierającym opis trójwymiarowego obiektu łącznie z teksturami, który chcemy pokazać na scenie. Plik ten dodajemy do projektu (okno Solution Explorer) jako Content Pipeline. Aby wczytać ów obiekt do pamięci po uruchomieniu gry, należy użyć instancji klasy ContentManager, a dokładnie jej metody Load. Po tym możemy go po prostu wyświetlić metodą Draw. Cały proces wygenerowania modelu na scenie zawarty jest w kodzie widocznym na Listingu 2. Jeśli pracujemy z plikami standardowo obsługiwanymi przez Content Pipeline, cała odpowiedzialność za wczytanie i obsługę tekstur modelu spoczywa na środowisku XNA. Takimi formatami plików są na przykład.fbx,.x lub.png. Mniej przyjemnie jest, jeżeli dysponujemy plikiem, który nie jest obsługiwany przez XNA. Wówczas to na programistę spada obowiązek przygotowania kodu wczytującego i interpretującego jego zawartość. Jednak zanim rozpoczniemy pisanie odpowiedniego kodu, warto sprawdzić, czy nie został on już przygotowany przez członków bardzo prężnej społeczności miłośników XNA. Już teraz są dostępne w Internecie, oczywiście gratis, komponenty do XNA, w tym komponenty rozszerzające obsługę formatów graficznych przez Content Pipeline. Wyświetlenie obiektu (w naszym przypadku statku kosmicznego Rysunek 6), to jedno, a jego ruch to zupełnie osobna sprawa. Listing 2. zawiera wyłącznie kod wyświetlający model z pliku. Jeżeli Czytelnik chce dowiedzieć się, w jaki sposób nim poruszać, może przyjrzeć się projektowi umieszczonemu na CD dołączonym do czasopisma, w którym projekt trójwymiarowej gry został rozszerzony o możliwość kierowania statkiem kosmicznym i efekty dźwiękowe. Możemy jednak zapewnić, że nie jest to bardziej skomplikowane niż 52 Software Developer s Journal 12/2007
6 W Sieci oficjalna strona XNA w witrynie Microsoft polska strona poświęcona platformie XNA strony z poradnikami uczącymi XNA witryna projektu Mono.XNA witryna dla projektantów gier XNA wiadomości i nowinki ze świata XNA to, czym zajmowaliśmy się do tej pory. Dwa opisane powyżej proste projekty aplikacji XNA miały Czytelnika przekonać, że programowanie gier w nowej platformie Microsoft jest łatwiejsze niż korzystając z Win32 i DirectX. Mam nadzieję, że nam to się udało i że polskie środowisko programistów doceni nową możliwość i amatorskie gry dla XNA zaczną powstawać także w naszym kraju. Podsumowanie XNA cały czas ewoluuje powiększając jednocześnie grono swoich zwolenników. Niedawno Microsoft ogłosił, że do nadchodzącego wydania XNA 2.0 doda obsługę komunikacji sieciowej (zarówno w wersji na blaszaka, jak i Xbox 360). Wszystkie społeczności internetowe skupione wokół XNA wyczekują na szczegóły odnośnie implementacji nowej usługi na konsoli bo do tej pory w ogóle nie było na tej platformie żadnego mechanizmu udostępniającego taką funkcjonalność. Kolejną niespodzianką jest rezygnacja z opłat za narzędzia developerskie pozwalające na rozwijanie kodu dla XNA w Visual Studio (także w pełnej wersji Professional). Wydaje się jasne, że łączy się to z zapowiadaną promocją XNA także jako narzędzia do profesjonalnego tworzenia gier komercyjnych. Byłoby to doskonałym remedium na stale rosnący koszt gier i być może przełożyłoby się także na cenę końcowego produktu, ale to ostatnie zostanie pewnie tylko naszym niespełnionym marzeniem. Mimo wszystko mam nadzieję, że za parę lat będzie powstawać dużo ciekawych gier komputerowych bazujących właśnie na XNA Framework, co przełoży sie nie tylko na ich jakość, ale także stabilność - spory problem dzisiejszych gier działających na platformie Win32 i DirectX. Chociaż XNA nie jest jeszcze rozwiązaniem idealnym, to udostępnia szybką i bezpieczną bazę dla tworzenia gier komputerowych. Wieloplatformowość i bezpłatne udostępnianie środowiska oraz aplikacji dodatkowych, w tym developerskich, powoduje, że XNA zdobywa coraz większą popularność. Dzięki swojej prostocie i dostępności jest to idealne rozwiązanie dla studentów, uczelni i małych firm programistycznych. Nie ponosząc żadnych nakładów finansowych dostajemy zaawansowane środowisko oraz rozbudowaną i uniwersalna bazę dla naszych gier komputerowych i innych aplikacji korzystających z grafiki 3D. Ponadto za pośrednictwem wielu stron internetowych możemy nieodpłatnie pobrać gotowe komponenty, które rozszerzają możliwości XNA i dodatkowo skracają czas poświęcany na przygotowanie kodu aplikacji lub gry. Cała funkcjonalność XNA przekłada się na oszczędność czasu oraz pieniędzy. Software Developer s Journal 12/2007
Systemy wirtualnej rzeczywistości. Komponenty i serwisy
Uniwersytet Zielonogórski Instytut Sterowania i Systemów Informatycznych Systemy wirtualnej rzeczywistości Laboratorium Komponenty i serwisy Wstęp: W trzeciej części przedstawione zostaną podstawowe techniki
Bardziej szczegółowoGrafika 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
Bardziej szczegółowoMonoGame. 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
Bardziej szczegółowoProgramowanie dla początkujących w 24 godziny / Greg Perry, Dean Miller. Gliwice, cop Spis treści
Programowanie dla początkujących w 24 godziny / Greg Perry, Dean Miller. Gliwice, cop. 2017 Spis treści O autorach 11 Podziękowania 12 Wprowadzenie 13 CZĘŚĆ I ZACZNIJ PROGRAMOWAĆ JUŻ DZIŚ Godzina 1. Praktyczne
Bardziej szczegółowoSYSTEMY 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
Bardziej szczegółowoKró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ą
Bardziej szczegółowoZastosowania Robotów Mobilnych
Zastosowania Robotów Mobilnych Temat: Zapoznanie ze środowiskiem Microsoft Robotics Developer Studio na przykładzie prostych problemów nawigacji. 1) Wstęp: Microsoft Robotics Developer Studio jest popularnym
Bardziej szczegółowoUniwersytet Mikołaja Kopernika. Wydział Matematyki i Informatyki Wydział Fizyki, Astronomii i Informatyki Stosowanej
Uniwersytet Mikołaja Kopernika Wydział Matematyki i Informatyki Wydział Fizyki, Astronomii i Informatyki Stosowanej Marcin HENRYKOWSKI Nr albumu: 158069 Praca magisterska na kierunku Informatyka Archiwizacja
Bardziej szczegółowoSystem 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
Bardziej szczegółowoSZYBKO ZROZUMIEĆ VISUAL BASIC 2012 Artur Niewiarowski -
S t r o n a 2 SZYBKO ZROZUMIEĆ VISUAL BASIC 2012 Artur Niewiarowski - Copyright by Artur Niewiarowski 2013 ISBN: 978-83-937802-0-4 - Artur Niewiarowski Self-Publishing - All rights reserved. Wszelkie prawa
Bardziej szczegółowoDariusz 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
Bardziej szczegółowoPolitechnika Poznańska, Instytut Informatyki, SUM-TWO
Politechnika Poznańska, Instytut Informatyki, SUM-TWO 11 kwietnia 2015 Historia DirectX Gry pod DOS korzystały z własnych bibliotek graficznych. Pierwsze wersje Windows umożliwiały tworzenie grafiki tylko
Bardziej szczegółowoD O K U M E N T A C J A
Państwowa Wyższa Szkoła Zawodowa w Tarnowie Instytut Politechniczny Informatyka Stosowana III r. D O K U M E N T A C J A Snake 3D Piotr Gębiś Paweł Gładysz Dokumentacja do projektu Snake 3D. W dokumencie
Bardziej szczegółowoCzym jest wykrywanie kolizji. Elementarne metody detekcji kolizji. Trochę praktyki: Jak przygotować Visual Studio 2010 do pracy z XNA pod Windows
Czym jest wykrywanie kolizji. Elementarne metody detekcji kolizji. Trochę praktyki: Jak przygotować Visual Studio 2010 do pracy z XNA pod Windows Phone 7. Skąd i jakie paczki pobrać. Coś napiszemy :-)
Bardziej szczegółowoLaboratorium 1 Temat: Przygotowanie środowiska programistycznego. Poznanie edytora. Kompilacja i uruchomienie prostych programów przykładowych.
Laboratorium 1 Temat: Przygotowanie środowiska programistycznego. Poznanie edytora. Kompilacja i uruchomienie prostych programów przykładowych. 1. Przygotowanie środowiska programistycznego. Zajęcia będą
Bardziej szczegółowoWykład 8: klasy cz. 4
Programowanie obiektowe Wykład 8: klasy cz. 4 Dynamiczne tworzenie obiektów klas Składniki statyczne klas Konstruktor i destruktory c.d. 1 dr Artur Bartoszewski - Programowanie obiektowe, sem. 1I- WYKŁAD
Bardziej szczegółowoPodczas dziedziczenia obiekt klasy pochodnej może być wskazywany przez wskaźnik typu klasy bazowej.
Polimorfizm jest filarem programowania obiektowego, nie tylko jeżeli chodzi o język C++. Daje on programiście dużą elastyczność podczas pisania programu. Polimorfizm jest ściśle związany z metodami wirtualnymi.
Bardziej szczegółowoMiędzyplatformowy interfejs systemu FOLANessus wykonany przy użyciu biblioteki Qt4
Uniwersytet Mikołaja Kopernika w Toruniu Wydział Matematyki i Informatyki Wydział Fizyki, Astronomii i Informatyki Stosowanej Agnieszka Holka Nr albumu: 187396 Praca magisterska na kierunku Informatyka
Bardziej szczegółowoCzym jest Java? Rozumiana jako środowisko do uruchamiania programów Platforma software owa
1 Java Wprowadzenie 2 Czym jest Java? Język programowania prosty zorientowany obiektowo rozproszony interpretowany wydajny Platforma bezpieczny wielowątkowy przenaszalny dynamiczny Rozumiana jako środowisko
Bardziej szczegółowoBiorąc udział w projekcie, możesz wybrać jedną z 8 bezpłatnych ścieżek egzaminacyjnych:
Egzaminy na plus Stres na minus! Zdawaj bezpłatne egzaminy Microsoft, Linux, C++ z nami i zadbaj o swoją karierę. Oferujemy Ci pierwsze certyfikaty zawodowe w Twojej przyszłej karierze, które idealnie
Bardziej szczegółowoPodstawy programowania. Wprowadzenie
Podstawy programowania Wprowadzenie Proces tworzenia programu Sformułowanie problemu funkcje programu zakres i postać danych postać i dokładność wyników Wybór / opracowanie metody rozwiązania znaleźć matematyczne
Bardziej szczegółowo9.1.2. Ustawienia personalne
9.1.2. Ustawienia personalne 9.1. Konfigurowanie systemu Windows Systemy z rodziny Windows umożliwiają tzw. personalizację ustawień interfejsu graficznego poprzez dostosowanie wyglądu pulpitu, menu Start
Bardziej szczegółowoProgramowanie telefonów z Windows Phone 7, cz. 3
Programowanie telefonów z Windows Phone 7, cz. 3 Piotr M. Szczypiński Instytut Elektroniki Politechniki Łódzkiej http://www.eletel.p.lodz.pl/pms/ piotr.szczypinski@p.lodz.pl Budynek B9, II piętro, pokój
Bardziej szczegółowoReferat Pracy Dyplomowej
Referat Pracy Dyplomowej Team Pracy: Projekt i realizacja gry w technologii HTML5 z wykorzystaniem interfejsu programistycznego aplikacji Facebook Autor: Adam Bartkowiak Promotor: dr inż. Roman Simiński
Bardziej szczegółowoPROGRAM MICROSOFT DEVELOPER NETWORK ACADEMIC ALLIANCE MSDN AA
PROGRAM MICROSOFT DEVELOPER NETWORK ACADEMIC ALLIANCE MSDN AA Wydział Matematyczno-Przyrodniczy Szkoła Nauk Ścisłych Koło Naukowe Informatyków FRAKTAL Opracował : Michał Wójcik, II rok MU IiE CZYM JEST
Bardziej szczegółowoInformacje ogólne. Karol Trybulec p-programowanie.pl 1. 2 // cialo klasy. class osoba { string imie; string nazwisko; int wiek; int wzrost;
Klasy w C++ są bardzo ważnym narzędziem w rękach programisty. Klasy są fundamentem programowania obiektowego. Z pomocą klas będziesz mógł tworzyć lepszy kod, a co najważniejsze będzie on bardzo dobrze
Bardziej szczegółowoImplementacja aplikacji sieciowych z wykorzystaniem środowiska Qt
Implementacja aplikacji sieciowych z wykorzystaniem środowiska Qt 1. Wprowadzenie Wymagania wstępne: wykonanie ćwiczeń Adresacja IP oraz Implementacja aplikacji sieciowych z wykorzystaniem interfejsu gniazd
Bardziej szczegółowoProgramowanie aplikacji na iphone. Wstęp do platformy ios. Łukasz Zieliński
Programowanie aplikacji na iphone. Wstęp do platformy ios. Łukasz Zieliński Plan Prezentacji. Programowanie ios. Jak zacząć? Co warto wiedzieć o programowaniu na platformę ios? Kilka słów na temat Obiective-C.
Bardziej szczegółowoPRZEWODNIK PO PRZEDMIOCIE
Nazwa przedmiotu: Kierunek: Informatyka Rodzaj przedmiotu: obowiązkowy na specjalności: Inżynieria oprogramowania Rodzaj zajęć: wykład, laboratorium I KARTA PRZEDMIOTU CEL PRZEDMIOTU PRZEWODNIK PO PRZEDMIOCIE
Bardziej szczegółowoProgramowanie w C. dr inż. Stanisław Wszelak
Programowanie w C dr inż. Stanisław Wszelak Przeszłość i przyszłość składni programowania w C Ken Thompson Denis Ritchie Bjarne Stoustrup Zespoły programistów B C C++ C# 1969 rok Do SO UNIX 1972 rok C++
Bardziej szczegółowoInformatyka I stopień (I stopień / II stopień) Ogólnoakademicki (ogólno akademicki / praktyczny)
Załącznik nr 7 do Zarządzenia Rektora nr 10/12 z dnia 21 lutego 2012r. KARTA MODUŁU / KARTA PRZEDMIOTU Kod Nazwa Nazwa w języku angielskim Obowiązuje od roku akademickiego 2012/2013 Programy grafiki rastrowej,
Bardziej szczegółowoTworzenie 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
Bardziej szczegółowoWykład 5: Klasy cz. 3
Programowanie obiektowe Wykład 5: cz. 3 1 dr Artur Bartoszewski - Programowanie obiektowe, sem. 1I- WYKŁAD - podstawy Konstruktor i destruktor (część I) 2 Konstruktor i destruktor KONSTRUKTOR Dla przykładu
Bardziej szczegółowoINFORMATYKA TECHNICZNA Badanie możliwości wykorzystania języka AutoLISP i środowiska VisualLISP w systemie CAx
INFORMATYKA TECHNICZNA Badanie możliwości wykorzystania języka AutoLISP i środowiska VisualLISP w systemie CAx 1. WPROWADZENIE Program AutoCAD ma wielu użytkowników i zajmuje znaczące miejsce w graficznym
Bardziej szczegółowoGry 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
Bardziej szczegółowoWpisany przez Mateusz Ponikowski Czwartek, 01 Listopad 2012 11:37 - Zmieniony Czwartek, 01 Listopad 2012 14:42
Jeżeli posiadasz komputer z oryginalnym systemem Windows może za niewielkie pieniądze cieszyć się najnowszą edycją "okienek". Microsoft przygotował preferencyjne warunki dla użytkownicy którzy chcąc przesiąść
Bardziej szczegółowoSpis treści. Rozdział 1. Aplikacje konsoli w stylu ANSI C i podstawowe operacje w Visual C++... 7
Spis treści Wprowadzenie...n...n... 5 Jak korzystać z tej książki?...t... 6 Rozdział 1. Aplikacje konsoli w stylu ANSI C i podstawowe operacje w Visual C++... 7 Podsumowanie...t...t...15 Rozdział 2. Rozdział
Bardziej szczegółowoKarta 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
Bardziej szczegółowoZacznij Tu! Poznaj Microsoft 2012. Visual Basic. Michael Halvorson. Przekład: Joanna Zatorska
Zacznij Tu! Poznaj Microsoft 2012 Visual Basic Michael Halvorson Przekład: Joanna Zatorska APN Promise, Warszawa 2013 Spis treści Wstęp...................................................................vii
Bardziej szczegółowoMikołaj Kania Waldemar Korłub Jakub Krajewski
Mikołaj Kania Waldemar Korłub Jakub Krajewski Wprowadzenie do projektowania gry strategicznej w oparciu o XNA Framework Mobilizacja Nasibu Isle XNA Framework Wirtualny świat rozgrywki Elementy 2D Elementy
Bardziej szczegółowoProcesowa specyfikacja systemów IT
Procesowa specyfikacja systemów IT BOC Group BOC Information Technologies Consulting Sp. z o.o. e-mail: boc@boc-pl.com Tel.: (+48 22) 628 00 15, 696 69 26 Fax: (+48 22) 621 66 88 BOC Management Office
Bardziej szczegółowoRys. 1. Główne okno programu QT Creator. Na rysunku 2 oznaczone zostały cztery przyciski, odpowiadają kolejno następującym funkcjom:
1. QT creator, pierwsze kroki. Qt Creator wieloplatformowe środowisko programistyczne dla języków C++, JavaScript oraz QML, będące częścią SDK dla biblioteki Qt. Zawiera w sobie graficzny interfejs dla
Bardziej szczegółowoTWORZENIE PREZENTACJI MS POWERPOINT
TWORZENIE PREZENTACJI MS POWERPOINT Wstęp TWORZENIE PREZENTACJI MS POWERPOINT Czasami zdarza się, że zostajemy poproszeni o poprowadzenia spotkania czy szkolenia w firmie, w której pracujemy lub po prostu
Bardziej szczegółowoProgramowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat
Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Program, to lista poleceń zapisana w jednym języku programowania zgodnie z obowiązującymi w nim zasadami. Celem programu jest przetwarzanie
Bardziej szczegółowoCechy systemu X Window: otwartość niezależność od producentów i od sprzętu, dostępny kod źródłowy; architektura klient-serwer;
14.3. Podstawy obsługi X Window 14.3. Podstawy obsługi X Window W przeciwieństwie do systemów Windows system Linux nie jest systemem graficznym. W systemach Windows z rodziny NT powłokę systemową stanowi
Bardziej szczegółowoPierwszy projekt. Na początku warto wspomnieć, że program WebSite X5 dostępy jest w 3 wariantach: Start, Evolution oraz Professional
Projektowanie stron może być proste? Sprawdzamy. {reklama-artykul} Tworzenie stron internetowych to w teorii zagadnienie skomplikowane, często wymagające zaawansowanej wiedzy z dziedziny programowania.
Bardziej szczegółowoWorld Wide Web? rkijanka
World Wide Web? rkijanka World Wide Web? globalny, interaktywny, dynamiczny, wieloplatformowy, rozproszony, graficzny, hipertekstowy - system informacyjny, działający na bazie Internetu. 1.Sieć WWW jest
Bardziej szczegółowoREFERAT PRACY DYPLOMOWEJ Temat pracy: SUDOKU - Algorytmy tworzenia i rozwiązywania
REFERAT PRACY DYPLOMOWEJ Temat pracy: SUDOKU - Algorytmy tworzenia i rozwiązywania Autor: Anna Nowak Promotor: dr inż. Jan Kowalski Kategorie: gra logiczna Słowa kluczowe: Sudoku, generowanie plansz, algorytmy,
Bardziej szczegółowo16) Wprowadzenie do raportowania Rave
16) Wprowadzenie do raportowania Rave Tematyka rozdziału: Przegląd wszystkich komponentów Rave Tworzenie nowego raportu przy użyciu formatki w środowisku Delphi Aktywacja środowiska Report Authoring Visual
Bardziej szczegółowoProgramowanie gier 3D w HTML5. Andrzej P.Urbański Politechnika Poznańska
Programowanie gier 3D w HTML5 Andrzej P.Urbański Politechnika Poznańska Moje marzenie Od dawna jest znany pakiet Open GL napisany w C++ i bardzo ułatwiający tworzenie gier 3D Zaproponowałem kiedyś jako
Bardziej szczegółowo5.4. Tworzymy formularze
5.4. Tworzymy formularze Zastosowanie formularzy Formularz to obiekt bazy danych, który daje możliwość tworzenia i modyfikacji danych w tabeli lub kwerendzie. Jego wielką zaletą jest umiejętność zautomatyzowania
Bardziej szczegółowoI. WSTĘP. Przykład 1. Przykład 2. Programowanie czyli tworzenie programów komputerowych (aplikacji komputerowych)
I. WSTĘP Programowanie czyli tworzenie programów komputerowych (aplikacji komputerowych) Algorytm - sposób na osiągnięcie celu w pewnych ograniczonych krokach. Program komputerowy realizuje zawsze algorytm.
Bardziej szczegółowoWebowy generator wykresów wykorzystujący program gnuplot
Uniwersytet Mikołaja Kopernika Wydział Fizyki, Astronomii i Informatyki Stosowanej Marcin Nowak nr albumu: 254118 Praca inżynierska na kierunku informatyka stosowana Webowy generator wykresów wykorzystujący
Bardziej szczegółowoKomputerowe Systemy Przemysłowe: Modelowanie - UML. Arkadiusz Banasik arkadiusz.banasik@polsl.pl
Komputerowe Systemy Przemysłowe: Modelowanie - UML Arkadiusz Banasik arkadiusz.banasik@polsl.pl Plan prezentacji Wprowadzenie UML Diagram przypadków użycia Diagram klas Podsumowanie Wprowadzenie Języki
Bardziej szczegółowoGRY KOMPUTEROWE 3D OpenGL DirectX Ogre3D Crystal Space ClanLib Irrlicht SDL Ardor3D jmonkey Engine GRY KOMPUTEROWE 2D ORX Troll2D
GRY KOMPUTEROWE 3D 1. Napisać grę komputerową 3D o dowolnej tematyce oraz dowolnego rodzaju z wykorzystaniem OpenGL (bez dodatkowych framework'ów). Mile widziane dodatkowe efekty graficzne oraz dźwiękowe.
Bardziej szczegółowoAplikacje w środowisku VBA. Visual Basic for Aplications
Aplikacje w środowisku VBA Visual Basic for Aplications Podstawowe informacje o VBA Visual Basic for Aplications, w skrócie VBA, to język programowania rozwijany przez Microsoft, którego zastosowanie pozwala
Bardziej szczegółowoSPOSOBY 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
Bardziej szczegółowoTemat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych
PAŃSTWOWA WYŻSZA SZKOŁA ZAWODOWA W ELBLĄGU INSTYTUT INFORMATYKI STOSOWANEJ Sprawozdanie z Seminarium Dyplomowego Temat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych
Bardziej szczegółowoGarmin w pockecie? Czemu nie. dr@doktorski.net
Garmin w pockecie? Czemu nie. dr@doktorski.net Coraz większa liczba producentów oferuje urządzenia typu PDA z wbudowanym odbiornikiem GPS a część użytkowników bezgpsowych urządzeń PDA rozbudowuje je o
Bardziej szczegółowoBaza danych sql. 1. Wprowadzenie. 2. Repozytaria generyczne
Baza danych sql 1. Wprowadzenie Do tej pory operowaliście na listach. W tej instrukcji pokazane zostanie jak stworzyć bazę danych. W zadaniu skorzystamy z możliwości utworzenia struktury bazy danych z
Bardziej szczegółowoKomputer nie myśli. On tylko wykonuje nasze polecenia. Nauczmy się więc wydawać mu rozkazy
Programowanie w C++ 1.Czym jest programowanie Pisanie programów to wcale nie czarna magia, tylko bardzo logiczna rozmowa z komputerem. Oczywiście w jednym ze specjalnie stworzonych do tego celu języków.
Bardziej szczegółowoPolitechnika Krakowska im. Tadeusza Kościuszki. Karta przedmiotu. obowiązuje studentów rozpoczynających studia w roku akademickim 2018/2019
Politechnika Krakowska im. Tadeusza Kościuszki Karta przedmiotu Wydział Inżynierii Lądowej obowiązuje studentów rozpoczynających studia w roku akademickim 2018/2019 Kierunek studiów: Transport Forma sudiów:
Bardziej szczegółowoUnity 2D - prosta gra
www.math.uni.lodz.pl/ radmat Cel ćwiczeń Celem bieżących ćwiczeń jest stworzenie prostej gry 2D. Prosta gra Stworzymy prostą grę, w której będziemy sterować pojazdem kosmicznym i będziemy mogli strzelać
Bardziej szczegółowoNiezwykłe tablice Poznane typy danych pozwalają przechowywać pojedyncze liczby. Dzięki tablicom zgromadzimy wiele wartości w jednym miejscu.
Część XIX C++ w Każda poznana do tej pory zmienna może przechowywać jedną liczbę. Jeśli zaczniemy pisać bardziej rozbudowane programy, okaże się to niewystarczające. Warto więc poznać zmienne, które mogą
Bardziej szczegółowoe-awizo SYSTEM POTWIERDZANIA DORĘCZEŃ POCZTY ELEKTRONICZNEJ
e-awizo SYSTEM POTWIERDZANIA DORĘCZEŃ POCZTY ELEKTRONICZNEJ www.e-awizo.pl BrainSoft sp. z o. o. ul. Bolesława Chrobrego 14/2 65-052 Zielona Góra tel.68 455 77 44 fax 68 455 77 40 e-mail: biuro@brainsoft.pl
Bardziej szczegółowoPREZENTACJE MULTIMEDIALNE cz.2
Wydział Elektryczny Katedra Elektrotechniki Teoretycznej i Metrologii Instrukcja do pracowni z przedmiotu Podstawy Informatyki Kod przedmiotu: TS1C 100 003 Ćwiczenie pt. PREZENTACJE MULTIMEDIALNE cz.2
Bardziej szczegółowoPLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ),
PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ), Program 351203 Opracowanie: Grzegorz Majda Tematyka zajęć 2. Przygotowanie środowiska pracy
Bardziej szczegółowoPDM wbudowany w Solid Edge
PDM wbudowany w Solid Edge Firma GM System Integracja Systemów Inżynierskich Sp. z o.o. została założona w 2001 roku. Zajmujemy się dostarczaniem systemów CAD/CAM/CAE/PDM. Jesteśmy jednym z największych
Bardziej szczegółowo1.Wstęp. 2.Generowanie systemu w EDK
1.Wstęp Celem niniejszego ćwiczenia jest zapoznanie z możliwościami debuggowania kodu na platformie MicroBlaze oraz zapoznanie ze środowiskiem wspomagającym prace programisty Xilinx Platform SDK (Eclipse).
Bardziej szczegółowoPROGRAMOWANIE DLA KAŻDEGO
Program pilotażowy dotyczący wprowadzenia nauki programowania w szkole PROGRAMOWANIE DLA KAŻDEGO Szkoła Podstawowa im. Mikołaja Kopernika w Sławkowie 1. W roku szkolnym 2016/2017 wprowadziliśmy do klas
Bardziej szczegółowobiegle i poprawnie posługuje się terminologią informatyczną,
INFORMATYKA KLASA 1 1. Wymagania na poszczególne oceny: 1) ocenę celującą otrzymuje uczeń, który: samodzielnie wykonuje na komputerze wszystkie zadania z lekcji, wykazuje inicjatywę rozwiązywania konkretnych
Bardziej szczegółowoJęzyki i paradygmaty programowania - 1
doc. dr inż. Tadeusz Jeleniewski e-mail: t.jeleniewski@neostrada.pl tadeusz.jeleniewski@pwr.edu.pl http://www.tjeleniewski.wstt.edu.pl Cele przedmiotu Umiejętność zastosowania i oceny przydatności paradygmatów
Bardziej szczegółowoModelowanie Informacji o Budynku (BIM)
Modelowanie Informacji o Budynku (BIM) Główne obiekty BIM www.akademiamiedzi.pl Europejski Instytut Miedzi ul. św. Mikołaja 8-11 50-125 Wrocław e-mail: biuro@instytutmiedzi.pl tel.: (+48) 71 78 12 502
Bardziej szczegółowoWykład I. Wprowadzenie do baz danych
Wykład I Wprowadzenie do baz danych Trochę historii Pierwsze znane użycie terminu baza danych miało miejsce w listopadzie w 1963 roku. W latach sześcdziesątych XX wieku został opracowany przez Charles
Bardziej szczegółowoWykł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
Bardziej szczegółowoPlatformy Programowania
Platformy Programowania Ćwiczenie 1 4 x Hello World! Środowisko programistyczne, w którym będziemy pracować do wakacji: Microsoft Visual Studio 2010 Profesional 1. Utwórz aplikację konsolową. Po uruchomieniu
Bardziej szczegółowoMiniaturowy rejestrator AUDIO-VIDEO, Video grabber HDMI, nagrywarka HDMI, streaming, id4mobile GrabberHD
MDH System Strona 1 MDH-SYSTEM ul. Bajkowa 5, Lublin tel./fax.81-444-62-85 lub kom.693-865-235 e mail: info@mdh-system.pl Miniaturowy rejestrator AUDIO-VIDEO, Video grabber HDMI, nagrywarka HDMI, streaming,
Bardziej szczegółowoPlan 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
Bardziej szczegółowoZintegrowany system usług certyfikacyjnych. Dokumentacja użytkownika. Obsługa wniosków certyfikacyjnych i certyfikatów. Wersja dokumentacji 1.
Dokumentacja użytkownika Zintegrowany system usług certyfikacyjnych Obsługa wniosków certyfikacyjnych i certyfikatów Wersja dokumentacji 1.05 Unizeto Technologies SA - www.unizeto.pl Autorskie prawa majątkowe
Bardziej szczegółowoUtworzenie pliku. Dowiesz się:
Dowiesz się: 1. Jak rozpocząć pisanie programu 2. Jak wygląda szkielet programu, co to są biblioteki i funkcja main() 3. Jak wyświetlić ciąg znaków w programie 4. Jak uruchamiać (kompilować) napisany program
Bardziej szczegółowoJęzyki i paradygmaty programowania doc. dr inż. Tadeusz Jeleniewski
Języki i paradygmaty programowania doc. dr inż. Tadeusz Jeleniewski e-mail: t.jeleniewski@neostrada.pl tadeusz.jeleniewski@pwr.wroc.pl http://www.tjeleniewski.wstt.edu.pl Treści kształcenia: Paradygmaty
Bardziej szczegółowoTworzenie 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ą
Bardziej szczegółowoŚrodowiska i platformy programistyczne
Środowiska i platformy programistyczne 1 Rys historyczny lata 80-90: efektywność! Cel: zwiększyć efektywność programisty jedno narzędzie: integracja edytor kodu, funkcje programistyczne (kompilacja, łączenie,
Bardziej szczegółowoREFERAT O PRACY DYPLOMOWEJ
REFERAT O PRACY DYPLOMOWEJ Temat pracy: Projekt i realizacja elektronicznego dziennika ocen ucznia Autor: Grzegorz Dudek wykonanego w technologii ASP.NET We współczesnym modelu edukacji, coraz powszechniejsze
Bardziej szczegółowoMATERIAŁY DO ZAJĘĆ I. Podstawowe pojęcia. Algorytm. Spis treści Przepis
MATERIAŁY DO ZAJĘĆ I Podstawowe pojęcia Spis treści I. Algorytm II. Schemat blokowy III. Struktury danych IV. Program komputerowy V. Opis środowiska programistycznego VI. Obsługa wejścia wyjścia VII. Przykład
Bardziej szczegółowoInformatyka I stopień (I stopień / II stopień) Ogólnoakademicki (ogólno akademicki / praktyczny)
KARTA MODUŁU / KARTA PRZEDMIOTU Załącznik nr 7 do Zarządzenia Rektora nr 10/12 z dnia 21 lutego 2012r. Kod Nazwa Nazwa w języku angielskim Obowiązuje od roku akademickiego 2012/2013 Programy grafiki rastrowej,
Bardziej szczegółowoSieciowe Technologie Mobilne. Laboratorium 2
Sieciowe Technologie Mobilne Laboratorium 2 Tworzenie wieloplatformowych aplikacji mobilnych przy użyciu biblioteki PhoneGap. Łukasz Kamiński Laboratorium 2 Na dzisiejszym laboratorium skupimy się na implementacji
Bardziej szczegółowoDodatkowo planowane jest przeprowadzenie oceny algorytmów w praktycznym wykorzystaniu przez kilku niezależnych użytkowników ukończonej aplikacji.
Spis Treści 1. Wprowadzenie... 2 1.1 Wstęp... 2 1.2 Cel pracy... 2 1.3 Zakres pracy... 2 1.4 Użyte technologie... 2 1.4.1 Unity 3D... 3 2. Sztuczna inteligencja w grach komputerowych... 4 2.1 Zadanie sztucznej
Bardziej szczegółowoPomoc do programu Oferent
Pomoc do programu Oferent Wersja dokumentu: 1.1 Data ostatniej modyfikacji: 12.03.2012 Informacja o zmianach w stosunku do poprzedniej wersji dokumentu: Dodano informację o wymaganiach platformy Silverlight
Bardziej szczegółowoTechnologia Flash cieszy się coraz większą popularnością. Liczba dostępnych
Flash i PHP 01 Technologia Flash cieszy się coraz większą popularnością. Liczba dostępnych narzędzi do tworzenia prostych oraz złożonych interaktywnych animacji wzrasta z dnia na dzień. Trzeba przyznać,
Bardziej szczegółowoPRZEWODNIK 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
Bardziej szczegółowoXQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery
http://xqtav.sourceforge.net XQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery dr hab. Jerzy Tyszkiewicz dr Andrzej Kierzek mgr Jacek Sroka Grzegorz Kaczor praca mgr pod
Bardziej szczegółowoObiektowy PHP. Czym jest obiekt? Definicja klasy. Składowe klasy pola i metody
Obiektowy PHP Czym jest obiekt? W programowaniu obiektem można nazwać każdy abstrakcyjny byt, który programista utworzy w pamięci komputera. Jeszcze bardziej upraszczając to zagadnienie, można powiedzieć,
Bardziej szczegółowoOpis funkcji modułu Konwerter 3D
Opis funkcji modułu Konwerter 3D www.cadprojekt.com.pl Kliknij na tytuł rozdziału, aby przejść do wybranego zagadnienia MODUŁ KONWERTER 3D...3 Wygląd i funkcje okna modułu Konwerter 3D...3 Konwertowanie
Bardziej szczegółowoprogramowanie w oparciu o platformę netbeans w praktyce
programowanie w oparciu o platformę netbeans w praktyce Adam Kędziora. Netbeans innovators grants. Mechanizm lookup jako panorama firm. Węzły w netbeans. Mechanizm lookup jako torba z narzędziami. Dwa
Bardziej szczegółowo1.3. Tworzenie obiektów 3D. Rysunek 1.2. Dostępne opcje podręcznego menu dla zaznaczonego obiektu
1. Edytor grafiki Draw 1.1. Okno programu Draw W bezpłatnym pakiecie OpenOffice zawarty jest program graficzny Draw (rysunek 1.1), wyposażony w liczne narzędzia do obróbki obiektów. Program możesz uruchomić,
Bardziej szczegółowoMAMP: Można to pobrać i zainstalować z XAMPP: Można go pobrać i zainstalować z
WordPress : Omówienie I Instalacja Na początek, dlaczego byłbyś zainteresowany wykorzystaniem WordPressa razem z PhoneGap? Zapytałbym: "Dlaczego byś nie?" Moim zdaniem WordPress jest jednym z najłatwiejszych
Bardziej szczegółowoCzym są właściwości. Poprawne projektowanie klas
Z akcesorów get i set korzysta każdy kto programuje w C#. Stanowią one duże udogodnienie w programowaniu obiektowym. Zapewniają wygodę, bezpieczeństwo i znacząco skracają kod. Akcesory są ściśle związane
Bardziej szczegółowo