Kurs SFML

0

Witam, mogę prosić o polecenie kursu SFML jakiegoś merytorycznego i nie archaicznego. Jest tego tyle w internecie, że nie wiem za co się brać :P Najlepiej jeden po polsku drugi po angielsku. Dzięki wielkie za pomoc!

1

Obejrzyj sobie te filmiki, z nich szybciej ogarniesz niz z jakiegokolwiek innego kursu.

0

Masz wiki na stronie głównej SFML z przykładami i niczego lepszego na start nie znajdziesz, możesz tez pobrać źródła SFML i tam zobaczyć kod przykładowych aplikacji. Nie znajdziesz kursu raczej po polsku, english first obowiązuje i nigdzie się nie wybiera. ;)

0
Ludwiniak Wiktor napisał(a):

mogę prosić o polecenie kursu SFML jakiegoś merytorycznego i nie archaicznego.

SFML nie porywa, gdyż sam trzyma się właśnie archaicznego workflowu przy tworzeniu gier.
Stąd też SFML nie podnieca zdolnych bądź mniej zdolnych ludzi tworzących kursy, żeby w ogóle go ruszać i przedstawiać ludziom...

0
Spine napisał(a):
Ludwiniak Wiktor napisał(a):

mogę prosić o polecenie kursu SFML jakiegoś merytorycznego i nie archaicznego.

SFML nie porywa, gdyż sam trzyma się właśnie archaicznego workflowu przy tworzeniu gier.
Stąd też SFML nie podnieca zdolnych bądź mniej zdolnych ludzi tworzących kursy, żeby w ogóle go ruszać i przedstawiać ludziom...

A z ciekawości zapytam: to jaka inna technologia porywa? SFML wydaje mi się że jest całkiem spoko. Ładny, składny i prosty do użycia. Najbardziej boli brak wsparcia dla developmentu w Androidzie.

0

Zobacz tą listę:
https://www.sfml-dev.org/documentation/2.5.1/modules.php

Dostajesz "gołą" nakładkę na OpenGL. Musisz praktycznie napisać cały swój silnik, żeby gra miała stabilną strukturę.
Powinieneś jakoś opakować zarządzanie zasobami gry - ładowanie tekstur, muzyki i zwalnianie miejsca po tych zasobach, gdy np. ładujesz inną scenę.
Musisz sobie doprogramować bądź użyć dodatkowych bibliotek, żeby mieć w aplikacji efekty cząsteczkowe, jakieś animacje itp.
Tak że, robisz nowy projekt i piszesz swoją nakładkę na SFML... I dopiero potem na podstawie tej nakładki piszesz swoją grę :]

Wszystko musisz napisać, nie masz żadnego wizualnego edytora, ani rozbudowanych modułów.
Taki edytor i gotowe systemy do użycia w grze to nie tylko wygoda, ale to też pozwala ograniczyć błędy ludzkie.

W porządnym środowisku do gier, np. Unity 3D, wystarczy utworzyć projekt i już dochodzimy do etapu, kiedy na ekranie wyświetlamy nic :D Dodając kolejne obiekty na scenę nie musimy się martwić o to, jak zostaną wyświetlane, czy w jaki sposób załadujemy ich zasoby (tekstury, shadery, dźwięki itp.). Dodatkowo taki edytor wprowadza/narzuca nam porządek w projekcie. Obiekty jakie tworzymy dla gry mają podpięte odpowiednie zasoby. Np. gracz ma podpięty kod źródłowy sterowania, ma też podpięte swoje obiekty graficzne, ich pozycje, obroty itp. Jest pewna hierarchia, drzewo obiektów, jak np. przesuwamy wyższą gałąź, to obiekty na niższych gałęziach przesuwają się razem z nią. Nie musimy pisać własnego launchera, w którym użytkownik ustawia rozdzielczość ekranu, itp. Unity generuje takie coś na podstawie danych które mu wprowadzimy w edytorze. Jakiś obrazek, nazwa aplikacji, możliwe poziomy detali graficznych itp.

Dodatkowo w Unity dostajemy dużo kodu usprawniającego obliczenia. Tak jak w bibliotekach standardowych języków, mamy np. sortowanie listy, czy moduł matematyczny, to Unity np. ma swój moduł matematyczny wyspecjalizowany pod gry. Policzymy jakieś interpolacje, najmniejsze różnice między kątami itd.

Dużo by tu można tłumaczyć, czy też wchodzić w szczegóły, bo narzędzia są już bardzo rozbudowane i kompleksowo spełniają swoje zadanie. Ale chyba skutecznie zakreśliłem dlaczego SFML w 2019 już nie porywa :D

1
Spine napisał(a):

W sumie masz rację. Nie warto wyważać otwartych drzwi zwłaszcza gdy mamy dostęp do wielu naprawdę wybitnych narzędzi. Ale ja chce coś napisać w tej bibliotece z dwóch powodów. Po pierwsze w mojej szkole dostaliśmy zadanie stworzenia dowolnego projektu w języku c++. Więc gry z Unity raczej nie zaliczą :(. Po drugie uznałem, że to świetna okazja aby nauczyć się czegoś nowego i rozwinąć swoje umiejętności. Może nic wybitnego nie stworze z taką ilością czasu ale na pewno nie będzie to czas stracony. A wiedza zdobyta w ten sposób na pewno się przyda.

1 użytkowników online, w tym zalogowanych: 0, gości: 1