Ээээ. Ничего сложного, если известны координаты игрока. 
 Пример с картинки. 
 Если область видимости 2 клетки во все стороны, то получаем: 
 Код
$x = 54; //координаты игрока по оси x (горизонтальная ось) 
 $y = 54; //координаты игрока по оси y (вертикальная ось) 
 $upper_left_corner[x] = $x - 2; 
 $upper_left_corner['y'] = $y - 2; 
 // верхний левый угол имеет координаты 52/52 
 $upper_right_corner['x'] = $x + 2; 
 $upper_right_corner['y'] = $y - 2; 
 // верхний правый угол имеет координаты 56/52 
 $lower_left_corner['x'] = $x - 2; 
 $lower_left_corner['y'] = $y + 2; 
 // нижний левый угол имеет координаты 52/56 
 $lower_right_corner['x'] = $x + 2; 
 $lower_right_corner['y'] = $y + 2; 
 // нижний правый угол имеет координаты 56/56
 Эти расчеты избыточны, для определения прямоугольной области видимости нам нужны только два угла - левый верхний и правый нижний (или наоборот). 
 Соответственно если нужно проверить находится ли точка с координатами M/N в области видимости: 
 Код
function is_visible($M, $N) { 
    if( $M > $upper_left_corner['x'] AND $M < $lower_right_corner['x'] ) { 
      if( $N > $upper_left_corner['y'] AND $N < $lower_right_corner['y'] ) { 
        return true; 
      }    
    } 
    return false; 
 }