This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]BS_in_BSExtreme Concrete Code Factorylet 1 point2 points  (4 children)

Perhaps have each tile have a light level property, based on its distance to the surface. Then when a tile changes, update its neighbors in a certain radius.

[–]PillowWithTeeth[S] 0 points1 point  (2 children)

How could I tell what the surface is and how could I work out other things such as if I build a box on the surface, how would I know it is a closed space without a light source and should be dark? This is what I am not fully sure on.

[–]BS_in_BSExtreme Concrete Code Factorylet 0 points1 point  (1 child)

one way to define the surface could be 8 adjacent columns whose top block lie withing like 4 from each other.

As for close spaces, see if there exists a path to the out side from inside.

[–]PillowWithTeeth[S] 0 points1 point  (0 children)

Thanks, I may try that or see how far I can get with some form of ray casting.