Allegro5 część 1 - Witaj Świecie! Projekt, inicjalizacja, tworzenie okna, czcionki. Autor: Kamil Krzyszczuk - C mons



Podobne dokumenty
Allegro5 3/x. Przykład wklejamy go do dev'a zamiast kodu domyślnego dal programu z allegro i kompilujemy.

Informatyka I : Tworzenie projektu

Allegro5 część 4 Timer i myszka Timer i myszka Autor: Kamil Krzyszczuk - C mons

Laboratorium 1. Programowanie II - Kierunek Informatyka. dr inż. Janusz Słupik. Gliwice, Wydział Matematyki Stosowanej Politechniki Śląskiej

I Tworzenie prezentacji za pomocą szablonu w programie Power-Point. 1. Wybieramy z górnego menu polecenie Nowy a następnie Utwórz z szablonu

Ćwiczenia 9 - Swing - część 1

I - Microsoft Visual Studio C++

WYKONANIE APLIKACJI OKIENKOWEJ OBLICZAJĄCEJ SUMĘ DWÓCH LICZB W ŚRODOWISKU PROGRAMISTYCZNYM. NetBeans. Wykonał: Jacek Ventzke informatyka sem.

Laboratorium - Zaawansowana instalacja Windows XP

Instrukcja obsługi programu Creative Fotos

Laboratorium 1 Temat: Przygotowanie środowiska programistycznego. Poznanie edytora. Kompilacja i uruchomienie prostych programów przykładowych.

W oknie na środku, moŝna wybrać język, który będzie językiem domyślnym dla TC. Wybierzmy zatem język polski:

Przygotowanie własnej procedury... 3 Instrukcja msgbox wyświetlanie informacji w oknie... 6 Sposoby uruchamiania makra... 8

Warsztaty AVR. Instalacja i konfiguracja środowiska Eclipse dla mikrokontrolerów AVR. Dariusz Wika

Minimalna wspierana wersja systemu Android to zalecana 4.0. Ta dokumentacja została wykonana na telefonie HUAWEI ASCEND P7 z Android 4.

Aby pobrać program FotoSender naleŝy na stronę lub i kliknąć na link Program do wysyłki zdjęć Internetem.

Programowanie komputerowe. Zajęcia 1

Szkolenie dla nauczycieli SP10 w DG Operacje na plikach i folderach, obsługa edytora tekstu ABC. komputera dla nauczyciela. Materiały pomocnicze

Informatyka, Ćwiczenie Uruchomienie Microsoft Visual C++ Politechnika Rzeszowska, Wojciech Szydełko. I. ZałoŜenie nowego projektu

Podstawowe informacje o obsłudze pliku z uprawnieniami licencja.txt

Zastanawiałeś się może, dlaczego Twój współpracownik,

Instrukcja użytkownika systemu medycznego

Krótki kurs obsługi środowiska programistycznego Turbo Pascal z 12 Opracował Jan T. Biernat. Wstęp

WSCAD. Wykład 5 Szafy sterownicze

Współpraca Integry z programami zewnętrznymi

BAZA_1 Temat: Tworzenie i modyfikowanie formularzy.

Podręcznik użytkownika programu. Ceremonia 3.1

Unity 3D - własny ekran startowy i menu gry

edycja szablonu za pomocą serwisu allegro.pl

Ćwiczenia laboratoryjne. Oprogramowanie i badanie prostych metod sortowania w tablicach

Obsługa komputera. Paweł Kruk

1. Opis okna podstawowego programu TPrezenter.

Komponent Formularz. Rys. 1. Strona programu Joomla - Rys. 2. Instalacja komponentu

Tworzymy projekt File->New Project->Java Application, przy czym tym razem odznaczamy create main class

Instrukcja instalacji i obsługi gotowych szablonów aukcji allegro oraz szablonów na zamówienie

Instalacja SAS 9.4 Foundation i SAS Enterprise Guide

Rozpoczęcie pracy z programem.

Informatyka II. Laboratorium Aplikacja okienkowa

