Recursive reflection and shadows added (probably)