protected override void OnUpdate() { var pathJob = new PathFindJob(); pathJob.PathHandle = GetBufferTypeHandle <Path>(); pathJob.walkableMap = walkableMap; Dependency = pathJob.ScheduleParallel(_eq, Dependency); }
public static Move?FindPath(ref SimpleBoard board, Node node, NativeArray <int4x4> pieceShapes) { var job = new PathFindJob { board = board, holdUsed = node.holdUsed, dest = node.piece, pieceShapes = pieceShapes, success = new NativeArray <bool>(1, Allocator.TempJob), move = new NativeArray <Move>(1, Allocator.TempJob) }; job.Run(); var success = job.success[0]; var mv = job.move[0]; job.success.Dispose(); job.move.Dispose(); return(success ? mv : (Move?)null); }