2D noise function to generate voxel circles

This is a stretch but here we go:

I basically am making a game where I need to generate 2D planets (spheres out of square tiles). I have used Perlin noise to generate noise, however, I now need a noise algorithm to generate individual circles of all different shapes and sizes (I have looked everywhere and can’t find anything). The algorithm must also allow for a seed to be used, any help will be appreciated :slight_smile:

Use any generic 2D noise function and divide the result for each point by the distance to your planets center:

// p is the current x, y coordinate, origin is the planets center
float value = Noise(p.x, p.y) / Vector2.Distance(p, origin);

if (value > 0) {
    // add block at p ...
}

This should provide you with a sphere that is being deformed by your noise function.