# How can I create hemisphere worlds (floating islands?) with 3d (or 2d)? Noise (Perlin/OpenSimplex)

I've been experimenting with noise for a while and I've gotten some terrain up: It looks like this:

What I'd like instead is to have planets like this (currently mine is in a cube shape)

My generation code actually skews the values so the top is not solid and the bottom is. I tried to reverse this but I got a giant mess, with the top being completely solid up to the worldheight and the bottom having holes caved into it. Here is my generation code:


float value = noise.GetPerlinFractal(worldLoc.x, worldLoc.y, worldLoc.z);

if (y <= waterHeight) {
for (int i = y; i <= waterHeight; i++) {
chunk.addBlock(x, i + 1, z, BlocksConfig.getInstance().getBlockRegistry().get(BlockIds.WATER));
}
}

if (value - ((y - 128) * 0.01) >= 0) {
if ((y > waterHeight && y < waterHeight + 2)) {
} else {