protected override JobHandle OnUpdate(JobHandle inputDeps)
    {
        //Arrays de obstaculos activos y de sus posiciones
        obstaculosActivos = m_ObstaculosActivos.GetEntityArray();
        ComponentDataArray <Position> posicionesObstaculos = m_ObstaculosActivos.GetComponentDataArray <Position>();

        //Arrays de premios activos y de sus posiciones
        premiosActivos = m_PremiosActivos.GetEntityArray();
        ComponentDataArray <Position> posicionesPremios = m_PremiosActivos.GetComponentDataArray <Position>();

        var jobObs = new DesactivarObstaculo {
            Commands = _collisionBarrier.CreateCommandBuffer()
        };

        JobHandle jO = jobObs.Schedule(this, inputDeps);

        var jobPrem = new DesactivarPremio {
            Commands = _collisionBarrier.CreateCommandBuffer()
        };

        JobHandle jP = jobPrem.Schedule(this, jO); //"depende" del job anterior (espera a que termine)

        var jobPalillos = new DesactivarPalillos {
            Commands = _collisionBarrier.CreateCommandBuffer()
        };

        JobHandle jPl = jobPalillos.Schedule(this, jP); //"depende" del job anterior (espera a que termine)

        return(jPl);
    }
Esempio n. 2
0
        protected override JobHandle OnUpdate(JobHandle inputDepts)
        {
            JobHandle jobPremio = new DesactivarPremio()
            {
                dt       = Time.deltaTime,
                Commands = _collisionBarrier.CreateCommandBuffer()
            }.Schedule(this, inputDepts);

            jobPremio.Complete();

            return(jobPremio);
        }