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); }
protected override JobHandle OnUpdate(JobHandle inputDepts) { JobHandle jobPremio = new DesactivarPremio() { dt = Time.deltaTime, Commands = _collisionBarrier.CreateCommandBuffer() }.Schedule(this, inputDepts); jobPremio.Complete(); return(jobPremio); }