# milkyyyyyyy/astrosim architecture

> Architecture diagram of the GitHub repository milkyyyyyyy/astrosim, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-27). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/milkyyyyyyy/astrosim
- Repository: https://github.com/milkyyyyyyy/astrosim

## Overview

This repository contains successive Unity procedural-planet tutorial projects, progressing from terrain faces to configurable shape, colour, and noise-filter systems. The tree identifies the major runtime and editor components, but no README or source excerpts were provided, so their call relationships and exact generation workflow cannot be verified; the graph therefore maps the identifiable subsystems without asserting connections.

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_early["Early Episodes"]
  node_e01["Basic planet<br/>[Planet.cs]"]
  node_e01terrain["Terrain faces<br/>[TerrainFace.cs]"]
  node_e02planet["Planet controller<br/>[Planet.cs]"]
  node_e02terrain["Terrain faces<br/>[TerrainFace.cs]"]
end

subgraph group_advanced["Advanced Generation"]
  node_shape["Shape generation<br/>[ShapeGenerator.cs]"]
  node_shapesettings["Shape settings<br/>[ShapeSettings.cs]"]
  node_noise["Noise sampling<br/>[Noise.cs]"]
  node_noisefactory["Filter factory"]
  node_noisefilter["Filter interface<br/>[INoiseFilter.cs]"]
  node_simplefilter["Simple noise"]
  node_rigidfilter["Ridgid noise"]
  node_noisesettings["Noise settings<br/>[NoiseSettings.cs]"]
  node_coloursettings["Colour settings<br/>[ColourSettings.cs]"]
  node_planet["Planet controller<br/>[Planet.cs]"]
  node_terrain["Terrain faces<br/>[TerrainFace.cs]"]
end

subgraph group_editing["Editor Tools"]
  node_planeteditor["Planet inspector<br/>[PlanetEditor.cs]"]
  node_hideattribute["Conditional hide"]
  node_hidedrawer["Hide property drawer"]
end

node_user(("Unity user"))

