How the engine works
Sprawdź jak działa Engine.Farm i jakie funkcje od siebie są zależne.
Do tego potrzebne jest zapoznać się z kilkoma warstwami silnika.
Dostarczamy kilka jasno sprecyzowanych warstw, które odpowiadają za procesowanie danych pomiędzy graczem, silnikiem i stanem gry:
- CoreLayer - warstwa odpowiadająca za organizację i załadowanie logiki Twojej gry do pamięci naszych maszyn
- DataLayer - odpowiada za stan gry i dostarcza mechanizmy do manipulacji danych w Entity
- LocationSpatialLayer - dostęp do zoptymalizowanego zbioru danych obiektów, dostarcza funkcje przenoszenia obiektów między sektorami manualnie oraz pobranie obiektów z danego obszaru
- EngineLayer - I/O obliczeń, tutaj przetwarzane są wszystkie obliczenia na obiektach stanu gry
- EndpointLayer - przetwarzanie pakietów wewnętrznych (w silniku i infrastrukturze do komunikacji między instancjami), zewnętrznych do obsługi eventów graczy oraz synchronizacją stanu gry ze stanem klienta
Engine capabilities
Tworząc projekt gry online w Engine.Farm uruchamiamy:
- 1 instancję World
- 1 instancję Sector*
- 1 instancję Endpoint* - socket dla graczy (SocketIO, w przyszłości zostanie dodany UDP) oraz REST API
- 1 instancję Agent - kanał administracyjny i developerski
- 1 instancję Redis* - cache (też jako warstwa w silniku)
- 1 instancję RethinkDB* - do przechowywania stanu gry z możliwością subskrypcji zmian wewnątrz silnika (w trakcie planowania)
- 100MB na przestrzeni na kod gry
* - możliwość skalowania instancji
Wszystkie instancje zostają uruchomione na wspóldzielonych klastrach (shared) i każda z uruchomionych Twoich instancji
ma gwarantowane zasoby, dzięki temu pozostałe projekty nie powinny negawynie wpływać na działanie Twojej gry.
Jest możliwość zamówienia dedykowany dla Twojego projektu gry klaster zarządzalny przez Engine.Farm.
Data flow
Jak już wiesz jakie istnieją warstwy w Engine.Farm i jakie instancje uruchamiamy aby stabilnie i wydajnie działał
Twój projekt to pora na kolejny etap.
... diagram ...