Un paradigma di programmazione in cui gli oggetti di gioco (entità) sono composti da componenti e sono gestiti da sistemi. Ogni entità è un ID che punta a componenti specifici.
Partiamo dall'approccio di base sistemi-componenti-entità . Creiamo assemblaggi (termine derivato da questo articolo) semplicemente per informazioni sui tipi di componenti . Viene eseguito in modo dinamico in fase di runtime, proprio come aggiungeremmo / rimuovere componenti a un'entità uno per uno, ma chiamiamolo più precisamente poiché si tratta solo di …
Okey, quello che so finora; L'entità contiene un componente (archiviazione dei dati) che contiene informazioni simili; - Texture / sprite - Shader - ecc E poi ho un sistema di rendering che disegna tutto questo. Ma quello che non capisco è come dovrebbe essere progettato il renderer. Dovrei avere un …
Sto realizzando un gioco progettato con il paradigma entità-componente che utilizza i sistemi per comunicare tra i componenti, come spiegato qui . Ho raggiunto il punto nel mio sviluppo che ho bisogno di aggiungere stati di gioco (come pausa, gioco, inizio livello, inizio round, fine gioco, ecc.), Ma non sono …
Sfondo: Sto progettando un semplice sistema di rendering 3D per un'architettura di tipo sistema di componenti di entità usando C ++ e OpenGL. Il sistema è costituito da un renderer e un grafico di scena. Quando finisco la prima iterazione del renderer, potrei distribuire il grafico della scena nell'architettura ECS. …
La mia domanda è questa: Come si archiviano i dati di contesto globale, ad es. informazioni sui dati mondiali, ora mondiale attuale, ecc. in un sistema di componenti di entità? Sto pensando di lavorare per costruire un gioco di simulazione mondiale aperto in stile Dwarf Fortress in C ++. Ho …
Se un'entità non ha un "tipo" esplicito (ad esempio un giocatore) ed è semplicemente una raccolta di componenti, come posso identificare le entità su cui i miei sistemi dovrebbero e non dovrebbero lavorare? Ad esempio, in una partita a Pong la paletta e la palla si scontrano entrambe con i …
Attualmente sto affrontando il seguente problema: Sto cercando di scrivere un clone pong utilizzando un sistema di componenti entità (ECS). Ho scritto il "framework" da solo. Quindi esiste una classe che gestisce le entità con tutti i componenti. Quindi ci sono le classi componenti stesse. E infine ci sono i …
Sto cercando di progettare un sistema di entità basato su componenti per scopi di apprendimento (e in seguito utilizzarlo su alcuni giochi) e sto avendo dei problemi quando si tratta di aggiornare gli stati delle entità. Non voglio avere un metodo update () all'interno del componente per prevenire dipendenze tra …
Al fine di ottenere componenti in grado di aggiornare ogni frame (e lasciare questa funzionalità fuori dai componenti che non ne hanno bisogno), ho avuto l'idea di creare un componente UpdateComponent. Altri componenti come MovableComponent(che detiene la velocità) erediterebbero dalla IUpdatableclasse astratta. Questo costringe MovableComponenta implementare un Update(gametime dt)metodo e …
Di recente ho chiesto come separare le entità dal loro comportamento e la risposta principale collegata a questo articolo: http://cowboyprogramming.com/2007/01/05/evolve-your-heirachy/ Il concetto ultimo qui scritto è quello di: OGGETTO COME UN'AGGREGAZIONE PURA. Mi chiedo come potrei fare per creare entità di gioco come pura aggregazione usando C #. Non ho …
La domanda è piuttosto autoesplicativa: l'ereditarietà multipla non risolve tutti i problemi che risolvono anche i sistemi di entità? Ho appena ricordato un termine chiamato "eredità multipla", che sembra risolvere molti problemi di gonfiore che l'eredità classica ha imposto.
Sto realizzando un gioco che utilizza oggetti di gioco basati su componenti e non riesco a implementare un modo in cui ciascun componente può comunicare con il suo oggetto di gioco. Piuttosto che spiegare tutto in una volta, spiegherò ogni parte del codice di esempio pertinente: class GameObjectManager { public: …
Per il mio attuale progetto ho implementato un sistema basato su componenti / entità , sostanzialmente seguendo la maggior parte delle migliori pratiche che esiste in questa area piuttosto indefinita . Quindi ho ottenuto entità (leggermente estese) , che sono fondamentalmente un intID, un nome leggibile dall'uomo, una std::mapdi componenti …
Sono abbastanza nuovo all'idea dei sistemi di entità, avendo letto un sacco di cose (utilmente, questo fantastico blog e questa risposta ). Anche se ho qualche problema a capire come qualcosa di semplice come riuscire a manipolare la posizione di un oggetto da un numero indefinito di fonti. Cioè, ho …
Nota: lo sto programmando in Javascript, ma dovrebbe essere in gran parte indipendente dal linguaggio. Sto pensando di convertire il mio motore in uno basato su ECS. Ottengo l'idea di base ( nota: questo è sbagliato, vedi la mia risposta ): Le entità sono oggetti di gioco. I componenti sono …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.