Witam,
Czy znalazłby się ktoś z umiejętnościami stworzenia enginu do gry 2d przy użyciu OpenGL, OpenAL, Box2d, PhysFS z obsługą sieci (np. enet) i client side prediction. Engine musiałby obsługiwać pisanie logiki np. w Lua, W ostateczności logika może być pisana w C lub C++, jednakże musi być oddzielona od samego enginu.
Engine ma działać pod Windows oraz Linux.
Chodzi o coś w tym stylu: [login to view URL] (wages of war)
Obsługa shaderów do oświetlenia mile widziana.
Wymagania:
- obsługa window\'a i linux\'a (wersje 32 i 64 bitowe)
- grafika obsługiwana przez OpenGL
- dźwięk przestrzenny przez OpenAL
- fizyka 2d z Box2d (+ client-side prediction)
- obsługa systemu plików po przez bibliotekę PhysFS
- system bytów (entities)
- przezroczysta obsługa sieci - przesyłanie zmian w obiektach gry z serwera do klientów po UDP (np, za pomocą enet)
- dedykowany serwer gry
- wbudowany serwer gry w klienta
- mapy złożone z kafelków (tiles) i obiektów, czytanie formatu TMX ([login to view URL]), możliwość tworzenia własnych loaderów map,
- konfiguracja enginu na podobnej zasadzie jak w enginie Quake (można użyć JIMTCL [login to view URL])
- obsługa czcionek TTF,
- renderowanie animacji 2d (ramki w jednym obrazku) z możliwością podania prędkości animacji, kierunku (animacja od początku do końca i od końca do początku) oraz z opcją zapętlenia animacji lub powtarzanie ostatniej ramki
- ładowanie zasobów gry w oddzielnym wątku
- logika gry odseparowana od enginu
- logika menu gry odseparowana od enginu
- możliwość rysowania bytów po stronie klienta z poziomu logiki
- konfigurowalny system cząsteczek
- API do kontroli kamery (skalowanie i przesuwanie ekranu)
Opcjonalne wymagania:
- shadery i dynamiczne oświetlenie (normal, glow, gloss map)
- logika gry i menu pisana w skryptach (np. Lua)
Proszę o orientacyjną wycenę wykonania takiego enginu lub przystosowania istniejącego.
Jeżeli ktoś posiada już podobny engine, spełniający większość powyższych wymagań, w grę wchodzi również wykupienie licencji, wtedy będę prosił o pełną dokumentację takiego enginu (i najlepiej jakieś demo).