click node_e01 "https://github.com/milkyyyyyyy/astrosim/blob/master/Assets/ProceduralGeneration/Procedural-Planets/Procedural%20Planet%20E01/Assets/Planet.cs"
click node_e01terrain "https://github.com/milkyyyyyyy/astrosim/blob/master/Assets/ProceduralGeneration/Procedural-Planets/Procedural%20Planet%20E01/Assets/TerrainFace.cs"
click node_e02planet "https://github.com/milkyyyyyyy/astrosim/blob/master/Assets/ProceduralGeneration/Procedural-Planets/Procedural%20Planet%20E02/Assets/Planet.cs"
click node_e02terrain "https://github.com/milkyyyyyyy/astrosim/blob/master/Assets/ProceduralGeneration/Procedural-Planets/Procedural%20Planet%20E02/Assets/TerrainFace.cs"
click node_shape "https://github.com/milkyyyyyyy/astrosim/blob/master/Assets/ProceduralGeneration/Procedural-Planets/Procedural%20Planet%20E04/Assets/ShapeGenerator.cs"
click node_shapesettings "https://github.com/milkyyyyyyy/astrosim/blob/master/Assets/ProceduralGeneration/Procedural-Planets/Procedural%20Planet%20E04/Assets/ShapeSettings.cs"
click node_noise "https://github.com/milkyyyyyyy/astrosim/blob/master/Assets/ProceduralGeneration/Procedural-Planets/Procedural%20Planet%20E04/Assets/Noise.cs"
click node_noisefactory "https://github.com/milkyyyyyyy/astrosim/blob/master/Assets/ProceduralGeneration/Procedural-Planets/Procedural%20Planet%20E04/Assets/NoiseFilterFactory.cs"
click node_noisefilter "https://github.com/milkyyyyyyy/astrosim/blob/master/Assets/ProceduralGeneration/Procedural-Planets/Procedural%20Planet%20E04/Assets/INoiseFilter.cs"
click node_simplefilter "https://github.com/milkyyyyyyy/astrosim/blob/master/Assets/ProceduralGeneration/Procedural-Planets/Procedural%20Planet%20E04/Assets/SimpleNoiseFilter.cs"
click node_noisesettings "https://github.com/milkyyyyyyy/astrosim/blob/master/Assets/ProceduralGeneration/Procedural-Planets/Procedural%20Planet%20E04/Assets/NoiseSettings.cs"
click node_coloursettings "https://github.com/milkyyyyyyy/astrosim/blob/master/Assets/ProceduralGeneration/Procedural-Planets/Procedural%20Planet%20E04/Assets/ColourSettings.cs"
click node_planet "https://github.com/milkyyyyyyy/astrosim/blob/master/Assets/ProceduralGeneration/Procedural-Planets/Procedural%20Planet%20E04/Assets/Planet.cs"
click node_terrain "https://github.com/milkyyyyyyy/astrosim/blob/master/Assets/ProceduralGeneration/Procedural-Planets/Procedural%20Planet%20E04/Assets/TerrainFace.cs"
click node_planeteditor "https://github.com/milkyyyyyyy/astrosim/blob/master/Assets/ProceduralGeneration/Procedural-Planets/Procedural%20Planet%20E04/Assets/Editor/PlanetEditor.cs"
click node_hideattribute "https://github.com/milkyyyyyyy/astrosim/blob/master/Assets/ProceduralGeneration/Procedural-Planets/Procedural%20Planet%20E04/Assets/ConditionalHideAttribute.cs"
click node_hidedrawer "https://github.com/milkyyyyyyy/astrosim/blob/master/Assets/ProceduralGeneration/Procedural-Planets/Procedural%20Planet%20E04/Assets/Editor/ConditionalHidePropertyDrawer.cs"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_e01,node_e01terrain,node_e02planet,node_e02terrain,node_user toneBlue
class node_shape,node_shapesettings,node_noise,node_noisefactory,node_noisefilter,node_simplefilter,node_rigidfilter,node_noisesettings,node_coloursettings,node_planet,node_terrain toneAmber
class node_planeteditor,node_hideattribute,node_hidedrawer toneMint
```

## Components

### Early Episodes

- [Basic planet](https://github.com/milkyyyyyyy/astrosim/blob/master/Assets/ProceduralGeneration/Procedural-Planets/Procedural%20Planet%20E01/Assets/Planet.cs): `Assets/ProceduralGeneration/Procedural-Planets/Procedural Planet E01/Assets/Planet.cs`
- [Terrain faces](https://github.com/milkyyyyyyy/astrosim/blob/master/Assets/ProceduralGeneration/Procedural-Planets/Procedural%20Planet%20E01/Assets/TerrainFace.cs): `Assets/ProceduralGeneration/Procedural-Planets/Procedural Planet E01/Assets/TerrainFace.cs`
- [Planet controller](https://github.com/milkyyyyyyy/astrosim/blob/master/Assets/ProceduralGeneration/Procedural-Planets/Procedural%20Planet%20E02/Assets/Planet.cs): `Assets/ProceduralGeneration/Procedural-Planets/Procedural Planet E02/Assets/Planet.cs`
- [Terrain faces](https://github.com/milkyyyyyyy/astrosim/blob/master/Assets/ProceduralGeneration/Procedural-Planets/Procedural%20Planet%20E02/Assets/TerrainFace.cs): `Assets/ProceduralGeneration/Procedural-Planets/Procedural Planet E02/Assets/TerrainFace.cs`

### Advanced Generation

- [Shape generation](https://github.com/milkyyyyyyy/astrosim/blob/master/Assets/ProceduralGeneration/Procedural-Planets/Procedural%20Planet%20E04/Assets/ShapeGenerator.cs): `Assets/ProceduralGeneration/Procedural-Planets/Procedural Planet E04/Assets/ShapeGenerator.cs`
- [Shape settings](https://github.com/milkyyyyyyy/astrosim/blob/master/Assets/ProceduralGeneration/Procedural-Planets/Procedural%20Planet%20E04/Assets/ShapeSettings.cs): `Assets/ProceduralGeneration/Procedural-Planets/Procedural Planet E04/Assets/ShapeSettings.cs`
- [Noise sampling](https://github.com/milkyyyyyyy/astrosim/blob/master/Assets/ProceduralGeneration/Procedural-Planets/Procedural%20Planet%20E04/Assets/Noise.cs): `Assets/ProceduralGeneration/Procedural-Planets/Procedural Planet E04/Assets/Noise.cs`
- [Filter factory](https://github.com/milkyyyyyyy/astrosim/blob/master/Assets/ProceduralGeneration/Procedural-Planets/Procedural%20Planet%20E04/Assets/NoiseFilterFactory.cs): `Assets/ProceduralGeneration/Procedural-Planets/Procedural Planet E04/Assets/NoiseFilterFactory.cs`
- [Filter interface](https://github.com/milkyyyyyyy/astrosim/blob/master/Assets/ProceduralGeneration/Procedural-Planets/Procedural%20Planet%20E04/Assets/INoiseFilter.cs): `Assets/ProceduralGeneration/Procedural-Planets/Procedural Planet E04/Assets/INoiseFilter.cs`
- [Simple noise](https://github.com/milkyyyyyyy/astrosim/blob/master/Assets/ProceduralGeneration/Procedural-Planets/Procedural%20Planet%20E04/Assets/SimpleNoiseFilter.cs): `Assets/ProceduralGeneration/Procedural-Planets/Procedural Planet E04/Assets/SimpleNoiseFilter.cs`
- **Ridgid noise**
- [Noise settings](https://github.com/milkyyyyyyy/astrosim/blob/master/Assets/ProceduralGeneration/Procedural-Planets/Procedural%20Planet%20E04/Assets/NoiseSettings.cs): `Assets/ProceduralGeneration/Procedural-Planets/Procedural Planet E04/Assets/NoiseSettings.cs`
- [Colour settings](https://github.com/milkyyyyyyy/astrosim/blob/master/Assets/ProceduralGeneration/Procedural-Planets/Procedural%20Planet%20E04/Assets/ColourSettings.cs): `Assets/ProceduralGeneration/Procedural-Planets/Procedural Planet E04/Assets/ColourSettings.cs`
- [Planet controller](https://github.com/milkyyyyyyy/astrosim/blob/master/Assets/ProceduralGeneration/Procedural-Planets/Procedural%20Planet%20E04/Assets/Planet.cs): `Assets/ProceduralGeneration/Procedural-Planets/Procedural Planet E04/Assets/Planet.cs`
- [Terrain faces](https://github.com/milkyyyyyyy/astrosim/blob/master/Assets/ProceduralGeneration/Procedural-Planets/Procedural%20Planet%20E04/Assets/TerrainFace.cs): `Assets/ProceduralGeneration/Procedural-Planets/Procedural Planet E04/Assets/TerrainFace.cs`

### Editor Tools

- [Planet inspector](https://github.com/milkyyyyyyy/astrosim/blob/master/Assets/ProceduralGeneration/Procedural-Planets/Procedural%20Planet%20E04/Assets/Editor/PlanetEditor.cs): `Assets/ProceduralGeneration/Procedural-Planets/Procedural Planet E04/Assets/Editor/PlanetEditor.cs`
- [Conditional hide](https://github.com/milkyyyyyyy/astrosim/blob/master/Assets/ProceduralGeneration/Procedural-Planets/Procedural%20Planet%20E04/Assets/ConditionalHideAttribute.cs): `Assets/ProceduralGeneration/Procedural-Planets/Procedural Planet E04/Assets/ConditionalHideAttribute.cs`
- [Hide property drawer](https://github.com/milkyyyyyyy/astrosim/blob/master/Assets/ProceduralGeneration/Procedural-Planets/Procedural%20Planet%20E04/Assets/Editor/ConditionalHidePropertyDrawer.cs): `Assets/ProceduralGeneration/Procedural-Planets/Procedural Planet E04/Assets/Editor/ConditionalHidePropertyDrawer.cs`

### Other components

- **Unity user**
