Bojkar\'s dev blog
maj 16
Komenatrze
icon1 admin | icon2 bez kategorii | icon4 05 16th, 2009| icon33 Comments »

Dopiero po pewnym czasie zauważyłem, że komenatrze nie działaja. Po długiej walce udało mi się to naprawić. Więc jeśli ktoś wcześniej dodał jakiś komentarz i nie zobaczył go na blogu, proszę jeszcze raz go dodać. Winny był plugin anty spamowy, który był aktywny a nie był widoczny w zakładce plugins. Ale udało się na szczęście go usunąć. To ja tyle ;)

maj 16
Stare projekty
icon1 admin | icon2 bez kategorii | icon4 05 16th, 2009| icon3No Comments »

Witam po dÅ‚uższej przerwie. Ostatnio przeglÄ…dajÄ…c swój dysk w komputerze natrafiÅ‚em na stare projekty, które kiedyÅ› “popeÅ‚niÅ‚em”. Byla to moja pierwsza gra jakÄ… wykonaÅ‚em “Alien” oraz filmik z mojej drugiej gry jakÄ… byÅ‚ “Typhoon”. Pierwsza gierka to byÅ‚ mój pierwszy kontakt z gamedev-em, prosta jak drut “gra” (jeÅ›li tak można nazwać 1 plansze), w której poruszaliÅ›my siÄ™ ufoludkiem i zabijaliÅ›my inne zÅ‚e ufoludki. Gdy spojrzaÅ‚em na kod tej gierki to ….. no wÅ‚aÅ›nie zaniemówiÅ‚em. Nie widziaÅ‚em, że taki kod może dziaÅ‚ać.

DrugÄ… gra jest o tyle ciekawa, że zostaÅ‚a stworzona na system Symbian OS, który jak wiemy jest czÄ™stym systemem w komórkach (np. Nokia, nie które Sony Ericssony). ZbudowaÅ‚em nawet na potrzebÄ™ tej “gry” prosty framework 2d. Umożliwiał animacje na spritach, proste kolizje, prosty system czÄ…steczkowy, obracanie obrazków, itp. OczywiÅ›cie wszystkie te rzeczy wtedy nie byÅ‚y wbudowane w api i trzeba byÅ‚o to samemu napisać. Poniżej zamieszczam filmiki z tych “produkcji”. A nie dÅ‚ugo postaram siÄ™ w koÅ„cu pokazać coÅ› nowego.


kwi 27
Curves
icon1 admin | icon2 projekty | icon4 04 27th, 2009| icon3No Comments »

Niech Was temat posta nie zgubi :) Chodzi oczywiÅ›cie o krzywe, a dokÅ‚adniej o animacje kamery, którÄ… “ostatnio” dodaje do mojego edytora. W ostatnim newsie pokazywaÅ‚em, jak dziaÅ‚a interpolacja liniowa kamery, a od tamtej pory udaÅ‚o mi siÄ™ zaimplementować animacje na krzywych. DokÅ‚adnie zaimplementowaÅ‚em krzywe Hermite’a, bardzo popularne w wielu programach graficznych (np. Lighwave czy 3dsmax). Wbrew pozorom nie sÄ… takie trudne do “napisania”. Ja piszÄ…c wÅ‚asna implementacje korzystaÅ‚em w sumie z dwóch linków: http://www.cubic.org/docs/hermite.htm oraz polskiego: http://www.dathox.unit1.pl/files/spider/DTX_Site/articles/interpolacje.htm Drugi link przedstawia trochÄ™ bardziej zooptymalizowany wzór, który stosuje również u siebie. Teraz za cel mam napisać jakiÅ› porÄ™czny moduÅ‚ do edycji tych krzywych ( Wynik dziaÅ‚ania możecie zobaczyć na kolejnym filmie:

kwi 15
Nowy feature
icon1 admin | icon2 projekty | icon4 04 15th, 2009| icon31 Comment »

