How does light spread in Minecraft?
I understand that light levels decrease by 1 each block farther away from the source you get, but is that measured diagonally as well as along the axes? Another way of asking this is: does a light source illuminate a square area around it or a diamond-shaped area?
Also, does light spread around corners? And if so can it “turn” more than once? In other words, if you put a torch on a pillar will things on the opposite side of the pillar receive any light?
3 Solutions collect form web for “How does light spread in Minecraft?”
A light source illuminates a diamond (it doesn’t “travel” diagonally).
Light does spread around corners, but does not travel through most solid objects. A torch placed on a pillar will provide light on the opposite side, but the light has to travel around the piller. The open space immediately adjacent to the piller and opposite the torch, is 2 spaces away, but takes the light 4 spaces to go around the piller. Therefore, from a starting light level of 14 at the torch, the open space will have a light level of 10, in the abscence of another source of light.
As day breaks, or the sun sets, you will see the light (or darkness) ‘ripple’ out into the distance. This is because all visible chunks needs to be updated as the global light level changes, and your computer can’t do this large operation quickly enough for it to appear seamless. Chunks are updated in an order starting with the ones closest to you and finishing with the ones furthest away.
For this reason, you will see the dawn light ripple away from you in all directions, and the speed of light spreading is determined by the speed of your computer, and how fast it can update the new chunks.
it uses the bucket-fill aka flood-fill algorithm to do it – you can google it.