Inside. VideoGames. magazine COMPUTER GRAPHICS PROGRAMMING GAME DEVELOPMENT

Inside VideoGames magazine COMPUTER GRAPHIC S PROGRAMMING GAME DEVELOPMENT Co słychać w programistycznym świecie? Blogi Blogersi postanowili mi z...
Author: Nina Muszyńska
2 downloads 0 Views 8MB Size
Inside

VideoGames magazine COMPUTER GRAPHIC S PROGRAMMING GAME DEVELOPMENT

Co słychać w programistycznym świecie?

Blogi Blogersi postanowili mi zrobić na złość – coraz to nowi przerzucają się na język angielski. Zaczęło się od Rega(http://regedit.gamedev.pl/), teraz przyszedł czas na Riddlemastera (http://wojtektoman.blogspot. com/) i Daba (http://dabroz.scythe.pl/). Na całe szczęście pozostał nam Xion i jego (bezcenne nieraz) porady – na przykład dotyczące zasobnika systemowego (http://xion.org.pl/2009/08/10/ gdzie-jest-pasek-zadan/). Blog Artpoza obfituje we wpisy dotyczące historii elektronicznej rozrywki i gamedevu jako takiego, jak na przykład wspomnienie jakiejś ważnej firmy czy proces rozwijania poprzedniej generacji konsol do gier (http://gamedev-pl.blogspot.com/). U mechanika mamy drugą część kursu o SSE (http://www.bsmechanik.pl/2009/08/sse-w-klasie2_11.html) i dodatkowo link do bardzo fajnego bloga, którego głównym celem jest tłumaczenie co ważniejszych notek innych twórców oprogramowania (http:// www.devblogi.pl/). 

Regedita eksperymenty z silnikiem PhysX.

Prezentacja możliwości silnika nGENE autorstwa Riddlemastera.

WARSZTAT MAG

NUMER 17 (SIERPIEŃ / WRZESIEŃ 2009)



Wywiad trudno jest się domyśleć, że będzie tu chodziło głównie o sterowniki kart graficznych. W moim przypadku trafiłem na tyle ciekawie, że mój team zajmuje się głównie kompilatorem i optymalizatorem shaderów tłumaczącym kod shaderów Direct3D na wewnętrzne instrukcje GPU, a więc tym, co tygrysy lubią najbardziej. S: Jesteś doktorantem - rozumiem, że specjalizujesz się w grafice? Prowadzisz jakieś zajęcia dla studentów PG? KK: W odróżnieniu od typowych studiów doktorat opiera się na pracy własnej, zamiast na „byciu nauczanym”, więc pod tym kątem moja specjalizacja w grafice zaczęła się na długo przed doktoratem, gdy grafice zacząłem poświęcać więcej czasu. Mój doktorat również związany jest z grafiką i dotyczy paru usprawnień popularnego algorytmu (nie będę póki co zdradzał, jakiego). Czynne prowadzenie zajęć leży w obowiązkach doktoranta i dotychczas prowadziłem laboratoria z Grafiki Trójwymiarowej oraz Systemów Graficznych dotyczących podstaw grafiki i obsługi OpenGL/Direct3D. Zajęcia wypadły dość shaderowo (co dzisiaj jest raczej zaletą), ale myślę, że niezbyt strasznie. S: Poza pracą i uczelnią masz jeszcze siłę, a przede wszystkim chęci, żeby programować 4fun tak jak kiedyś? :) Jeśli tak, to nad czym obecnie pracujesz (jeśli to nie tajemnica oczywiście)? Może skrobiesz po nocach jakąś gierkę? ;) KK: Siły i chęci są, jednak czasu już znacznie mniej. Z większych rzeczy, skrobię powoli swój silnik (wykorzystany swego czasu w grze TimeLoop na świąteczne compo 2008), chociaż właśnie z uwagi na brak czasu idzie to bardzo powoli. Mam też parę mniejszych pobocznych projektów, ale do wszystkiego staram się podchodzić na luzie - bardziej niż ukończenie projektu liczy się dobra zabawa przy jego tworzeniu. Poza programowaniem zajmuję się również muzyką i elektroniką, więc czas wolny trzeba odpowiednio gospodarować. Gry po nocach nie skrobię - wolę pisać silniki niż gry, zwłaszcza gdy wiąże to się z dodawaniem fajnie wyglądających bajerów. Może kiedyś to się zmieni (np. gdy silnik dojdzie do stadium używalności), ale na pewno to jeszcze trochę potrwa.

WARSZTAT MAG

NUMER 17 (SIERPIEŃ / WRZESIEŃ 2009)

