it looks like when one square gets brighter, it makes all adjacent squares (non-diagonal) brighter minus one, or it's current brightness, whichever is greater. Notch said somewhere that Sunlight is another level, and the game renders whatever's brightest, sunlight, or torchlight. (you'll notice this is true by watching the sun come up over a flat area with a single torch in the middle)
so pretty much, a square's light value changes, for each adjacent square, the light becomes max(adjacentSquare.light, currentSquare.light-1)
And then the renderer checks if it's exposed to the sky, max(currentSquare.light,sunlightValue), otherwise just currentSquare.light
in response to the others, "I think being able to place blocks on the ground is good enough. We don't need signs when we can just spell everything out in blocks"
Having something that works BETTER than something that already works is still worthwhile, guys. I don't know what's with all this "Just use torches and cobblestone using Morse code in brail" responses to perfectly legitimate suggestions I'm seeing today.
I know some people won't like this suggestion. They won't because it is about things other than cubes. I am, however, going to make this suggestion anyway, because I think it would be neat. I was rather impressed with how well the slanted water looks, despite being in a cube world. The gentle slopes really made the water feel like it was fluid (despite its jelly-like behavior) and I think it was this contrast with the world around it that made it so.
Another thing that I think would be similarly enhanced by being non-cubic is crystals. We've talked about crystals in various forms, so I have no doubt that they could find a role in minecraft, and don't see a need to bring up uses for such things here. But my idea is that naturally growing crystals would appear in the game as a shape based on octahedron, rather than cubes.
Well, to be specific, slightly truncated octahedrons. That would warp in order to create flush, solid structures when up against other blocks.
To back up my idea, I poked some shapes in Google Sketchup for a while to make sure a proper, nice-looking solution was possible, and after a few tries, the system I came up with turned out surprisingly simple.
A truncated octahedron is a shape made from eight triangles (Imagine two pyramids stuck together) with its six corners cut off, so there's small squares instead of sharp points. In this system, these small squares are at the same point in space as the sides of a regular cube would be. This allows for the shape to be warped into congruency.
If, for example, one were to place a block UNDER such a crystal, the vertices on the bottom square would spread out to touch the edges of the adjacent cube's top face. The vertices of the squares on the sides would move down, too, to also touch the cube's face.
additionally, if two sides that shared an edge were doing this, and there was a block diagonally, too, so the crystal was part of a 1/2/2 square, the triangle hole that would have been formed in the center would fill in.
Using these simple rules, shapes like this would appear.
I think this looks a lot more interesting as a crystal than just a plain cube with a crystal texture.
I also experimented a bit with non-truncated, regular octahedrons (which worked pretty well, although was kindof boring and had a flaw or two) and snubbed (I think?) cubes, which looked unimpressive. This system was the most crystal-like to me.
even if the random generators in question are not well suited to seamless wrapping, there's a number of tricks one can do to allow it anyway. Using a gradient-like blend of two maps that are offset by half in each direction, for example. I don't think this idea would be too much of a problem, really, in a game like minecraft.