public void QueueJob() { jobHandle = (new MoveTransform { offset = offset }).Schedule(transformArray); jobHandle.Complete(); Shader.SetGlobalVector(ShaderIDs._SceneOffset, new float4(offset.xyz, lengthsq(offset.xyz) > 0.01f ? 1 : 0)); mainCamera.transform.position += (Vector3)offset; SceneController.TransformMapPosition(0); RenderPipeline.AddCommandAfterFrame(this, (o) => Shader.SetGlobalVector(ShaderIDs._SceneOffset, Vector4.zero)); }