Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?
Autor: Piotr Szawdyński
Biblioteki C++

Kurs SFML 1.6, C++

[kurs] SFML 1.6 jest idealną biblioteką do tworzenia wydajnych gier 2D dostarczając przy tym niezwykle prosty i intuicyjny obiektowy interfejs. SFML 1.6 jest darmową biblioteką multimedialną, która dostarcza niskopoziomowy oraz wysokopoziomowy dostęp do karty graficznej, urządzeń wejściowych, dźwięku itp.

Opis szczegółowy

SFML jest to darmowa biblioteka multimedialna, która dostarcza niskopoziomowy oraz wysokopoziomowy dostęp do karty graficznej, urządzeń wejściowych, dźwięku itp. Biblioteka ta jest stosunkowo nowym narzędziem na rynku, jednak szybko poszerza swoje grono zwolenników, wypierając tym samym z rynku takie biblioteki jak SDL czy też Allegro. Mając na uwadze wspomniany aspekt postanowiłem tym samym napisać kurs biblioteki SFML. Zanim jednak przejdziemy do kursu warto zapoznać się z licencją tej biblioteki, która pomimo iż jest na pierwszy rzut oka atrakcyjna to mimo wszystko ma swoją mroczną stronę...

Licencja

Na łamach strony SFML pod adresem http://www.sfml-dev.org/license.php można znaleźć treść licencji, która po przetłumaczeniu brzmi mniej więcej tak:

Biblioteka SFML jest całkowicie darmowa do jakiegokolwiek zastosowania, komercyjnego czy też nie, opensourceowego czy też nie. Oznacza to, że możesz używać bibliotekę SFML w swoich projektach bez żadnych ograniczeń. Informowanie o użyciu biblioteki SFML w swoich projektach nie jest wymaganie, jednak będzie mile widziane.

Biblioteka SFML jest rozpowszechniana na zasadach licencji zlib/png.
 
Sformułowania, których użyto dla biblioteki SFML jednoznacznie stwierdzają, że biblioteka SFML jest całkowicie darmowa nawet do zastosowania komercyjnego. Pomimo tego faktu należy mieć świadomość, że biblioteka SFML korzysta z bibliotek opartych o licencję LGPL. W konsekwencji oznacza to, że kilka bibliotek musi być linkowanych dynamicznie jeżeli chcemy tworzyć oprogramowanie komercyjne i nie udostępniać kodu źródłowego.

Pozostałe informacje

Skoro już wiesz czego można mniej więcej się spodziewać po bibliotece SFML od strony prawnej i merytorycznej to zapraszam do pierwszej lekcji kursu SFML dla C++.

Dokumentacja

Dokumentację do niniejszej biblioteki możesz znaleźć na stronie wymienionej poniżej:
Dokumentacja
SFML 1.6Dokumentacja biblioteki SFML 1.6. (biblioteka)

Wykaz elementów dowiązanych

Rozdział 1. Skąd pobrać bibliotekę SFML, jaki pakiet instalacyjny wybrać i gdzie znaleźć instrunkcje instalacyjne dla poszczególnych środowisk programistycznych.
Rozdział 2. Opisuje zalecane postacie funkcji main, jak tworzy się okna w SFML w trybie okienkowym i pełnoekranowym oraz jak zbudowana jest pętla główna programu.
Rozdział 3. Teoria ogólna o zdarzeniach w bibliotece SFML; omówienie obsługi zdarzeń takich jak: zamykanie okna, obsługa myszy i klawiatury oraz ich praktyczne przykłady. Ponadto ogólny opis pozostałych zdarzeń biblioteki SFML takich jak np. joystick.
Rozdział 4. W niniejszym rozdziale opisano bezpośredni dostęp do urządzeń takich jak: klawiatura, mysz i joystick.
Rozdział 5. Omówienie klasy sf::RenderWindow dedykowanej do renderowania grafiki 2D. Ponadto omówienie klasy sf::Color służącej do nadawania kolorów.
Rozdział 6. Tworzenie pustego obrazu i wczytywanie obrazu z pliku jak również z pamięci. Ponadto zapisywanie obrazu do pliku oraz robienie zrzutów ekranu (ang. screen shot).
Rozdział 7. W niniejszym rozdziale: co to jest sprajt w bibliotece SFML oraz jak działa; jak skojarzyć grafikę ze sprajtem oraz jak wyświetlić sprajta. Ponadto w rozdziale zostały omówione ważniejsze metody klasy » SFML 1.6Sprite oraz opisano inne użyteczne zagadnienia związane ze sprajtami.
Rozdział 8. Niniejszy rozdział opisuje w jaki sposób można wyświetlać proste kształty w bibliotece SFML. Do prostych kształtów zaliczamy: linię, prostokąt, okrąg oraz figury zbudowane z połączonych ze sobą punktów.
Rozdział 9. Tekst w SFML - wczytywanie czcionek i ich wyświetlanie. Ponadto rozdział opisuje jak zapewnić obsługę polskich czcionek w aplikacji SFML.
Rozdział 10. Niniejszy rozdział pokazuje w jaki sposób można ograniczyć obszar rysowania elementów na scenie (tekst, sprajty itp).