Gry 2D i ciut więcej. Czyli początki początków z C za mną czas na coś więcej.

0

Witam!
W skrócie jestem Sebastian lat chyba jakoś koło 20, studia o mistycznej nazwie Informatyka, z programowania hmm nie wiem jak określić swoją wiedzę, działam w C, jestem na potwornie niskim poziomie czytaj, umiem tworzyć funkcje, coś z nich zwracać, wywoływać itp, do tego władam tablicami. I jeszcze garść innych narzędzi udało mi się opanować ;) (wymieniłem ostatnio poznane) idą święta, święta to czas wolny, więc chce wykorzystać go na rozwój, C++ na studiach czeka na mnie dopiero w III semestrze, a chciałbym poznać jak najwięcej C i C++ jak najszybciej bo jestem głodny wiedzy.
Marzeniem, albo raczej wyzwaniem które sobie obrałem..
A raczej wyzwaniami.

  1. Chce utworzyć program(?) który w określonym polu w przeglądarce będzie wpisywał "dany mu" ciąg znaków i go "wysyłał" (klikał enter) raz na jakiś określony czas.
  2. Coś ambitniejszego - a więc, chce "pobawić" się z grami, chciałem zacząć od jakiejś banalnej gry 2D, nie chce by wyglądało tak, że umiem przepisać jakieś skrypty czy coś podobnego z jakiegoś źrodła i o super działa, chce nauczyć się tworzyć coś samemu..
    A więc teraz po co to piszę?
    Chce Was zapytać, jak podejść do tych wyzwań. Skąd czerpać wiedzę, która da możliwość zaspokojenia mojego głodu. Aktualnie ściągnąłem sobie Visual Studio, Unity3D i AtomicEditor, ale tak na prawdę, nie wiem dlaczego. Nie wiem w czym robić grafiki, jakieś animacje, czy pisać sam kod i jak to robić.
    Wiem, abstrakcja by mi to wytłumaczyć i równie dobrze za takie "korepetycję" można ciągnąć gruby hajs. Ale jednak jako, że nie mam do kogo się zwrócić z prośbą chociażby o wskazanie drogi.. To piszę to tutaj i liczę na waszą pomoc!
    Z góry wam bardzo bardzo dziękuję!
2

Do zabaw z automatyzacją zadań w przeglądarce: selenium (np https://github.com/sekogan/webdriverxx)
Do tworzenia gier 2D bez krwawicy i k*rwicy: sfml (2.4) http://www.sfml-dev.org/tutorials/2.4/graphics-draw.php (ewentualnie gosu)

Na boku do ogarnięcia:

  1. Testowanie kodu (np. z Catch Frameworkiem https://github.com/philsquared/Catch)
  2. Git (https://www.atlassian.com/git/tutorials/) (+ wskazówka: github do publicznych repo, bitbucket do prywatnych i całość kosztuje Cie całe nic złotych)
  3. Twój nowy kanał na yt do przeoglądania:
  4. CMake (Polecam używać pod to Cliona (IDE) https://www.jetbrains.com/clion/ (z wersją EAP nic nie płacisz), które wymusi na tobie znajomość cmake)
0

Wybacz za mój brak wiedzy. Ale rozumiem, że poleciłeś mi bibliotekę sfml (w której mogę utworzyć daną grę, tak?), lecz jak to wygląda od sprawy działania, co wtedy jest silnikiem owej gry?
Bo jednak zawsze jest polecany jakiś silnik, a to UE4, a to Unity, ale do Unity potrzebny C#, a tak daleko nie chce wybiegać, UE4 jest płatny z tego co wiem..
Co do samej biblioteki sfml znalazłem to. http://cpp0x.pl/kursy/Kurs-SFML-2-x-C++/460 i też pytanie czym różni się 2.x od 1.6 ilością opcji?
// Tak tak studiuję, każde darmowe rzeczy z chęcią przyjmuję. ^^

0

Nie patrz na żadne silniki tylko sam taki napisz i dopiero wtedy się czegoś nauczysz.

0

A więc zadanie na teraz poznać od A do Z zaproponowaną bibliotekę tak?
I teraz irracjonalnie pytanie.. Ale jak jej się uczyć, latać po dokumentacji czy szukać jakiś kursów podobnych do podanego, ten wyżej nie jest chyba zbyt obszerny. Jednak zawsze to coś na początek.

0

Akurat SFML ma bardzo ładną, bogatą dokumentację, z rozbudowanymi przykładami itd., tak więc bez problemu się nauczysz bezpośrednio z niej.

0

A więc możliwe ostatnie pytanie co do pierwszego postu. Zostały tam przytoczone programy(?) takie jak Catch, Git i CMake, mógłby ktoś przybliżyć mi ich działanie i ogólny cel w poznawaniu właśnie tych programów? :)

1

Ale rozumiem, że poleciłeś mi bibliotekę sfml (w której mogę utworzyć daną grę, tak?), lecz jak to wygląda od sprawy działania, co wtedy jest silnikiem owej gry?

Silnik sam sobie piszesz; Przy czym jako pierwszą grę wybierz sobie coś bardzo, bardzo prostego;

[...] i też pytanie czym różni się 2.x od 1.6 ilością opcji?

Nowsze API wyróżnia się tym, że jest nowsze; Nie chodzi tu tylko o większą funkcjonalność, bo to wcale nie jest powiedziane, ale również o dodane poprawki, poprawione błędy, zoptymalizowany kod; Korzystanie z najnowszej możliwej wersji biblioteki jest prawie zawsze najlepszym wyborem;

Zostały tam przytoczone programy(?) takie jak Catch, Git i CMake, mógłby ktoś przybliżyć mi ich działanie i ogólny cel w poznawaniu właśnie tych programów?

Mamy kopiować tekst ze stron tych projektów, bo Tobie nie chce się użyć Google i samemu poczytać o ich przeznaczeniu?

0

Jeśli chcesz zostać przy 2D to nie wiem czy jest sens sięgać po armaty w stylu Unity czy UE4.

Sebixxu napisał(a):

Bo jednak zawsze jest polecany jakiś silnik, a to UE4, a to Unity

Mając gotowy silnik skupiasz tylko i wyłącznie na samej grze, a nie na tym jak zaimplementować rendering, dźwięk, input oraz jak to wszystko połączyć.

Sebixxu napisał(a):

ale do Unity potrzebny C#, a tak daleko nie chce wybiegać

od C++ to C# nie jest tak daleko ;) Zawsze warto się przynajmniej zapoznać, a nuż architektura Unity przypadnie Ci do gustu.

Sebixxu napisał(a):

UE4 jest płatny z tego co wiem..

W skrócie: Jest darmowy. Dzielisz się tylko ewentualnymi zyskami. Na dodatek masz swobodny dostęp do kodu źródłowego = przy odrobinie zaciętości można podpatrzeć "jak to robią profesjonaliści" i sporo się nauczyć. Minusem jest tylko uboga dokumentacja, co może na początku odstraszać.

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