ISystemBase vs. ISystem (?)

8145275--1057733--upload_2022-5-21_8-28-43.png

I am trying to understand the changelog note “ISystemBase to ISystem”

In the ECS Samples the code is using SystemBase:

public partial class TriggerVolumeChangeMaterialSystem : SystemBase
  1. Should I be using “System” instead?
  2. These both have to do with systems right? What is the difference/meaning?

SystemBase is a class. ISystemBase on the other hand was an interface that was meant to be used when writing struct-based parallels to the class-based systems derived from SystemBase. They probably changed ISystemBase to ISystem because it makes more sense to them in context, and/or it’s less confusing with SystemBase already being a thing.

The ECS sample shown is using the SystemBase class which hasn’t changed, it’s only usages of the ISystemBase interface that need to be updated.

2 Likes