protected override JobHandle OnUpdate(JobHandle inputDeps)
        {
            RotatorJob rotatorJob = new RotatorJob()
            {
                deltaTime = Time.deltaTime
            };

            return(rotatorJob.Schedule(this, inputDeps));
        }
        protected override void OnUpdate()
        {
            m_Job.Complete();

            var jobData = new RotatorJob();

            jobData.speeds    = m_Speeds;
            jobData.deltaTime = Time.deltaTime;

            m_Job = jobData.Schedule(m_Transforms);
        }
Exemple #3
0
 // Update is called once per frame
 void Update()
 {
     jobHandle.Complete();
     if (jobHandle.IsCompleted)
     {
         var rotatorJob = new RotatorJob()
         {
             deltaTime = Time.deltaTime,
             speeds    = speeds
         };
         jobHandle = rotatorJob.Schedule(transformAccessArray);
         JobHandle.ScheduleBatchedJobs();
     }
 }
Exemple #4
0
    // Job Scheduling is handled in OnUpdate here
    protected override JobHandle OnUpdate(JobHandle inputDeps)
    {
        // For Loop example
        // We pass on the data from our entities to the job
        //var rotatorJob = new CubeRotatorForLoopJob
        //{
        //    rotations = cubes.rotations,
        //    cubeFloaterComponent = cubes.cubeFloaterComponent,
        //    dt = Time.deltaTime
        //};
        //return rotatorJob.Schedule(cubes.Length, 64, inputDeps);

        // IJobProcessComponentData example
        var rotatorJob = new RotatorJob() { dt = Time.deltaTime };
        return rotatorJob.Schedule(this, inputDeps);
    }
    // Update is called once per frame
    void Update()
    {
        if (useJobSystem)
        {
            jobHandle.Complete();

            var jobData = new RotatorJob();
            jobData.speeds    = objSpeed;
            jobData.deltaTime = Time.deltaTime; // main thread deltatime to job

            jobHandle = jobData.Schedule(targetsArray);
        }
        else
        {
            for (int i = 0; i < number; i++)
            {
                targets[i].localRotation = targets[i].rotation * Quaternion.AngleAxis(objSpeed[i] * Time.deltaTime, Vector3.up);
            }
        }
    }