Witam po krótkiej przerwie. Ostatnio postanowiÅ‚em dodać do edytora dość ciekawy feature a mianowicie animacje kamery. Dość przydatna rzecz np. do robienie cutscenek w grach czy do efektów w demach scenowych. WczeÅ›niej w starszych wersjach silnika animacjÄ™ kamery tworzyÅ‚em w zewnÄ™trznym programie 3D np. Lightwave i nastÄ™pnie zapisywaÅ‚em w jakimÅ› formacie i wczytywaÅ‚em już wczeÅ›niej zapisane key-e i tylko je “odgrywaÅ‚em”. Teraz postanowiÅ‚em zrobić obsÅ‚ugÄ™ animacji kamery we wÅ‚asnym edytorze. Narazie udaÅ‚o mi siÄ™ tylko zrobić prostÄ… kontrolkę  “timeline”, oraz interpolacje liniowÄ… key-ów (czyli tÄ… najprostszÄ… :) ). OczywiÅ›cie na tym nie pozostanÄ™. Już powoli pracuje nad interpolacja na krzywych, dokÅ‚adnie Hermite’a, ale o tym już innym razem. Dodatkowo umieszczam filmik, na którym można zobaczyć jak to teraz dziaÅ‚a. Czekam na opinie.

mar 31
icon1 admin | icon2 flex, projekty | icon4 03 31st, 2009| icon3No Comments »

Witam. Mineło trochę czasu od ostatniego postu z kilku przyczyn: 1) nie zdażyło się nic ciekawego, 2) modny brak czasu, 3) dobra pogoda na pojeżdzenie motocyklem :)

