Entitas-csharp: Update Readme + Wiki

Created on 17 Feb 2017  路  9Comments  路  Source: sschmid/Entitas-CSharp

A lot of things improved and changed. It's about time to update the readme and the wiki.
There should be an AI for that... ;)

Most helpful comment

@AndreGroeschel Match-One is fully up to date and is currently the best reference to get started.
Checkout the AddViewSystem to see how EntityLink works

All 9 comments

I'm just starting to use Entitas now and the pools/contexts name change had my head hurting :).

馃
Almost forgot about that... I already started working on new features. I'll try to force myself to resists adding new features now and update the docs first

Also starting out with Entitas and evaluating if it might make sense to use it for future projects. Watched the Unite presentations, read through the docs, and started with the examples. Seems not all of them are using the latest version and I feel really confused. Would be super awesome if you could explain the basic concepts. What is a context, what is a feature? At least some code documentation would help. Also how does Entitas integrate with other Unity features. Right now I have no clue how to use NavMeshes, Physics or Networking. Some examples would be really helpful. Entitas seems to be such a great framework and I'm sure with better documentation more people would use in their projects!

Really looking forward to this update as well. Been keeping watch on Entitas until the big refactoring was done before I converted my current project but it's still pretty impossible to actually switch while all of the wiki/examples/everything are still targeted at out of date stuff!

@AndreGroeschel MatchOne is up to date if you want to see how things have changed. Basically Contexts == Pools but with some extra type-safety which allow you to have multiple separate pools. "Features" just seems to be a folder name for mental organisation, not part of Entitas itself. MatchOne has better folder organisation than the Shmup example imo.

For integrating with unity systems, take a look at the Shmup example. Search for files with "collision" in the name and you'll get the CollisionEmiter, CollisionComponent, and ProcessCollisionSystem. The "emitter" is a monobehaviour that implements OnCollisionEnter(). It grabs the entity which is associated with that particular GO (via EntityLink) and adds a CollisionComponent to it. ProcessCollisionSystem is a reactive system and a cleanup system, it processes the collision components then removes them on cleanup. Be warned: Reactive Systems no longer implement IReactiveSystem but now inherit from ReactiveSystem (see MatchOne). The schmup example is using an older version.

This Emitter->Component->ReactiveSystem seems to be the general pattern for bridging unity with Entitas. Design the component to hold the data you need from unity (e.g. who we collided with), have the emitter create the component, fill in the data and add it to an appropriate entity, then have a system handle it as you would with any other bit of your Entitas code.

@FNGgames thanks a lot! Makes much more sense now and I know where to look. Regarding the EntityLink... I saw in the latest release that something changed there and the Shmup example is outdated. Is there any up to date example that shows how to link gameobjects and entities?

@AndreGroeschel Match-One is fully up to date and is currently the best reference to get started.
Checkout the AddViewSystem to see how EntityLink works

Help Simon #333

Will move to #333 and close

Was this page helpful?
0 / 5 - 0 ratings

Related issues

Stals picture Stals  路  4Comments

moixxsyc picture moixxsyc  路  4Comments

xkyii picture xkyii  路  3Comments

vaudevillian picture vaudevillian  路  3Comments

angelotadres picture angelotadres  路  5Comments