S: Na warsztat trafiłeś już dość dawno temu, jak zapatrujesz się na zmiany, które zaszły? Myślisz, że Polski amatorski gamedev idzie w dobrym kierunku, czy może coś Ci się nie podoba? KK: Właściwie to na samym forum nie zauważyłem żadnych większych zmian, poza ciągłym przyrostem liczby osób. Było parę fluktuacji, pojawiały się i znikały liczniki, punkty, działy forum i dodatkowe zasady, ale wielkimi zmianami nazwać tego nie można. Największą pozytywną zmianą dotychczas było pojawienie się serwisu gamedev.pl (parę lat temu Warsztat to było wyłącznie forum), gdyż w ten sposób pojawiła się platforma do prezentacji swoich osiągnięć i niekiedy artykułów. Wszystko inne to na dobrą zmianę kosmetyczne zmiany niemające większego wpływu na karierę programistyczną typowego amatorskiego developera, którego większość pracy to tworzenie we własnym zakresie, a nie przesiadywanie na forum. Nie ma też co używać wielkich słów, jeżeli chodzi o kierunek polskiego gamedevu - ten po prostu się rozwija, co jest pozytywne i stanowi naturalną kolej rzeczy. S: Uchodzisz za jedną z osób z największym skillem na Warsztacie - masz na to jakiś przepis? Dużo czytasz - książki, blogi? A może raczej samemu eksperymentujesz? Jakaś magiczna dieta? :P KK: Przepis? Po prostu interesować się tematem i nie ograniczać się do kopiowania kodu z tutoriali. Jeżeli o grafikę chodzi, absolutną podstawą jest znajomość potoku graficznego, w tym zasady działania shaderów. Znajomość - w sensie poznania możliwości i matematyki pod spodem, a nie konkretnego wykorzystania. Przykładowo na blending należy patrzeć jak na kilka operacji matematycznych, których akurat jednym z zastosowań jest przezroczystość, ale nikt nie broni wykorzystać go przykładowo do integracji układów fizycznych czy innych nietypowych rzeczy. W podobny sposób cały potok graficzny można wykorzystywać do rzeczy, do których początkowo nie był on przewidziany. Prócz tego dobrze jest dużo czytać i samemu kombinować w oparciu o to, co się przeczytało - w końcu nawet Carmack, czy naukowcy z SIGGRAPHu mogli przeoczyć coś, co da się zrobić lepiej. Do lektury nadają się wszelakie publikacje w sieci i w specjalistycznych książkach, włącznie z publikacjami SIGGRAPHu, przez które prze-



Wywiad brnięcie nieraz graniczy z cudem, ale jest wartościowe gdyż można poznać tam podejścia bardzo nietypowe. Od razu zaznaczę, że bez angielskiego tutaj ani rusz, bo po polsku zaawansowanych rzeczy po prostu nikt nie pisze. Do wszystkiego, co się czyta, nadal należy jednak podchodzić z otwartym umysłem, zwłaszcza w kwestiach implementacyjnych - to, że w siedemdziesiątym ósmym tomie Perełek, czy jakimś tutorialu coś zrobiono tak, a nie inaczej, nie znaczy, że to jest jedyny sposób. Gdy człowiek z różnych źródeł pozna kilkanaście sposobów robienia normalmappingu, blooma, czy animacji na kościach, sam wyrobi sobie opinię co i jak można zrobić i będzie w stanie zastosować własne, często zupełnie inne, podejścia. No i na koniec - warto co jakiś czas swoje pomysły wprowadzać w życie, nawet jeżeli miała by to być prosta aplikacja testowa. Niestety, żadne z dużych API graficznych (OpenGL/ Direct3D) nie pozwala na szybkie tworzenie prostych aplikacji, więc dobrze jest napisać framework odwalający typową robotę (tworzenie okna, itp.) oraz maksymalnie upraszczający podstawowe operacje (chcesz rendertarget o określonych parametrach? deklarujesz jedną zmienną globalną i gotowe, o całą resztę martwi się framework). S: O ile gamedev jest dziedziną dosyć popularną, o tyle demoscena jest już raczej dosyć ‘niszowa’, o 4k nie wspominając. Jak to się stało, że zacząłeś interesować się tym tematem?

KK: Po części przez gamedev - trafiłem na swego czasu popularną grę 96k .kkrieger i zacząłem szperać głębiej, skąd to się wzięło. W efekcie trafiłem na inne demka oraz demotoola .werkkzeug1 i doszedłem do wniosku, że przecież też mogę takie rzeczy robić. W przeciwieństwie do gier demka koncentrują się prawie wyłącznie na grafice i dźwięku, są znacznie mniejsze i często dużo szybciej można napisać fajne demo niż rozbudowaną grę. Dodatkowo dochodzą czynniki „chwały” oraz „szczękoopadu” (niezaznajomionym z tym pojęciem polecam obejrzenie dema Elevated 4k by RGBA & TBC). Zwłaszcza temat dem 4k jest pod tym względem wdzięczny, gdzie z reguły podstawą jest dobry koderski pomysł. Oczywiście niewątpliwą zaletą dem 4k jest też to, że nie da się ich rozwijać w nieskończoność, więc mamy jako taką gwarancję, że kiedyś taki projekt skończymy. S: Hehe, no właśnie z tym kończeniem to bywa różnie :P Skoro o kończeniu mowa, to planujesz wypuścić jakąś prodkę na zbliżającym się Riverwash? Sam czy z Allien Senses, a może z jakimś innym teamem? Znów 4k? :) KK: Co i jak w kwestii Riverwasha to się jeszcze okaże. Chciałbym coś wypuścić, najprawdopodobniej 4k, ale zobaczymy na co możliwości czasowe pozwolą. Pomysł na demo jest, nawet dość przełomowy, pozostaje więc „tylko” kwestia implementacji, a że party tuż

