Алгоритм линии взгляда в стиле коммандос - PullRequest
2 голосов
/ 12 июля 2010

Не могли бы вы указать мне статью о алгоритме RENDERING линии взгляда? Я ищу что-то похожее на ту, что использовалась в серии игр Commandos (Pyro Studios). Конус / треугольник линии взгляда должен быть визуализирован (вид сверху вниз) с соответствующими тенями, вызванными препятствиями. Спасибо

1 Ответ

1 голос
/ 13 июля 2010

В псевдокоде:

function get_visible_objects(observer)

  /* get the list of objects inside the cone of vision */
  in_cone = get_the_objects_inside(observer.cone)

  /* sort the objects by proximity to the observer */
  sorted = in_cone.sort_by_distance_to(observer)

  /* visible is the result. start with all the objects in the cone */
  visible = sorted.copy

  /* parse the objects in the cone, from nearest to the observer to farthest away,
     and remove any objects occluded */
  for each object in sorted do
    /* remove any other object that is occluded by object */
    to_remove = []
    for each other in visible do
      if object.occludes(other) then
        to_remove.add(other)
      end
    end
    visible = visible - to_remove
  end

  return visible
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...