Skip to main content

Questions tagged [entity-component]

The tag has no usage guidance.

Filter by
Sorted by
Tagged with
0 votes
1 answer
2k 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...
Accumulator's user avatar
2 votes
2 answers
3k 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....
Floating Sunfish's user avatar
0 votes
1 answer
1k 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-...
NeomerArcana's user avatar
0 votes
0 answers
54 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). ...
gamer1's user avatar
  • 65
0 votes
1 answer
132 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 ...
Omegastick's user avatar
1 vote
1 answer
196 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, ...
Hypergardens's user avatar
2 votes
0 answers
123 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 ...
julien's user avatar
  • 121
0 votes
1 answer
43 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 ...
GuestPosterStrikesAgain's user avatar
4 votes
1 answer
4k 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 ...
Yattabyte's user avatar
  • 1,033
2 votes
1 answer
598 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 ...
user avatar
0 votes
0 answers
81 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 ...
FrakyDale's user avatar
  • 111
1 vote
1 answer
275 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 ...
Vaillancourt's user avatar
  • 16.3k
0 votes
2 answers
1k views

Implementations for storing entities in an ECS system

I'm restructuring my model of entities, components and systems, where entities are: ...
PerduGames's user avatar
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-...
Sander Mertens's user avatar
2 votes
1 answer
334 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 ...
lsauceda's user avatar
  • 151
0 votes
2 answers
233 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....
Adrian Albert Koch's user avatar
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. ...
Jon Nguyen's user avatar
3 votes
2 answers
929 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 ...
lazarevsky's user avatar
4 votes
2 answers
1k 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 ...
Ryoku's user avatar
  • 187
0 votes
1 answer
1k 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 ...
fubal's user avatar
  • 101
0 votes
2 answers
646 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 ...
Vadimz's user avatar
  • 158
0 votes
1 answer
746 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 ...
Rich. T.'s user avatar
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. ...
Driv's user avatar
  • 43
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 ...
Lin M's user avatar
  • 11
0 votes
1 answer
388 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 ...
user92748's user avatar
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 ...
Zymus's user avatar
  • 131
0 votes
2 answers
1k 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 ...
loodakrawa's user avatar
0 votes
1 answer
81 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 ...
Jason's user avatar
  • 413
1 vote
2 answers
305 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 ...
lowercase93's user avatar
6 votes
2 answers
4k 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 ...
Andrew's user avatar
  • 111
1 vote
1 answer
769 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 ...
Rich. T.'s user avatar
1 vote
0 answers
176 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 ...
Martin Sand's user avatar
1 vote
2 answers
2k 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++. ...
Lesley Lai's user avatar
2 votes
1 answer
763 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: ...
Guilherme Recchi Cardozo's user avatar
7 votes
2 answers
14k 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: ...
Danny Yaroslavski's user avatar
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 ...
Danny Yaroslavski's user avatar
0 votes
0 answers
687 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 ...
Danny Yaroslavski's user avatar
3 votes
0 answers
782 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 ...
Tudvari's user avatar
  • 761
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 ...
Niing's user avatar
  • 169
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 ...
Patrick's user avatar
  • 163
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 ...
Rich. T.'s user avatar
0 votes
1 answer
63 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 ...
FrameBuffer's user avatar
0 votes
1 answer
343 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 ...
zebleckDAMM's user avatar
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 ...
user avatar
0 votes
1 answer
203 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 ...
Ry Lowry's user avatar
0 votes
1 answer
253 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 ...
user avatar
2 votes
1 answer
971 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 ...
user441521's user avatar
6 votes
2 answers
5k 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 ...
csisy's user avatar
  • 365
1 vote
2 answers
122 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 ...
Krumelur's user avatar
  • 299
0 votes
2 answers
782 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"...
saxartom's user avatar