ECS DOTS

kite359

Newbie
May 19, 2017
20
17
People who have never developed a game think that they can make a decent game with Unity or Unreal. But in reality, most commercial game makers don't use such engines. Only Chinese, Korean, or Japanese companies use such engines.

The reason is that their engine is equipped with Object Oriented Architecture. The method 30 years ago is far from the current hardware.


Fortunately, however, Cryengine has already completed ECS conversion, and Unity is about to complete ECS conversion. Unreal... it's best not to use it whenever possible. It is an antique.







This is a demo I made to check the completeness of Unity DOTS.




I need to make the Grass and Tree into a Meshlet, but it seems like a lot of work. After making it, it will come out of Unity, so I think it would be better to just wait. That space is a very, very large space, and every step is a separate entity. Therefore, the actual number of objects is over 2 million.


It seems that the production of an open world is realistically possible.
 
Last edited:

KiaAzad

Member
Feb 27, 2019
291
214
DOTS is more suitable for the games with hordes of enemies, NPCs or lots of bullets flying everywhere. Also very efficient for mobile games.
Most adult games however, are not that sophisticated or busy to the point that DOTS becomes a necessity.

I have no idea what you're talking about.
DOTS is a very efficient way of coding that allows calculating thousands of game objects instead of a handful with the same CPU usage.
 

Tompte

Member
Dec 22, 2017
216
157
Ooh! I just googled it. So it's Unity's marketing name for 'data oriented programming'. That's literally been around for decades. I guess Unity had to create their own solution because C#/.NET doesn't allow direct memory access and you really need it to make high-performant games.

Computers are really dang fast nowadays but memory is still relatively slow in comparison. Data oriented programming is a way to structure data in a memory efficient way, so you spend less time seeking memory and more time crunching numbers. That's why it's so much faster. It requires data to be stored in long contiguous blocks instead of in discreet objects/data structures. You can think of it as the opposite to OOP.

That said, I still have no idea what the OP is talking about.
People who have never developed a game think that they can make a decent game with Unity or Unreal. But in reality, most commercial game makers don't use such engines. Only Chinese, Korean, or Japanese companies use such engines.
I mean, that's just plain wrong, (except maybe the very first part.)
 
Last edited:
  • Like
Reactions: hiya02

Kinderalpha

Pleb
Donor
Dec 2, 2019
198
265
Hate to burst your bubble but data oriented programming isn't that new, and unity does infact utilize DOP. ECS is just one method, and not the end all be all for programming. Likewise, ECS is not either. ECS is good for performance but has its own problems too. There's no solution for everything. Every tool has its own use.
 
  • Like
Reactions: hiya02