Example #1
0
        void ICompositionRoot.OnContextCreated(UnityContext contextHolder)
        {
            var tasksCount = NumberOfEntities.value;

#if FIRST_TIER_EXAMPLE || SECOND_TIER_EXAMPLE || THIRD_TIER_EXAMPLE
            var boidDescriptor = new BoidEntityDescriptor(new[] { new Boid() });
#else
            var boidDescriptor = new BoidEntityDescriptor();
#endif
#if DONT_TRY_THIS_AT_HOME
            for (int i = 0; i < tasksCount; i++)
            {
                GameObject crazyness = new GameObject();
                crazyness.AddComponent <UnityWay>();
            }
#else
            IEnginesRoot   enginesRoot;
            IEntityFactory entityFactory = (enginesRoot = new EnginesRoot(new UnitySumbmissionNodeScheduler())) as IEntityFactory;

            var boidsEngine = new BoidsEngine();
            enginesRoot.AddEngine(boidsEngine);
            _contextNotifier.AddFrameworkDestructionListener(boidsEngine);

            for (int i = 0; i < tasksCount; i++)
            {
                entityFactory.BuildEntity(i, boidDescriptor);
            }

            entityFactory.BuildEntity(0, new GenericEntityDescriptor <PrintTimeNode>(contextHolder.GetComponentInChildren <PrintIteration>()));
#endif
        }
Example #2
0
        private void SetupCamera(UnityContext contextHolder)
        {
            CameraEntityDescriptorHolder cameraEntityDescriptor = contextHolder.GetComponentInChildren <CameraEntityDescriptorHolder>();
            EntityDescriptorInfo         entityDescriptor       = cameraEntityDescriptor.RetrieveDescriptor();

            _EntityFactory.BuildEntity(
                cameraEntityDescriptor.gameObject.GetInstanceID(),
                entityDescriptor,
                cameraEntityDescriptor.GetComponentsInChildren <IImplementor>()
                );
        }