SFML. (Simple and Fast Multimedia Library)

Programowanie obiektowe zastosowanie języka Java SE

Wybieramy File->New->Project Wybieramy aplikację MFC->MFC Application jak na rysunku poniżej:

Czysta Instalacja systemu Windows XP

I. Spis treści I. Spis treści... 2 II. Kreator szablonów Tworzenie szablonu Menu... 4 a. Opis ikon Dodanie nowego elementu...

Okno logowania. Okno aplikacji. 1. Logowanie i rejestracja

Zasady programowania Dokumentacja

Grant Edukacyjny Engram English

Praktyka programowania projekt

Temat: Kopiowanie katalogów (folderów) i plików pomiędzy oknami

Expo Composer Garncarska Szczecin tel.: info@doittechnology.pl. Dokumentacja użytkownika

W kolejnym odcinku zajmiemy się umieszczaniem w naszym projekcie zestawu ikon służących szybkiemu korzystaniu z opcji programu.

1. Wybierz polecenie rysowania linii, np. poprzez kliknięcie ikony W wierszu poleceń pojawi się pytanie o punkt początkowy rysowanej linii:

Instalacja SAS 9.3 Foundation i SAS Enterprise Guide

C-geo definicja/edycja obiektów, zapis danych w formacie shape

Kopiowanie, przenoszenie plików i folderów

PORADNIK KORZYSTANIA Z SERWERA FTP ftp.architekturaibiznes.com.pl

Tworzenie projektu asemblerowego dla środowiska Visual Studio 2008.

Instalacja i opis podstawowych funkcji programu Dev-C++

Cel ćwiczenia: Celem ćwiczenia jest nabranie wprawy w rysowaniu kół i okręgów o zadanych rozmiarach.

5. Administracja kontami uŝytkowników

Instrukcja automatycznego tworzenia pozycji towarowych SAD na podstawie danych wczytywanych z plików zewnętrznych (XLS).

Tworzenie nowej kampanii i jej ustawienia

INSTRUKCJA UŻYTKOWNIKA PROGRAMU VAT2011 VER 1.0

Rozdział 2. Konfiguracja środowiska pracy uŝytkownika

Programowanie - wykład 4

Opis obsługi programu KALKULACJA

Założenia projektu: Projekt ma zadanie pokazać praktyczne zastosowanie App Inventor 2, poprzez stworzenie prostej aplikacji do nauki słówek.

Wykład 4 Delegat (delegate), właściwości indeksowane, zdarzenie (event) Zofia Kruczkiewicz

Materiały na zajęcia z podstaw uŝytkowania komputerów OpenOffice. [Przepisz to wszystko co nie znajduje się w nawiasach kwadratowych]

Program współpracuje z : Windows XP, Powerdraft 2004, v8, XM, Microstation 2004, v8, XM.

FK - Deklaracje CIT-8

#include <iostream> using namespace std; void ela(int); int main( ); { Funkcja 3. return 0; }

Sposoby tworzenia projektu zawierającego aplet w środowisku NetBeans. Metody zabezpieczenia komputera użytkownika przed działaniem apletu.

Instalacja serwera Firebird

PROSTY PROGRAM DO MALOWANIA

Programowanie. Ćwiczenie Język C. Środowisko programowania Visual Studio

Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka

Program 6. Program wykorzystujący strukturę osoba o polach: imię, nazwisko, wiek. W programie wykorzystane są dwie funkcje:

Podstawy wykorzystania bibliotek DLL w skryptach oprogramowania InTouch

Utworzenie pliku. Dowiesz się:

Instrukcja uŝytkowania

Druga aplikacja Prymitywy, alpha blending, obracanie bitmap oraz mały zestaw przydatnych funkcji wyświetlających własnej roboty.

Laboratorium 1 - Programowanie proceduralne i obiektowe

Instrukcja aktualizacji oprogramowania (firmware) serwera DESKTOP 1.0 systemu F&Home RADIO.

Wprowadzenie do biblioteki klas C++

