How can I install ECS on Unity 2020.1?

I have been looking at GitHub - Unity-Technologies/EntityComponentSystemSamples and it says that I should add the Hybrid Renderer as a package but I cannot find it in the list. The Entities package does not seem to be listed either.

I have made sure to enable the preview packages option.

So what package do I need to install to get started with ECS?
I am on Unity 2020.1.0b16.4139.

You need to read blog and forum.
https://blogs.unity3d.com/ru/2020/06/24/package-manager-updates-in-unity-2020-1/
Visibility changes for preview packages in 2020.1 ?_ga=2.99023454.1112290768.1595164785-1691868383.1578304221

Here’s hoping the ECS framework falls in the former category, not the latter.

Anyway, these packages are apparently being hidden now and need to be added manually.

The ECS package can be added by adding com.unity.rendering.hybrid through the “Add package from git URL…” option in the Package Manager. This Hybrid Renderer package will then add the Entities com.unity.entities package as a dependency.

6 Likes

Nice work, Unity!
Everybody’s life is a little bit more complicated now.
Be prepared for an avalanche of posts like this.

17 Likes

The whole having to go to another place to enable showing previews and dependencies was not a great idea. This makes it worse. Development packages also show as Unity Technologies which is confusing.

I think treating people like professionals should be the baseline. As in that is the bar. If you can make it easier on people that might shoot themselves in the foot by all means do so. But not at the cost of making it cumbersome for everyone. The latter should be a non starter.

7 Likes

I feel the same way, when people find out how to copy manifest files around this is going to get real messy.

1 Like

Can someone please help me , what the name or git repo for the New Entity Inspector

I think you already found it but for anyone else:
One possibility to get the package names is to check the manual: Unity - Manual: Pre-release packages

3 Likes

Thank you I have not seen this pages. Is it a complete list.

I agree that hiding it is overkill. If unity want’s to hide some preview packages because they are to experimental, I would add the second checkbox: show experimental packages.

8 Likes

I assume ECS/DOTS is still most of the focus for the future of Unity?

2 Likes

I’m selecting “add package from git URL” and then entering “com.unity.rendering.hybrid”, but nothing happens. It just boots me back to the Package Manager. I have barely started using 2020 and I already dislike it. Help me.

Edit - Oh, it seems it just quietly downloads the stuff without giving you ANY INDICATION it recognized your command and is doing jack. Seriously, whoever in the usability department gave the go ahead for this deserves to… I’ll stop myself here. These days everything you say is taken literally.

2 Likes

I agree, even outputting to the console a line of feedback would be something

2 Likes

Okay, I’m confused now. I’m thinking ECS is the future and want to develop my next project around it with the expectation it’ll be mainstream in two years, and useable before then (think alpha and early access test builds). Is this not the case? Is it so flaky that Unity don’t really want people considering development with it beyond poking around with hobby concepts? When is it expected to be good enough to create, or the basis of, WIP commercial projects?

Just yesterday Unity announced a “new” platform for writing multiplayer networking code, but get this…it’s specifically for GameObject-based games and not entity-based DOTS games.

https://blogs.unity3d.com/2020/12/03/accelerating-unitys-new-gameobjects-multiplayer-networking-framework/

Two years is probably too soon.

The API changes fairly often for the core stuff but it is otherwise very usable. The higher level functionality is a lot more flaky.

That depends on your definition of “good enough”. For some people, that is now. For others, that is probably 5 or 10 years away if ever. Personally, I require some custom stuff that no engine currently provides to do what I want to do. I was originally going to switch to a custom engine, but now with DOTS the engine is opened up enough that I can implement that stuff in Unity while also being able to take advantage of Unity’s implementations for the less fun things. I’m starting that now, but this is a long multi-year investment.

This is Unity making sure that there’s an officially-supported way of making games in GameObject land while DOTS is being developed. It’s an open-source project that was already widely recognized in the community as one of the best solutions for making multiplayer games in Unity. It takes very little research on the forums to find out that DOTS netcode is undergoing active development in parallel.

Guys, everyone gets what you mean. Your scepticism about DOTS is healthy and well-warranted. Still, you’re not making anyone’s day better with needless toxicity. I am positively surprised by the amount of restraint exhibited by the forum moderators, by the way.

1 Like

Think of it as a test: if you can’t figure out how to install ECS, you’ll have a hard time figuring out how to actually use it.

4 Likes

At this point I’m guessing Unity doesn’t have a particular direction beyond ‘everything’ and they are throwing their development behind every idea.

It is opposite in fact. DOTS at its current state is developed at least since Unity 5. That before its current name was cobbled out. This is how far back it reaches, if considering Unity envirement to be able support current DOTS state. Unity editor came trough many changes since, to accommodate that.

Dots is probably one of very few Unity features, which is constantly developed over many years since, with rather clear direction to me.

Current DOTS state however, does require and expect to have range of technical skills.
People proved in many cases to use it just fine. The package state of being hidden, is to make sure, that people understand, it is not fully released. But anyone with required technical skills is able to grab it.

However, it is common knowlage regarding DOTS that it is constantly evolves and its API nonstop changes. Average Joe wouldn’t like that and will complain straight away. Hence package’s are accessible at this point, to people who are fully aware about DOTS state and are expecting for changes at any given time.

Consider it for early adopters and first batch of testers.

You shouldn’t be starting project however, with expectation that dots tomorrow will be commercial ready. This is wring approach. You should instead understand and take what you got now and in worse case scenario, lock Unity version, then work toward release. Any updates are just bonus then.

4 Likes