AGE

Niestety nie było mnie stać na wymyślenie jakiegoś ciekawego tytułu notki więc niestety jest jaki jest… Ale nie tytuł jest najważniejszy! Zebraliśmy się tutaj, aby dowiedzieć się czegoś na temat tego co dzieje się z AGE.

Na początek – postanowiłem wreszcie porzucić zestaw GEdit+Makefile na rzecz środowiska Code::Blocks. Na początku w GEdicie było fajnie, ale niestety w miarę jak rozrastał się projekt przestał mi wystarczać taki zestaw ^^

Drugą, równie ważną, sprawą, jest to, że sprawdziłem wczoraj wieczorem (ok – w nocy) czy AGE skompiluje się pod Windowsem. Bałem się, że nie będzie to należało do przyjemnych doświadczeń. Jak się okazało – nie taki diabeł straszny jak go malują 🙂 Najwięcej czasu zajęło mi ściąganie bibliotek SDL oraz Code::Blocks pod windowsa 😉 Potem stworzyłem projekt, dodałem pliki z kodem źródłowym i włączyłem kompilację. Wyrzucił kilka warning’ów odnośnie porównywania signed-unsigned, i jeden błąd.

Okazało, się że w użyłem w jednym miejscu nazwy jaka istniała już jako definicja preprocesora w windows.h. Na szczęście poprawienie tego stanu rzeczy nie zajęło więcej niż minutę. Ponowna próba kompilacji i…. udało się 🙂 AGE skompilowało się na Windows z drobnymi poprawkami!

Okazuje się, że decyzja o użyciu SDL+OpenGL była całkiem dobra – przynajmniej względem przenośności kodu. Osiągnąłem całkiem zadowalające efekty dość niskim kosztem.

Ech.. uruchomienie tego samego kodu i zobaczenie go w akcji w 2 systemach sprawia ogromną radochę 😉 Polecam wszystkim wypróbowanie ^^

Reklamy

9 myśli nt. „AGE

  1. @Xion: Migracja była Linux->Windows tym razem 🙂 Wine niewiele pomoże mi na windowsie 😛 Co ciekawe wydajność jest nie-za-wysoka na Windzie, a myślałem, że tam będzie lepiej… No cóż, trzeba pokombinować.

  2. @Krajek: nie chciało mi się specjalnie kombinować z rozszerzeniami. Wykorzystywałem do tego glDrawArrays, a później glCallLists (z odpowiednim buforowaniem list) – zysk był, ale na 500 obiektach był rzędu 2FPS 😛 To raczej średnio zadowalające. Chyba będę musiał spróbować tych odkładanych wiecznie na później VBO 😛

  3. @Krajek: sprawdziłem VBO. Okazuje się że wydajnościowo leżą dla grafiki 2D podobnie jak listy wyświetlania i rysowanie tablic. Zastanawiam się co jest powoden takiej wydajności – kiedy używałem Windows+DirectX miałem ze 2 razy więcej FPS przy czym rysowałem znacznie więcej obiektów… Niemożliwe, żeby OGL był aż tak wolny w stosunku do DX – coś tu jest nie tak ^^

  4. No to ja tez sprawdzę na dniach jak to jest rzeczywiście. Podaj najlepiej jak duże obiekty i jaką teksturę/tekstur używałeś. Ja zrobię to samo i jakoś porównamy wyniki.

  5. @krajek: jak przystało na 2D używam tylko GL_TRIANGLE_FAN (razem 5 wierzchołków) i renderuję na tym teksturę 256×256 – obrazek PNG który ma trochę miejsca całkowicie transparentnego, a reszta jest tak w połowie widoczna. Renderuję to w wielkości 100×100 (pikseli) w ilości 100. Rozdzielczość (w okienku) jest 640×480 i FPS wynosi ~150.

Skomentuj

Wprowadź swoje dane lub kliknij jedną z tych ikon, aby się zalogować:

Logo WordPress.com

Komentujesz korzystając z konta WordPress.com. Wyloguj / Zmień )

Zdjęcie z Twittera

Komentujesz korzystając z konta Twitter. Wyloguj / Zmień )

Facebook photo

Komentujesz korzystając z konta Facebook. Wyloguj / Zmień )

Google+ photo

Komentujesz korzystając z konta Google+. Wyloguj / Zmień )

Connecting to %s