Dostęp do poczty przez www czyli Kerio Webmail Poradnik

Dodanie nowej formy do projektu polega na:

CorelDRAW. wprowadzenie

Szybka instrukcja tworzenia testów dla E-SPRAWDZIAN-2 programem e_kreator_2

I2: J2ME programowanie w NetBeans IDE Wydział Transportu PW semestr /11

Generator Wniosków Płatniczych dla Programu Operacyjnego Kapitał Ludzki. Instrukcja Instalacji

Podstawy Informatyki. Inżynieria Ciepła, I rok. Wykład 10 Kurs C++

Wykład IX. Programowanie II - semestr II Kierunek Informatyka. dr inż. Janusz Słupik. Wydział Matematyki Stosowanej Politechniki Śląskiej

INSTRUKCJA INSTALACJI I URUCHOMIENIA PROGRAMÓW FINKA DOS W SYSTEMACH 64 bit

Symulator tabletu z systemem Windows 8.

Programowanie niskopoziomowe

Microsoft Visual C : praktyczne przykłady / Mariusz Owczarek. Gliwice, cop Spis treści

documaster documaster Campus Instrukcja obsługi Bezobsługowy system drukowania, kopiowania i skanowania

UONET+ moduł Dziennik

Transkrypt:

Allegro5 część 1 - Witaj Świecie! Projekt, inicjalizacja, tworzenie okna, czcionki. Autor: Kamil Krzyszczuk - C mons 1.Wstęp Witam w pierwszej części mojego kursu za pomocą którego dowiesz się jak stworzyć pierwszy program uŝywając allegro5. Allegro5 to biblioteka pozwalająca na rysowanie grafiki: bitmap, czcionek, prymitywów ale teŝ daje moŝliwość obsługi klawiatury czy myszki a takŝe timer ów i wiele innych. Biblioteka ta jest wciąŝ rozwijana ale na obecną chwilę da się juŝ coś porządnego stworzyć za jej uŝyciem. Pisząc ten kurs uŝywałem wersji allegro 4.9.11 i kompilatora Microsoft Visual Studio 2008. W kolejnych częściach dowiesz się jak korzystać z innych dóbr tej biblioteki, ta część ma na celu pomoc przy instalacji allegro i stworzeniu pierwszego projektu. Następnie naszym celem będzie stworzenie okna/wyświetlacza i na samym końcu tej części wczytamy czcionkę i wyświetlimy w oknie jakiś napis. No to zaczynamy. :) 2.Instalacja Moglibyśmy od razu przejść do tworzenia projektu ale czegoś nam brakuje. Brakuje nam niezbędnych nagłówków i bibliotek. Gotową binarke i nagłówki znajdziemy tutaj: http://allegro5.org/index.php?option=com_phocadownload&view=category&id=6:allegro-4.9.11- binaries&itemid=53. Pobieramy ten plik allegro-4.9.11-msvc-bin.zip rozpakowujemy go i odpowiednie foldery ładujemy do kompilatora. Czyli kolejno kopiujemy dwa foldery include i lib następnie udajemy się do miejsca gdzie mamy zainstalowany kompilator. W moim przypadku jest to taki adres: C:\Program Files\Microsoft Visual Studio 9.0\VC i wklejamy uprzednio skopiowane foldery. Kiedy system zapyta nas o jakąś zamianę folderów to potwierdzamy. Zawartość folderu dll musimy zaś skopiować do C:\Program Files\Microsoft Visual Studio 9.0\VC\bin Jeśli mamy juŝ wszystkie potrzebne pliki w kompilatorze to moŝemy przystąpić do utworzenia projektu. 3. Pierwszy projekt Jeśli wiesz jak stworzyć Aplikacje Win32 Console Application moŝesz pominąć tą część i przejść do 4 punktu. Jeśli zaś nie wiesz jak - to czytaj dalej. Włącz kompilator. Wybierz z górnej sekcji listę File następnie New i Project. PokaŜe ci się okno:

