コード例 #1
0
        public PrefabResourcePool(IPrefabFactory <T> factory, bool useSingleSlot = false)
        {
            _pool = new List <T>();

            _factory      = factory;
            UseSingleSlot = useSingleSlot;
        }
コード例 #2
0
        public LegacyEntityCreator(IEntityTemplateProvider templateProvider,
                                   ISpatialCommunicator spatialCommunicator,
                                   IPrefabFactory <GameObject> prefabFactory,
                                   IMutableUniverse universe,
                                   IEntityComponentInterestOverridesUpdater entityComponentInterestOverridesUpdater,
                                   IInterestedComponentUpdaterProvider interestedComponentUpdaterProvider,
                                   WorkerMetrics metrics)
        {
            this.templateProvider    = templateProvider;
            this.prefabFactory       = new PrefabFactoryMetrics(prefabFactory, metrics); // Associate metrics with the factory
            this.spatialCommunicator = spatialCommunicator;
            this.universe            = universe;
            this.entityComponentInterestOverridesUpdater = entityComponentInterestOverridesUpdater;
            this.interestedComponentUpdaterProvider      = interestedComponentUpdaterProvider;

            entitiesToSpawn = new Dictionary <EntityId, EntitySpawnData>();
            knownEntities   = new HashSet <EntityId>();

            this.metrics = metrics;
        }
コード例 #3
0
 public PrefabFactoryMetrics(IPrefabFactory <GameObject> prefabFactory, WorkerMetrics metrics)
 {
     this.prefabFactory = prefabFactory;
     this.metrics       = metrics;
 }