Na wielu zapaleńców komputerowych przychodzi kiedyś taki czas, w którym zadają sobie pytanie: 'Jak powstają gry komputerowe?'. Być może i Ty drogi czytelniku tego tematu, szukasz odpowiedzi. Jednak programowanie gier, jest na tyle szeroką dziedziną związaną z informatyką, a tym bardziej z jej grubą gałęzią - programowaniem - że prawdopodobnie masz już - choćby nawet nikłe - pojęcie o pisaniu programów. Jeśli nie, to nic nie szkodzi! Powoli małymi kroczkami, dzięki tym paczkom, będziesz wspinał się na wyżyny drabinki programistycznej wymyślonej i opracowanej przez jednego z doskonałych programistów gier, jakim jest: Adam Sawicki aka Regedit.

Dlaczego piszemy w C++ ? Najkrócej mówiąc - jest najpopularniejszy i używany przez profesjonalistów, a w końcu do tego grona dążymy, prawda ?.

Wszystko (oprócz perełek programowania gier) jest w wersji polskiej!

Poniżej każdej umiejętności, przedstawiam to co zawierają paczki.

Drzewko umiejętności:



1. Programowanie

************Podstawy programowania

  • * Kurs C++ Od Zera Do Gier Kodera


************Język C++
  • * C++ dla każdego,
    * Programowanie w Języku C++,
    * Stroustrap Bjarne - Klasyka Informatyki,
    * Tablice C++,
    * Pasja,
    * Thinking in C++.


(Jak to mówią, warto się uczyć z różnych źródeł, szczególnie jeśli chodzi o podstawy )

************Wskaźniki
  • * Wskaźniki


Rozmiar: 270MB~
Kod:
http://uploading.com/files/f54c338f/Cpp.rar/
************1.1a Programowanie Obiektowe

************Obiekty i praca na nich, idea OOP

  • * Prof. dr hab. Marian Mrozek - Programowanie Obiektowe,
    * Poprzednie materiały.


Rozmiar: 2MB~
Kod:
http://uploading.com/files/671aadbe/obiektowe.rar/
************1.1b Projektowanie

************Projektowanie i dokumentacja

  • * UML


************Inżynieria oprogramowania[/size]

  • * Inżynieria Oprogramowania


************Wzorce projektowe[/size]

  • * Wzorce Projektowania


Rozmiar: 51MB~
Kod:
http://uploading.com/files/7m8f5fba/architektura-oprogramowania.rar/
************1.2 Struktury danych + Algorytmy

Według mnie, te działy są względem siebie nierozerwalne i zresztą tak je traktują autorzy książek o algorytmach i strukturach danych.

************Algorytmy i struktury danych

  • * Algorytmy - Struktury danych i techniki programowania P. Wróblewski
    * D. Harel - Rzecz o istocie informatyki - algorytmika
    * Thomas H. Cormen - Wprowadzenie do algorytmów
    * Algorytmy Genetyczne Struktury Danych Programy Ewolucyjne - Z.Michalewicz (dość zaawansowana pozycja, warto się z nią zapoznać pod koniec przygody z nauką, lub przeczytać gdy jest się prawdziwym zapaleńcem.


Rozmiar: 58MB~
Kod:
http://uploading.com/files/e9eb18c6/algorytmy-i-struktury-danych.rar/
************1.3a Grafika

Tutaj zostałem postawiony przed ciężkim orzechem do zgryzienia, dlaczego? Już spieszę z wyjaśnieniami: otóż programowanie 3D, a już na pewno 2D to nie jest tylko wybór pomiędzy OpenGL a DirectX, natomiast w większości książki traktują właśnie o tych gigantach. No cóż, w tym przypadku jedyne co mogę Wam poradzić, to:

  • * Zaznajomienie się z większością bibliotek graficznych i wybranie dla Was optymalnej (jeśli jesteście początkującymi programistami, może być ciężko z wybraniem dla Was najlepszej biblioteki),
    * lub nauczenie się programowania i architektury komputerów na tyle, aby napisać własną bibliotekę,
    * lub na chybił-trafił wybrać pomiędzy OpenGl'em a DirectX.


Według mnie pierwsza opcja jest najrozsądniejsza . Tak więc w tym przypadku nic Wam nie przygotowałem, mimo iż jest to jedna z najważniejszych (o ile nie naj naj) umiejętność, za co najmocniej przepraszam. Tutaj musicie zdać się na własną intuicję i gdy już wybierzecie, to poszukać odpowiednich kursów czy dokumentacji (gdy już nauczycie się C++, czytanie dokumentacji będzie dla Was pestką) w internecie.

************1.3b Zaawansowana grafika

  • * Gems of game programming (wybrane rozdziały)


Rozmiar: 130MB~
Kod:
http://uploading.com/files/d358bc75/gems-of-game-programming.rar/
************2. Komputer, internet, netykieta, angielski
  • * Pierwsze dwie umiejętności w pewnym stopniu (lub co bardziej prawdopodobne - całkowicie) macie już opanowane, co może np. świadczyć to, że tu się znajdujecie .
    * Netykieta - Po prostu jako przyszli programiści gier, wykazujcie się wysoką kulturą w internecie. Będziecie w końcu należeli do elity!
    * Angielski - No cóż, w tej dziedzinie bez angielskiego jesteśmy jak bez ręki. W zdecydowanej większości fachowa literatura jest pisana tylko w języku Monty Python'ów i nie ma zmiłuj. Zasada jest prosta - niech Angielski zostanie Waszym drugim językiem, traktujcie jego naukę jako dobrą zabawę, ale też jako klucz do zarabiania wielkich pieniędzy .


************3. Matematyka

  • * Parafrazując Regedita: "Nie zaniedbywać lekcji matematyki" !


************Pozycje ważne, mniej ważne i dodatki:

  • * Jeśli chodzi o książki z kategorii /inne/ to proszę abyście konieczne zapoznali się z lekturą 'Gems of game programming'. Stoi ona na bardzo wysokim poziomie i traktuje o programowaniu gier w jak najszerszym rozumieniu tych słów. Niestety w sieci krąży tylko pięć tomisk z sześciu (bez tomu piątego) i w dodatku po Angielsku (jednak tym nie powinniście się zrażać). Link do perełek możecie znaleźć w /zaawansowanej grafice/. Aha, cena jednego tomu pereł to około 110zł~ .


Dopełnieniem Waszej wiedzy (a dla pierwszych dwóch pozycji nawet obowiązkiem posiadaniem takowej, na początku przygody z programowaniem) jako programistów gier będą jeszcze takie pozycje jak:

  • * Logika dla informatyków
    * Matematyka dyskretna dla informatyków Wojciech Kordecki
    * Metody Numeryczne dla Informatyków


Rozmiar: 1,6MB~
Kod:
http://uploading.com/files/6a8eaa34/dlainformatykow.rar/



Jako, że spodobała mi się koncepcja regedita co do drzewka umiejętności (Skill Tree) oraz sam zainteresowany zrobił ją, aby pomóc programistom gier, postanowiłem rozszerzyć jego pracę. Oryginalny link do drzewka umiejętności programisty gier, znajduje się pod tym adresem: Programista gier - Drzewko umiejętności. Moja wersja jest lekko uproszczona i zmieniona oraz dostosowana do wymogów i koncepcji forum internetowego.