Wybierz typ projektu Win32 Console Application. Następnie podaj nazwę projektu. Jak juŝ ją wpiszesz to zatwierdź wszystko przyciskiem OK. W tym oknie potwierdź wybór i przejdź do dalszych ustaleń naszego projektu klikając na przycisk Next.

W następnym oknie wybierz pusty projekt. W tym celu zaznacz pole Empty Project. Kiedy juŝ wszystko jest ustalone, zakończ tworzenie projektu klikając na przycisk Finish. Teraz dodamy pierwszym moduł, klikając z lewej strony na folder Source Files prawym przyciskiem, wybierz z listy która się pokazała pole Add a następnie New Item i dodaj plik C++ File (.cpp) następnie nadaj mu jakąś nazwę, chociaŝby main i zatwierdź przyciskiem Add. 4. Program. A więc doszliśmy juŝ do momentu w którym napiszemy pierwszy program jeszcze tylko jedna waŝna sprawa. Musimy dodać biblioteki lib. W tym celu naciśnij alt+f7 lub przejdź do górnej sekcji Project następnie do MojProject Properties. W zakładce Configuration Properties/Linker/Input w polu Additional Dependencies wpisz/dopisz kolejno oddzielając spacją 3 pliki lib: allegro-4.9.11.lib a5_font-4.9.11.lib a5_ttf-4.9.11.lib Nadszedł czas na kod, najpierw go przedstawię a potem po kolei przeanalizujemy co robi kaŝda linijka. #include <allegro5/allegro5.h> #include <allegro5/a5_font.h> #include <allegro5/a5_ttf.h> #include <iostream> #undef main void main() al_init(); al_init_font_addon();

5.Analiza. al_install_keyboard(); if (!al_create_display(640,480) ) std::cout << "Nie udalo sie utworzyc okna!" << std::endl; al_set_window_title("kurs Allegro Pierwszy program, czcionki."); ALLEGRO_FONT* font; font = al_load_ttf_font( "times.ttf", 48, 0 ); if (!font ) std::cout << "Nie udalo sie wczytac czcionki!" << std::endl; ALLEGRO_KEYBOARD_STATE key_state; while(!al_key_down(&key_state, ALLEGRO_KEY_ESCAPE)) al_clear_to_color( al_map_rgb(0,0,0) ); al_draw_text( font, 320, 216, ALLEGRO_ALIGN_CENTRE, "Witaj swiecie!" ); al_flip_display(); #include <allegro5/allegro5.h> #include <allegro5/a5_font.h> #include <allegro5/a5_ttf.h> #include <windows.h> Jak widać najpierw dołączamy potrzebne nam nagłówki. al_init(); Następnie za pomocą tejŝe funkcji ( a raczej makry ) instalujemy allegro. al_init_font_addon(); Ta funkcja instaluje system czcionek. if (!al_create_display(640,480) ) std::cout << "Nie udalo sie utworzyc okna!" << std::endl; Ten fragment kodu tworzy okno i sprawdza czy ta czynność się udała. W razie niepowodzenia informuje o tym komunikatem czeka na naciśnięcie ENTER i wychodzi z głównej funkcji main czego następstwem jest wyjście z programu. al_set_window_title("kurs Allegro Pierwszy program, czcionki."); W tej linijce jest funkcja, która zmienia nazwę okna. Jej parametr to const char *title przyjmujący tekst który ma być nazwą okna. ALLEGRO_FONT* font; Tworzy wskaźnik na czcionkę.

