Paradygmat programowania, w którym obiekty gry (byty) składają się z komponentów i są obsługiwane przez systemy. Każda jednostka jest identyfikatorem, który wskazuje na określone składniki.
Dużo czytałem o komponentach i systemach encji i pomyślałem, że pomysł bytu będącego tylko identyfikatorem jest dość interesujący. Jednak nie wiem, jak to całkowicie działa z aspektem komponentów lub aspektem systemów. Komponent to po prostu obiekt danych zarządzany przez odpowiedni system. System kolizji wykorzystuje część BoundsComponent wraz ze strukturą danych …
Mam dwa przypadki użytkowników: Jak entity_Awysłać take-damagewiadomość entity_B? Jak entity_Azapyta entity_BHP? Oto, co do tej pory spotkałem: Kolejka wiadomości entity_Atworzy take-damagewiadomość i publikuje ją w entity_Bkolejce wiadomości. entity_Atworzy query-hpwiadomość i publikuje ją na entity_B. entity_Bw zamian tworzy response-hpwiadomość i publikuje ją na entity_A. Publikuj / subskrybuj entity_Bsubskrybuje take-damagewiadomości (być może …
Wczoraj przeczytałem prezentację GDC Canada na temat systemu encji Attribute / Behavior i myślę, że jest całkiem świetny. Nie jestem jednak pewien, jak z niego korzystać praktycznie, nie tylko teoretycznie. Po pierwsze, szybko wyjaśnię ci, jak działa ten system. Każda jednostka gry (obiekt gry) składa się z atrybutów (= danych, …
Po przejrzeniu kilku wzorców projektowania gier, zdecydowałem się na Entity-Component-System (ES System) dla mojego silnika gry. Czytam artykuły (głównie T = Maszyna ) i przeglądam kod źródłowy i myślę, że mam dość, aby zacząć. Jest tylko jeden podstawowy pomysł, z którym się zmagam. Jak postępować z grupami podmiotów, które są …
Pracuję nad systemem komponentów encji w C ++, który, mam nadzieję, będzie podążał za Artemisem (http://piemaster.net/2011/07/entity-component-artemis/), ponieważ komponenty to głównie torby danych, a to Systemy zawierające logikę. Mam nadzieję, że wykorzystam podejście skoncentrowane na danych i zbuduję fajne narzędzia do obsługi treści. Jednak jeden garb, z którym się spotykam, to …
Ostatnio dużo czytałem na temat systemów encji do implementacji w moim silniku gry C ++ / OpenGL. Dwie kluczowe korzyści, które stale słyszę o systemach chwalonych, to: łatwa konstrukcja nowych rodzajów bytów, ponieważ nie trzeba zaplątać się w złożone hierarchie dziedziczenia, oraz wydajność pamięci podręcznej, którą trudno mi zrozumieć. Teoria …
Po zadaniu dwóch pytań na temat systemów bytów ( 1 , 2 ) i przeczytaniu kilku artykułów na ich temat, myślę, że rozumiem je znacznie lepiej niż wcześniej. Nadal mam pewne wątpliwości, głównie dotyczące budowy emitera cząstek, systemu wejściowego i kamery. Oczywiście nadal mam pewne problemy ze zrozumieniem systemów encji …
Wdrażam wariant systemu encji, który ma: Klasa Entity czyli niewiele więcej niż ID, który wiąże ze sobą składniki Kilka klas komponentów , które nie mają „logiki komponentów”, tylko dane Kilka klas systemowych (zwanych także „podsystemami”, „menedżerami”). Wykonują one wszystkie przetwarzanie logiki encji. W najbardziej podstawowych przypadkach systemy po prostu iterują …
Zaczynam naprawdę skupiać się na projektowaniu opartym na komponentach. Nie wiem, jaki jest „właściwy” sposób, aby to zrobić. Oto scenariusz. Gracz może założyć tarczę. Tarcza jest rysowana jako bąbel wokół gracza, ma osobny kształt kolizji i zmniejsza obrażenia, które gracz otrzymuje od efektów obszarowych. Jak zbudowana jest taka tarcza w …
Pracuję nad grą z architekturą opartą na komponentach. Jest Entitywłaścicielem zestawu Componentinstancji, z których każda ma zestaw Slotinstancji do przechowywania, wysyłania i odbierania wartości. Funkcje fabryczne, takie jak Playertworzenie elementów z wymaganymi komponentami i połączeniami gniazd. Próbuję ustalić najlepszy poziom szczegółowości dla komponentów. Na przykład teraz Position, Velocityi Accelerationsą wszystkie …
Przez jakiś czas interesowałem się systemem encji opartym na komponentach i czytałem o nim niezliczone artykuły ( gry Insomiac , dość standardowy Evolve Your Hierarchy , T-Machine , Chronoclast ... żeby wymienić tylko kilka). Wszystkie wydają się mieć strukturę na zewnątrz czegoś takiego jak: Entity e = Entity.Create(); e.AddComponent(RenderComponent, ...); …
Trochę tła, koduję grę ewolucyjną z przyjacielem w C ++, używając ENTT dla systemu encji. Stworzenia chodzą po mapie 2D, jedzą zielenie lub inne stworzenia, rozmnażają się, a ich cechy mutują. Dodatkowo wydajność jest w porządku (60 klatek na sekundę bez problemu), gdy gra jest uruchomiona w czasie rzeczywistym, ale …
Zamknięte . To pytanie musi być bardziej skoncentrowane . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby skupiało się tylko na jednym problemie, edytując ten post . Zamknięte 2 lata temu . W swoich grach rozważałem przejście na podejście bardziej oparte na komponentach. Czy ktoś jeszcze ma …
(To, co opisuję, opiera się na tym projekcie: Co to jest struktura systemu encji? Przewiń w dół, a znajdziesz ją) Mam problemy z tworzeniem systemu encji-komponentów w C ++. Mam swoją klasę Component: class Component { /* ... */ }; Który jest w rzeczywistości interfejsem do tworzenia innych komponentów. Aby …
Myślę, że już wpadłem na pomysł Entity System zainspirowany przez Adama Martina (t-machine). Chcę zacząć używać tego do mojego następnego projektu. Znam już podstawy Entity, Components i Systems. Mój problem dotyczy sposobu obsługi interfejsu użytkownika / interfejsu użytkownika. Na przykład okno zadania, okno umiejętności, okno informacji o postaci itp. Jak …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.