Screeny z pięknego dema Elevated 4k by RGBA & TBC

WARSZTAT MAG

NUMER 17 (SIERPIEŃ / WRZESIEŃ 2009)

10

Wywiad tuż, ciężko mi wyrokować czy uda się demo skończyć. Ewentualne demo najprawdopodobniej ukazałoby się pod szyldem DMA - grupy, w której siedzę najdłużej. Swego czasu współpraca z Allien Senses była tylko przelotna i w tej chwili nic razem nie tworzymy. S: O ile się nie mylę - nie prowadzisz bloga, chociaż na pewno miał byś wiele do powiedzenia. Możemy (jako społeczność gd) spodziewać się pojawienia w sieci Twojej wesołej twórczości? KK: Swego czasu stworzyłem stronę internetową, która jednak szybko popadła w zapomnienie, gdyż wolałem robić ciekawsze rzeczy niż dokańczanie starych produkcji i wrzucanie ich na stronkę. Przygotowanie czegokolwiek do publicznej prezentacji wymaga trochę wysiłku (nie chciałbym wrzucać w sieć bubli), co zwykle przegrywało z chęcią zajęcia się nowym projektem. Nie wykluczam, że kiedyś jakąś stronkę ze swoimi produkcjami stworzę, na razie jednak pozostaje Wam się „delektować” moją „twórczością” compotową i od czasu do czasu jakimś scenowym demem. S: Czy pomimo braku czasu zdarza Ci się grać w gry? W pewnych kręgach panuje ‘mit’, że nie można tworzyć gier nie grając. W grach można też podpatrywać nowe trendy choćby w rozwijaniu silników. Jakie Ty masz do tego podejście? KK: Do podpatrywania nowych trendów nie trzeba wcale zagrywać się na śmierć - żeby mieć przyzwoity wgląd na sytuację, w zupełności wystarczy przejrzenie wersji demonstracyjnych. Fakt faktem, często można też podejrzeć wiele lepszych lub gorszych trików, zwłaszcza graficznych, czy też zaobserwować rozwiązania gameplayu, które kompletnie się nie sprawdziły (a niestety sporo takich). Nie jestem jednak nałogowym graczem, chociaż czasami zdarza mi się wciągnąć w jakąś grę i spędzić nad nią kilka wieczorów. S: Wspomniałeś, że zajmujesz się elektroniką i muzyką - mógłbyś troszkę rozwinąć myśl? Jeśli chodzi o muzykę, w Twoim podpisie na forum widnieje link do szkoły DJ. Nagrywasz tylko dla siebie, czy może grasz (lub grałeś) na jakiś imprezach? Oprócz tych dwóch dziedzin masz jeszcze jakieś pasje? Wędkarstwo podlodowe, zbieranie poradzieckich latarek? :P

WARSZTAT MAG

NUMER 17 (SIERPIEŃ / WRZESIEŃ 2009)

KK: Przygodę z muzyką zacząłem dość wcześnie od lekcji pianina/klawiszy za młodu, z czego mi zbyt dużo raczej nie zostało. Później zacząłem grać na gitarze basowej, grając nawet przez pewien czas w amatorskim zespole rockowym. Zabawa w DJ to zajęcie relatywnie nowe i dotychczas na imprezach grałem jedynie parę razy. Poza tym bywa, że tworzę własne kawałki (dla zainteresowanych: wykorzystuję FL Studio Producer Edition), ale dopiero się wdrażam i na poważniejsze efekty przyjdzie jeszcze trochę poczekać - póki co moją twórczość można usłyszeć tylko w demach i niektórych grach compotowych (zwłaszcza na IGK). Elektroniką zajmuję się w nieco mniejszym stopniu, gdy pojawią się pomysły i/lub zapotrzebowanie na jakiś ciekawy projekt. Innych zainteresowań trochę jeszcze by się znalazło (np. żeglarstwo), ale nie będę się może na ten temat rozpisywał. Wędkarstwem podlodowym i poradzieckimi latarkami jeszcze się nie zajmowałem, ale jako że lubię zajmować się wszystkim, co interesujące, nie jest to w przyszłości wcale wykluczone (chociaż dwa wspomniane zajęcia zbyt interesująco akurat nie zabrzmiały). S: Chciałbyś powiedzieć coś na koniec? Może jakieś rady dla młodych adeptów GD, może pozdrowienia dla gorących dziewczyn, albo głębokie przesłanie dla świata? :P KK: Garść rad dla adeptów już była, pozdrowienia dla dziewczyn przesyłają wszyscy, więc dla odmiany u mnie ich nie będzie, więc pozostaje głębokie przesłanie: sru do kodowania, a nie mi tu czytać kiepskie wywiady w internetowych magazynach. ;) S: Zaraz, zaraz! Jak to kiepskie? :D :P Wielkie dzięki za rozmowę.

Z Krzyśkiem K. rozmawiał Sobol

11

WARSZTAT MAG GameDev.pl

Suggest Documents