font = al_load_ttf_font( "times.ttf", 48, 0 ); Ta linijka wczytuje czcionkę i zwraca wskaźnik na nią do wskaźnika font. Parametry funkcji al_load_ttf_font to: char const *filename int size int flags ŚcieŜka do pliku/czcionki PoŜądany rozmiar czcionki Flagi Póki co allegro oferuje jedną flagę przy wczytywaniu czcionek: ALLEGRO_TTF_NO_KERNING Z tą flagą wczytana czcionka nie będzie posiadała zregulowanej odległości miedzy znakami. http://pl.wikipedia.org/wiki/kerning if (!font ) std::cout << "Nie udalo sie wczytac czcionki!" << std::endl; Ten fragment kodu sprawdza czy wczytanie czcionki powiodło się. Jeśli nie to wyświetla odpowiedni komunikat czeka na ENTER po czym wychodzi z głównej funkcji main czego następstwem jest wyjście z programu jak wcześniej. ALLEGRO_KEYBOARD_STATE key_state; Tworzy obiekt który przechowuje stan klawiatury. Pobiera aktualny stan klawiatury. al_key_down(&key_state, ALLEGRO_KEY_ESCAPE)) To jest funkcja która informuje (zwraca wartość ) czy dany klawisz jest wciśnięty jej parametry to: const ALLEGRO_KEYBOARD_STATE *state int keycode Wskaźnik na stan klawiatury Kod klawisza Wszystkie kody klawiszów znajdziesz w dokumentacji a konkretnie tutaj: http://alleg.sourceforge.net/a5docs/refman/keyboard.html#toc-key-codes while(!al_key_down(&key_state, ALLEGRO_KEY_ESCAPE)) al_clear_to_color( al_map_rgb(0,0,0) ); al_draw_text( font, 320, 216, ALLEGRO_ALIGN_CENTRE, "Witaj swiecie!" ); al_flip_display(); Pętla która wykonuje się do momentu kiedy uŝytkownik naciśnie klawisz ESC. al_map_rgb(0,0,0) Funkcja która zwraca kolor, jej argumenty to kolejno unsigned char R, G, B czyli nasycenie Czerwonego, Zielonego i Niebieskiego koloru. Po inne wersje tejŝe funkcji odsyłam do dokumentacji: http://alleg.sourceforge.net/a5docs/refman/color.html

al_clear_to_color( al_map_rgb(0,0,0) ); Czyści bufor ekranu ( bitmapę ) na podany kolor. Pewnie dziwi Cię fakt, Ŝe nie podajemy którą bitmapę ma wyczyścić tak jak to miało miejsce w starszej wersji allegro. OtóŜ do tego słuŝy specjalna funkcja al_set_target_bitmap która jako parametr przyjmuje wskaźnik na bitmapę na której mają odbywać się wszelakie procesy renderowania. Kiedy chcemy zmienić bitmapę na której mamy zamiar coś narysować, po prostu ponownie uŝywamy tej funkcji. W naszym programie jej nie uŝyliśmy, poniewaŝ domyślnie ustawiony jest backbuffer czyli ogólny bufor ekranu. al_draw_text( font, 320, 216, ALLEGRO_ALIGN_CENTRE, "Witaj swiecie!" ); Funkcja rysującą tekst na ekranie, jej parametry to kolejno: const ALLEGRO_FONT *font float x float y int flags char const *text Wskaźnik na czcionkę Współrzędna X połoŝenia na ekranie Współrzędna Y połoŝenia na ekranie Flagi tekst który ma zostać narysowany Dostępne flagi dla tej funkcji: ALLEGRO_ALIGN_LEFT ALLEGRO_ALIGN_RIGHT ALLEGRO_ALIGN_CENTRE Rysuje tekst wyrównany do lewej strony. Efekt uzyskamy równieŝ nie podając Ŝadnej flagi czyli wpisując NULL. Rysuje tekst wyrównany do prawej strony. Rysuje wycentrowany tekst. al_flip_display(); Ta funkcja wysyła zawartość backbuffer a do okna. Funkcja ta powinna występować zawsze po wyrenderowaniu czegokolwiek ( ale nie po kaŝdej jednej graficzce ). I to wszystko. Program tworzy okno, wyświetla na ekranie napis Witaj Swiecie i czeka na naciśnięcie klawisza ESC po czym kończy swoje działanie. To koniec tej części kursu. Zapraszam do kolejnej i do dokumentacji allegro5 w wersji angielskiej: http://alleg.sourceforge.net/a5docs/refman/index.html