Yes, this seems to confuse a lot of people. The reason is that the the cave.update() function only needs to know the physical head position. The virtual head position can be something completely different, in this case it happens to be the same as the physical head position.
|