public VoxelVisualOption(Mesh mesh, bool[,,] designation, bool flipped, int rotations, int priority, VoxelVisualConnections connections) { Mesh = mesh; this.designation = designation; Flipped = flipped; Rotations = rotations; Priority = priority; Connections = connections; }
public IEnumerable <VoxelVisualOption> GenerateVisualOptions() { VoxelVisualConnections baseConnections = new VoxelVisualConnections(Up, Down, PositiveX, NegativeX, PositiveZ, NegativeZ); VoxelDesignation baseDesignation = new VoxelDesignation(DesignationValues); IEnumerable <GeneratedVoxelDesignation> variants = baseDesignation.GetUniqueVariants(); int priority = 0; yield return(new VoxelVisualOption(ArtContent, baseDesignation.Description, false, 0, priority, baseConnections)); foreach (GeneratedVoxelDesignation variant in variants) { priority++; VoxelVisualConnections connectionsVariant = baseConnections.GetVarient(variant.WasFlipped, variant.Rotations); yield return(new VoxelVisualOption(ArtContent, variant.Description, variant.WasFlipped, variant.Rotations, priority, connectionsVariant)); } }