Wykorzystanie własnych możliwości do tworzenia gier

Witajcie! Pewnie nieraz macie pomysł na ciekawą grę, jednak ograniczają was pewne kwestie – mianowicie jak zrobić grafiki i dźwięk do swojej gry? Jak to wszystko rozplanować? Programiści często nie są artystami (przynajmniej plastycznie i muzycznie) i zdają sobie z tego sprawę. Co więc zrobić?

Najlepszym rozwiązaniem jest oczywiście poprosić kogoś, aby wam zrobił wizualną część gry, lecz nie zawsze jest taka możliwość. Zwłaszcza gdy nie wiemy czy gra w ogóle coś zarobi. Ale szukajcie. Mi się udało znaleźć tylko gościa od muzyki w tle. Ale jeśli jednak nie ma to co? Może jakieś stronki z darmowymi grafikami/dźwiękami? Nie najgorsze rozwiązanie, ale często są to takie bardzo oklepane, typowe materiały wykorzystywane w wielu grach. Zresztą każdy woli być oryginalny i nie kopiować. W takim razie czemu by nie spróbować swoich sił w stworzeniu zarówno efektów dźwiękowych jak i grafik? Opowiem to na przykładzie mojej gry o nazwie kodowej Cyber Attack. Czytaj dalej →

Boost.SIMD, co tak naprawdę potrafi jeden rdzeń?

Wolny program? Hurr durr, zrób wątki.

Brzmi znajomo? Jeśli program działa wolniej niż się chce inni programiści dają z reguły dwie rady: pierwsza, bardzo dobra – poprawić algorytm, druga, zwykle fatalna – użyć wielu wątków / procesów. Prawda jest taka, że czego by nam nie pchali producenci 12–rdzeniowych procesorów w telefonach wiele wątków ma tyle zalet co wad. Sama synchronizacja pochłania tyle mocy obliczeniowej, że o jednym rdzeniu można zapomnieć (drobna przesada nikogo nie zabiła :P), pełno miejsca na świeżutkie wycieki pamięci czy niezdefiniowane wyścigi po dane, jednym słowem – chaos. Czytaj dalej →

Minecraft a programowanie? Architektura klient – serwer.

Minecraft jest grą, która mocno przyczyniła się do rozwoju gatunku „gier piaskownic” (ang. sandbox). Jej ogromna popularność spowodowała powstanie dużej strefy moderskiej, skupionej na tworzeniu kolejnych elementów, już i tak bardzo rozbudowanego świata.

Moimi ulubionymi modyfikacjami okazały się dodatki przemysłowe, dodające kolejne stopnie przerabiania surowców oraz maszyny ułatwiające ich przetwarzanie. Każdy, kto chociaż trochę zainteresuje się uprzemysłowieniem produkcji zawsze dobrnie do momentu, w którym ręczne operowanie całą fabryką straci sens, ponieważ nie jest to już takie efektywne jak to, czego się oczekiwało. W takim przypadku z pomocą przychodzą nam komputery.

W tym poradniku przedstawię rozwiązanie architektury klient – serwer na jednej z dwóch najpopularniejszych modyfikacji dodającej maszyny liczące. Będzie to ComputerCraft. W kolejnych poradnikach skupię się na drugiej modyfikacji tego typu – OpenComputers. Ten poradnik skierowany jest do osób, które miały już styczność z językiem Lua oraz tą modyfikacją.

Czytaj dalej →

Język Go – czy warto? Wprowadzenie.

Witam! Nigdy jeszcze nie pisałem żadnego bloga, więc proszę o wyrozumiałość.

Zajmę się tematem języka Go. Czym on jest, dlaczego warto się go nauczyć, jak stworzyć w nim prosty program „Hello World”, jak stworzyć sobie środowisko do pracy z nim i zamieszczę parę skryptów do zautomatyzowania sobie pracy.

Czytaj dalej →

Wakadog – devlog aplikacji internetowej na Hack Heroes

Wpis ten będzie miał charakter dziennika.

Hack Heroes to hackathon z okazji Code Weeka, czyli długiego tygodnia od 15. do 23. października. Więcej możecie o nim poczytać tutaj: http://apki.org/news/hack-heroes-wez-udzial-w-codeweekowym-hackathonie.

Pierwsza doba

23:53

Już od początku doby, tj. od północy do jakiejś czwartej zabrałem się za rozpoczynanie projektu. Odpalenie phpStorma, załadowanie wszystkich zależności na composerze i npm-ie. Rozrysowanie na kartce czegoś, na czym będę mógł się opierać podczas pisania i kodowania frontendu i backendu. Obmyślałem podstawowe funkcjonalności aplikacji i zabrałem się za pisanie najprostszego szkieletu backendu, żeby móc się skupić na frontendzie. Dlaczego tak? Lubię widzieć do czego piszę backend, a taki gotowy frontend motywowałby mnie do dalszego pisania. Z racji czasu na backend wybrałem Slim-a, a na frontend nic, prócz frameworka Materialize.css (który swoją drogą jest dużo słabszy niż wygląda, przez jedną dobę zdążył mi już sprawić nie jedną bolączkę).

Czytaj dalej →