W pracy zaczeliÅ›my dość duży projekt, który bedzie sÅ‚użył do obsÅ‚ugi pewnych eventów. CaÅ‚ość bedzie pisane we flexie + php do połączenie z bazą danych. W projekcie postanowiliÅ›my użyć  “poważnego” frameworka, gdyż mój prosty raczej nie daÅ‚by rady (chodź jego część bÄ™dzie użyta). Do flexa popularne sÄ… 2 framework’i opierajÄ…ce siÄ™ na MVC:  Cairngorm oraz pureMVC. Oba frameworki sÄ… darmowe. My wybraliÅ›my pureMVC ponieważ czÄ™sto byÅ‚ polecanych na różnych poważnych forach, jest portowany na kilka(naÅ›cie) jÄ™zyków (np. c++, java, C#, php, itd.) i nie jest kombajnem do wszystkiego, tylko posiada samÄ… architekturÄ™ do MVC i do tego bardzo maÅ‚o “waży”. Pierwszy dzieÅ„ poszedÅ‚ na walke z nim ale juz z każdym dniej jest przystÄ™pniejszy i Å‚atwiejszy do zrozumienia. Bardzo mi sie podoba, na pewno przyspieszy produkcje systemu oraz uÅ‚atwi późniejszą jego rozbudowÄ™.

Dodatkowo w firmie piszę program do obsługi pracowników oraz zarządzania projektami. Tutaj całość jest pisana w C++, biblioteka wxWidgets (rox!) do GUI oraz mysqlpp do połączenie z bazą danych mySQL, którą również używamy w programie. Program bedzie pomagał logować to co użytkownik robił, ile czasu na to spędził oraz nad czym, dzięki temu bedzie nam łatwiej w przyszlości oceniach czasowo prace, oraz bedziemy mieli lepsze odwzorowanie czasu, który poświeciliśmy danemu zadaniu. Nie długo w tym miejscu umieszcze screen z głównego ekranu programu.

Jeszcze propo wxWidgets przypomniaÅ‚a mi siÄ™ jedna ważna rzecz. JeÅ›li kogoÅ› denerwuje konieczność Å›ciÄ…gania źródeÅ‚ oraz kompilowanie ich (katalog po kompilacji zajmuje okoÅ‚o 1gb!) i zastanawiaÅ‚ siÄ™ dlaczego nie ma gotowych libek mam dla niego rozwiÄ…zanie: wxPack. Jest to “paczka” gotowych libek dla Visual’a oraz mingw, dodatkowo zawiera opcjonalne kontrolki oraz najlepszy darmowy designer do tej bibloteki czyli wxFormBuilder. OczywiÅ›ci wszystko w najowszych stabilnych wersjach i zajmujÄ…ce duzoooo mniej miejsca i czasu niż rÄ™czne kompilowanie tego.

mar 17

Teraz jak już mam obsÅ‚ugÄ™ shaderów to grzechem by byÅ‚o nie wykorzystać ich do post processingu. Ale do tego brakowaÅ‚o mi jeszcze jednej rzeczy: szybkiego renderowania do tekstury. WczeÅ›niej już to robiÅ‚em ale za pomocÄ… wolnych sposobów takich jak np. glCopyPixels. Na szczęście OpenGL wprowadziÅ‚ coÅ› o wiele szybszego, mianowicie: Frame Buffer Object. Rozszerzenie te daje nam możliwość “off screen” ‘owego renderowania sceny do tekstury ale nie tylko. Możliwy jest również zapis bufora głębokoÅ›ci czy stencil’a. UdaÅ‚o mi siÄ™ to zaimplementować do mojego renderera, a przy okazji napisaÅ‚em do testów, trzy proste efekty post processing’owe: bloom, grayscale i sephia. Poniżej zamieszczam screeny prezentujÄ…ce ten efekt (w lewym dolnym rogu jest renderowania scena przy pomocy FBO do maÅ‚ego kwadracika, w którym te efekty widać, a w tle scena renderowana “normalnie”)

mar 15

Witam. Ostatnio na portalu polskiej demosceny (www.scene.pl) Slaves wyszedÅ‚ z ciekawÄ… inicjatywÄ… zorganizowania compo o nazwie “SCENE.PL Code Compo #1″. Celem tego konkursy byÅ‚o napisanie efektu graficznego zwiÄ…zanego w mniejszym lub wiÄ™kszym stopniu ze starym efektem scenowym, mianowicie szachownicÄ…. Jako, że dawno nic scenowego nie robiÅ‚em i miaÅ‚em głód twórczy, postanowiÅ‚em coÅ› skrobnąć. I tak po pracy po parÄ™ minut sobie skrobaÅ‚em powoli, aż powstaÅ‚a maÅ‚a produkcja. Co ciekawe, w compo wystartowaÅ‚o aż 7 prac (aktualnie z 1 jest problem a dokÅ‚adnie z jej odpaleniem) co jest dużym sukcesem jak na compo scenowe w tym trudnym okresie polskiej demosceny. Może wynik ten spowodowany jest nagrodÄ… głównÄ… sponsorowanÄ… przez organizatora, i to nie byle jakÄ…: butelka bimberku weselnego z wesela Slaves’a – rocznik 2008. MyÅ›lÄ™, że ta nagroda miaÅ‚a udziaÅ‚ w “dopingu” do pracy :) . Poniżej zostawiam link do konkursu, gdzie aktualnie trwa gÅ‚osowanie, link do mojej pracy i kilka poglÄ…dowych screenów.

Link do konkursu i innych prac: www.scene.pl

Link do mojej pracy: http://www.scene.pl/compo/4%20-%20scene_fx_compo_bojkar.zip

Link do video: http://www.youtube.com/watch?v=N0f4XsKFRfE&feature=channel_page

Screeny:

mar 12

Jako, że ostatnio podłączyłem do silnika shadery, postanowiłem znaleźć jakieś wygodne narzędzie do ich tworzenia. Postanowiłem przetestować kilka programów: Typhoon ShaderDesigner 1.5.9.4, Nvidia Fx Composer 2.5 oraz AMD RenderMonkey 1.82. Głównymi cechami które bym chciał aby taki program posiadał, są: oczywiście obsługę GLSL, szybkość działania, prosty lecz posiadający sporo możliwości (zmiana mesha, dodawanie zmiennych, zarządzanie materiałami, itp), podpowiadanie składni.

Zacznijmy wiÄ™c od pierwszego programu czyli Typhoon ShaderDesigner w wersji 1.5.9.4. To byÅ‚ mój pierwszy program do tworzenia shaderów z jakim siÄ™ spotkaÅ‚em. Z caÅ‚ej trójki, program ten może siÄ™ pochwalić najlżejszÄ… instalkÄ…, która “waży” tylko 10mb. Niestety wiąże siÄ™ to z kilkoma minusami ale o tym za chwile. Program odpala siÄ™ w miarÄ™ szybko, zaraz po uruchomieniu ukazujÄ™ siÄ™ nam na pierwszy rzut oka proste i intuicyjne GUI. Niestety jak siÄ™ zagłębimy okaże siÄ™, że dodanie uniformów, czy tekstur już nie jest takie intuicyjne a wrÄ™cz dość ‘dzikie”. Wszystkie okna sÄ… oczywiÅ›cie dokowane, ale zmiana ich organizacji jest strasznie toporna, a do tego po zmianie i ponownym odpaleniu programu, uÅ‚ożenie jest dalej standardowe. Samo pisanie kodu oraz modifikacja materiałów jest bardzo fajna. Edytor posiada podpowiadanie skÅ‚adni, które dziaÅ‚a delikatnie mówiÄ…c dziwne, żyje swoim życiem, czasami zadziaÅ‚a a czasami nie. Jako meshe mamy kilka gotowych obiektów oraz możemy dodać wÅ‚asny ale niestety w ich wÅ‚asnym formacie (*.gsd) co w sumie dyskwalfikuje tÄ… opcjÄ™. Dużym minusem tej aplikacji jest to, że nie jest już po prostu rozwijana. PodsumowujÄ…c: proste, toporne, do napisania na szybko czegoÅ› prostego ale do ciekawszej zabawy imho nie bardzo.

Kolejna aplikacją, którą testowałem był Fx Composer firmy Nvidia. Jest to najcieższą aplikacja z całej trójki (waga instalki 230mb), co również widać po szybkości odpalania aplikacji. Na moim już lekko leciwym sprzęcie potrafi się odpalać dobre pare sekund co nie jest fajne. Jak już poczekamy te kilka sekund ukazuje się nam całą aplikacja, od razu widać, że mamy do czynienia z czymś poważniejszym niż ShaderDesigner GUI jest dość mocno rozbudowane a przy tym w miarę intuicyjne. Tutaj również posiadamy dokujące się okna ale ich konfiguracja jest o wiele łatwiejsza i dokładniejsza, bez problemu ułożymy sobie układ do własnych potrzeb. Na pierwszy rzut oka widać rozbudową listę assetów (światła, meshe, tekstury itp), rozbudowane edytory materiałów oraz tekstur. Przejdźmy do najważniejszej rzeczy czyli edytora kodu. Kolorowanie składni oraz numerowanie linii kodu jest niemal identyczne jakie mamy w Visual Studio, czyli ładne i czytelne. Edytor posiada podpowiadanie składni i w przeciwieństwie do ShaderDesignera działa bardzo dobrze. Jednak mimo wielu zalet program ma jeden duży minus, który go dyskwalfikuję w moim przypadku: brak standardowej obsługi GLSL. Dlatego też postanowiłem spróbować jeszcze jednego programu:

AMD RenderMonkey. Powiem szczerze, że fimie Nvidia bardziej cenie od firmy ATI i majac nie za dobre doÅ›wiadczenie ze sterownikami ATI oraz ich kartami graficznymi za którymi również nie za bardzo przepadam, myÅ›laÅ‚em że ich soft jest sporo gorszy od Fx Composera. Ale pozory mogÄ… mylić i tak byÅ‚o w tym przypadku. Waga instalki jest po Å›rodku reszty programów – 99mb, czyli do “przeÅ‚kniÄ™cia”. Minusem jest to, że trzeba mieć konto (darmowe) na amd aby móc pobrać program (dodatkowo nie wiem czemu ale z ich serwerów Å›ciÄ…gaÅ‚o mi Å›rednio tylko 30kb/s). Program odpala siÄ™ równie szybko jak ShaderDesigner. Interfejs graficzny przypomina mi GUI z Visual Studio 6.0 czyli bez polotu ale użytecznie. Tutaj również mamy okna dokowalne, czyli mamy dowolnÄ… możliwość zmiany poÅ‚ożenia oraz rozmiaru gui.  Na pierwszy rzut oka mamy maÅ‚o opcji, ale na szczęście to tylko zÅ‚udzenie. W prosty i intuicyjny sposób możemy dodać tekstury, modele (tutaj możemy dodać dowolny mesh w popularnych formatach, np: 3ds, obj), zmienne, itp. Niestety można trochÄ™ ponarzekać na edytor kodu. Pierwsza rzecz to kolorowanie skÅ‚adni. SÅ‚owa kluczowe sÄ… Å‚adnie kolorowane, podobnie jak w Visual studio na kolor morski, ale nie które staÅ‚e takie jak np. gl_Position kolorowane na różowo to trochÄ™ przesada… co najgorsze nie udaÅ‚o mi siÄ™ znaleźć opcji zmiany kolorów kolorowania, także musimy żyć z tym różowym kolorem. Podpowiadanie skÅ‚adni jest niestety też nie za najlepsze. Ogólnego podpowiadania nie udaÅ‚o mi siÄ™ uruchomić, natomiast podpowiadanie skÅ‚adowych obiektów dziaÅ‚a już ok.  Brakuje mi też numerowania linii kodu, i też nie udaÅ‚o mi siÄ™ znaleść w opcjach włączenie tego.

Podsumowując wybrałem RenderMonkeya. Po pierwsze obsługują dobrze GLSL, działa dość szybko (w przeciwieństwie do Fx Composera), jest prosty a zarazem posiada dużo potrzebnych opcji. Ma dobrze rozbudowane dodawanie tekstur oraz zmiennych. Ten program zrobił na mnie największe wrażenie i będę go używał.

P.S. Namawiam wszystkich koderów do brania udziału w SCENE.PL Code Compo. Ja też postaram się wziąść udział i na pewno pochwale się swoja produkcją. Szczegóły: http://www.scene.pl/

mar 1

Wczoraj udało mi się podpiąć shadery. Do ich pisania będę używał języka GLSL, podpięcie obługi glsl-a okazało się bajecznie proste. Teraz w końcu będzie można dodać jakieś ciekawe efekty do renderera. Poniżej przykładowy screen z przykładowym shaderem.

Wczoraj dostałem od kolegi fajne porównanie na temat Javy:

“Mówienie, że Java jest dobra, bo dziaÅ‚a na wszystkich systemach jest jak mówienie, że seks analny jest dobry, bo dziaÅ‚a u obu pÅ‚ci.”

lut 28
Demoscena
icon1 admin | icon2 demoscena | icon4 02 28th, 2009| icon3No Comments »

Demoscena… Zapewne każdy coÅ› nie coÅ› o niej sÅ‚yszaÅ‚ lub miaÅ‚ okazjÄ™ brać czynny udziaÅ‚ w tym “przedsiÄ™wziÄ™ciu”, ja na szczęście zaliczam siÄ™ do tej drugiej grupy. DemoscenÄ… interesowaÅ‚em siÄ™ od dawien dawna, niestety mój dorobek scenowy jest mizerny. ByÅ‚o spowodowane to tym, iż gdy byÅ‚o dużo osób, którym siÄ™ chciaÅ‚o (graficy, muzycy, itp) to ja miaÅ‚em za maÅ‚e umiejetnoÅ›ci na jakieÅ› demko czy intro natomiast gdy mi wzrosÅ‚y umiejÄ™tnoÅ›ci to już tych ludzi nie bylo. DobrÄ… stronÄ… tego wszystkiego jest to, że w tym czasie polska scena jeszcze żyÅ‚a peÅ‚nÄ… piersiÄ… (no dobra 3/4 piersi), powstawaÅ‚o sporo magów (BudyÅ„, The Beast, itp), demek, interek, kanaÅ‚ ircowy #polishcene byÅ‚ opanowany przez sporÄ… liczbÄ™ ludzi a nie jak teraz botów, ba nawet byÅ‚o radio scenowe (scene fm) prowadzone przez Urala, nawet mam gdzieÅ› jeszcze na hdd zgrane audycje (jeÅ›li ktoÅ› jest zainteresowany, prosze o kontakt). Jeszcze udaÅ‚o mi siÄ™ nawet zaÅ‚apać na snailowanie, do dzisiaj w szafie mam pudeÅ‚ko ze snailami, poklejonymi kopertami i coverami. Ten czas wspominam bardzo miÅ‚o, tym bardziej że od tamtej pory zaczÄ…Å‚em siÄ™ mocno interesować programowaniem grafiki. PamiÄ™tam jak dziÅ› jak wchodziÅ‚em na #polishscene i zagadaÅ‚em do kodera, niejakiego Nethera (niestety kontaktu już z kolega nie mam, a tego na 99.999% nie czyta), które później mÄ™czyÅ‚em mniej lub wiÄ™cej gÅ‚upimi pytaniami o OpenGl-u. Aż siÄ™ Å‚ezka w oku krÄ™ci…

Podczas mojego “scenowania” z tego co pamietam udaÅ‚o mi sie wypuÅ›cić dwie prodki: demo 16a (tak byÅ‚o takie compo), oraz music diska. Z tego udaÅ‚o mi siÄ™ zachować tylko demo16s (screeny i download poniżej), a music disk niestety gdzieÅ› przepadÅ‚ (jeÅ›li znajdÄ™ na pewno tutaj wrzucÄ™). Warto zaznaczyć, że ten music disk byÅ‚ mojÄ… pierwszÄ… produkcjÄ… scenowÄ… i napisanÄ… jeszcze w Delphi!

,

Link do ściągniecia demka: tutaj

« Previous Entries Next Entries »