Questions tagged [entity-component]
The entity-component tag has no summary.
115 questions
0
votes
1
answer
3k
views
How do I contiguously store and iterate over ECS components in C++?
I'm writing an entity component system and want to store each type of component separately and contiguously in memory in a way that's easy to iterate over.
Component...
2
votes
2
answers
4k
views
How to Implement ECS Archetypes in C#?
I'm trying to figure out how to implement a simple ECS with an Archetype approach, similar to what Unity's ECS uses.
An archetype is just a category for entities that have a specific set of components....
0
votes
1
answer
2k
views
How do you handle entity life-time and entities without all components in an ECS?
I'm just starting to implement my own ECS and am drawing everything down on paper to make sure I understand it all before tackling the implementation in code. However I'm getting stuck on entity-...
0
votes
0
answers
79
views
How would I go about creating dynamic weapons using EC architecture?
I currently have a weapon component that contains common functionality across weapons (mainly guns).
...
0
votes
1
answer
186
views
Hidden copies of the environment in an entity component system
For reasons outside the scope of this question, my game has several full copies of the game environment running asynchronously. At any one time, only one of these is rendered.
This is trivial to ...
1
vote
1
answer
224
views
Where should I put units and items in a squad-combat ECS-based game?
So I'm working on a game where squads of varied units would explore, fight, trade and build on an overworld map. Combat would be automated more or less, and happen on the overworld. Basically, ...
2
votes
0
answers
159
views
Properway to pass information from one system to another in an entity component system design
After having read some example programs (namely Pong, Snake and Pacman) I am now experiencing with ECS. I am wondering where to put the elements for a reward flow. Do you know good practices for ...
0
votes
1
answer
62
views
Additional Entity ID for networking instead of general EID?
http://t-machine.org/index.php/2015/06/09/entity-ids-how-big-using-uuids-or-not-why-etc/
I see this one article that proposes specific IDs just for the networking side of the game. If you are already ...
5
votes
1
answer
5k
views
Dealing with more complex entities in an ECS architecture
Preamble: I'm working on a level editor for my engine, which uses an ECS architecture. I have around a dozen component types so far, mostly dealing with graphics, like lighting components, model, and ...
2
votes
1
answer
651
views
Pass data down to components
In the game I have, I'm using an architecture close to what I've seen of Unity components :
Basically, the universe implements the game loop, entities implement and ...
0
votes
0
answers
109
views
Rename Sketchup Component meshes for Unity
When i create a component in Sketchup and i export it to Unity, the component structure is always:
Component_Name
MeshX
How can i avoid having the component name as an empty parent and just set it ...
1
vote
1
answer
354
views
How could I get rid of these shared_ptr/weak_ptr in this entity-component architecture?
We've built an entity-component architecture that works ok for our needs, but it has something that bugs me a bit from a software engineering point of view.
We use ...
0
votes
2
answers
2k
views
Implementations for storing entities in an ECS system
I'm restructuring my model of entities, components and systems, where entities are:
...
4
votes
2
answers
1k
views
How to implement n-body in an Entity Component System
Recently I've been throwing problems at Entity Component Systems to see how far I can push the paradigm. One problem in particular I struggle with, which is writing an elegant implementation of the n-...
2
votes
1
answer
374
views
Use GKEntity's component(ofType:) with inheritance
I'm writing a SpriteKit game in swift and making use of GameplayKit's entity-component system. There are many components that do different stuff but share the same methods in which they do it, so I ...
0
votes
2
answers
277
views
How to: Duplicating and updating component data in systems
I am new to game development. Coming across the ECS (entity-component system) pattern I generally quite liked the idea. I have implemented the current version of my engine using the OOP style approach....
0
votes
2
answers
1k
views
Event-Based Entity-Componenty-System
So, I'm new to ECS. The concept is very interesting in contrast to traditional OOP and heavy inheritance. I'm working on a game right now that is open-sourced, but does not actually have a game loop. ...
3
votes
2
answers
985
views
How to get Entitas components from gameObject.getEntityLink()
I'm new to Entitas. I have a DamageSystem that should Physics.Raycast() toward the target and if tag is enemy it should reduce ...
4
votes
2
answers
2k
views
Appropriate Cache Friendly Associative Container For An Entity Component System
The intro to this problem is a bit of a long one so my apologies in advance. In short I am asking for suggestion as to what type of collection I should use to store data for a particular part of my ...
0
votes
1
answer
2k
views
How does an ECS work for a world subdivided into chunks (example)?
I am trying to use an ECS for my 2d game at the moment. Up until now I had my world subdivided into chunks (as minecraft does) of size 64x64. They are loaded and drawn when they come onto screen. I ...
0
votes
2
answers
759
views
Entity Component System data duplicate
I've read some articles about Entity Component System and I like this idea of "entities" having lots of "components" to define them, so I tried to implement it.
Here is an simple overview of what i've ...
0
votes
1
answer
828
views
Circular Dependencies in an Entity Component System
I'm developing a top-down shooter in C++ using an entity-component system, and have run into a problem when attempting to refactor powerups. Currently I have a ...
3
votes
2
answers
2k
views
ECS component dependencies / sharing and cache locality
I have been trying to wrap my head around how ECS works when there are components which are shared or dependent. I've read numerous articles on ECS and can't seem to find a definitive answer to this.
...
1
vote
1
answer
2k
views
What's the proper practice to organize relationship between components in an ECS pattern?
I'm new to ECS concept and trying to refactor my app with an ECS manner.
After reading some articles, I still don't get a sense about how to organize hierarchy for such pattern. My questions are
Is a ...
0
votes
1
answer
493
views
How to efficiently filter by a component with a specific value in an entity component system (all entities in grid position [x,y,z], for example)?
I'm working on a 3d grid based game, and I am trying to implement it using an ECS.
I have a position component which indicates the entity's position on the grid. It is comprised of 3 integers (for ...
3
votes
2
answers
2k
views
How do we coordinate which order the systems get processed within an ECS?
If I knew all of the systems at compile time, I could order them myself. However, I intend on having user-defined mods. This adds a level of complexity, in that I (as the framework developer) don't ...
0
votes
2
answers
2k
views
How to handle Entity Initialisation and Destruction
I've been using the ECS pattern for a while now and, as the complexity of the game increased, I started having issues with the timing of the entity initialisation and destruction code.
I'll use the ...
0
votes
1
answer
121
views
Guidelines for determining what should be a component?
Background:
So I'm developing my first 2d C++ fighting game (for learning purposes) and I have a setup where I have 'components' which are really just data holders with maybe some simple utility ...
1
vote
2
answers
359
views
ECS: removal of group of related components
Currently I'm working with LibGDX and using Ashley for ECS. Everything is fine, until i need to remove groups of related components.
Say we have a player that may use different weapons. For now, in ...
6
votes
2
answers
5k
views
Entity Component System: system and components relation
I'm planning to develop a game in C# (but I don't think that language matters) and I'll be using Entity Component System since I know by design that my game will have a lot of different game items ...
1
vote
1
answer
884
views
ECS -- Textures and Game Objects
I'm developing a game using an entity-component system, and had a question about storing, using and linking textures to entities.
I have a GraphicsSystem that is ...
1
vote
0
answers
204
views
Communication in an entity-component through public variables or public member functions [closed]
I am currently coding my own ECS to get a deeper understanding of how such an engine works. I am currently putting together systems. I am aware that there is no right answer to my question as there ...
1
vote
2
answers
3k
views
Entity component system design. Should ID of entities be continuous?
I am implementing an entity-component system. Below is my current implementation in c++.
...
2
votes
1
answer
801
views
Component based architecture in TypeScript
I'm doing a game using Phaser with TypeScript. I want to implement a component based architecture for Actors.
What I'm trying to achieve is this:
...
7
votes
2
answers
15k
views
Event handling in Pure Entity Component Systems, is this approach correct?
I want to ask if the following is an effective way to architect event propagation using an ECS?
Here is a hypothetical collision scenario using an ECS.
Components:
...
1
vote
2
answers
2k
views
Should entities auto-register to systems based on their component signature?
I see all the upside in entities registering automatically for basic components. If an entity has a Renderable component, it should be registered to a list that's used by a Renderable System. If an ...
0
votes
0
answers
694
views
Nested Entities in Entity Component Systems (ECS) [duplicate]
Say I have an entity that has these components:
-Transformation
-Visual
Imagine that these components can nest:
If I have a parent transformation component, a child transformation relies on the ...
3
votes
0
answers
870
views
How to store Lua script's inner state?
Situation:
I am working on an Entity-Component system, and I am using LuaBridge as a Lua binder.
There is only one Lua State.
Currently when I update the game objects, I just check whether it has a ...
5
votes
1
answer
1k
views
Is "entity component system" a principle or a pattern?
Since the ECS follows the principle Composition over Inheritance, and it makes the behavior of game objects can be changed in the runtime.
If ECS is a principle, from my memory of design patterns of ...
2
votes
1
answer
2k
views
ECS - Components inside components?
Reading up on ECS, I've tried to implement a simple 'game', if you can call it that.
Basic concepts :
You have planets(entity), they produce gold. (gold is a component inside planet)
Planets can ...
2
votes
2
answers
1k
views
C++ structure for component list
I'm developing a game in C++, making use of the Entity-Component system.
I'm going to store a list of each component, with each component's position in the list mapping to it's entity. So, the 5th ...
0
votes
1
answer
90
views
Changing the current state of an entity in the middle of an update step or wait for the end?
Let's say that I use a behaviour component that holds a function call to be called every update step assigned to an entity. Inside that function call I'm changing the active state for the entity to ...
0
votes
1
answer
388
views
How would you implement and differentiate between input actions and input states?
Im currently trying to setup my game and Ive started to implement input. It works like this:
I have an Input class who notifies the ...
1
vote
1
answer
1k
views
How to render in an entity component system?
I am currently working on a game in Java that uses an entity component system. The game currently has two separate update() and ...
0
votes
1
answer
243
views
Entity Components Ids and Max Integer Values
I have been studying several entity component systems (Anax and EntityX) to get an idea of how they work.
For Entity ids, both use 2 numbers. The first number is basically a position in an array, and ...
0
votes
1
answer
277
views
Component super class?
I have recently been programming an Entity Component System in Java for a small game that I am working on. From what I have tested, it works rather well however I question the component part. I ...
2
votes
1
answer
1k
views
Entity interaction in a component design with events
My components are 100% isolated. No component knows about anything outside of itself in any way. Components have functions that operate on their internal state, and events to inform what's happening ...
6
votes
2
answers
6k
views
Entity-Component-System data storage design
I'm working on an ECS and I've already read a lot of articles about it. Most of these articles are talking about a simple case (store data contiguously, read it in a single for loop). However the real ...
1
vote
2
answers
150
views
How should one component "trigger" another one in a component system?
In my game I have a MoveComponent and a ClimbComponent.
Some characters can only move around on one level, others are able to ...
0
votes
2
answers
886
views
How do I need to tag different (but a little similar) entities with Entity-Component-System pattern
I have some count of weapons - pistol, shotgun, rifle. And I have one system which deals with all weapons, and another system which deals only with pistol. So I need to create both components "weapons"...