В 3D видеоиграх система виртуальной камеры направлена на управление камерой или набором камер для отображения вида трехмерного виртуального мира . Системы камеры используются в видеоиграх, где их цель — показать действие под наилучшим возможным углом; в более общем смысле они используются в трехмерных виртуальных мирах, когда требуется вид от третьего лица.
В отличие от кинематографистов, создатели систем виртуальной камеры имеют дело с интерактивным и непредсказуемым миром. Невозможно знать, где персонаж игрока окажется в ближайшие несколько секунд; следовательно, невозможно планировать кадры так , как это сделал бы кинематографист. Чтобы решить эту проблему, система полагается на определенные правила или искусственный интеллект для выбора наиболее подходящих кадров.
В основном существует три типа систем камер. В системах с фиксированной камерой камера вообще не движется, и система отображает персонажа игрока в последовательности неподвижных кадров. С другой стороны, камеры слежения следят за движениями персонажа. Наконец, интерактивные системы камер частично автоматизированы и позволяют игроку напрямую менять вид. Для реализации систем камер разработчики видеоигр используют такие методы, как решатели ограничений , скрипты искусственного интеллекта или автономные агенты .
В видеоиграх « третье лицо » относится к графической перспективе , визуализированной с фиксированного расстояния позади и немного выше персонажа игрока. Эта точка зрения позволяет игрокам видеть более четко охарактеризованный аватар и наиболее распространена в играх жанра экшн и приключенческих играх . Игры с такой перспективой часто используют позиционный звук, где громкость окружающих звуков варьируется в зависимости от положения аватара. [1]
Существует три основных типа систем камер от третьего лица: «системы фиксированной камеры», в которых положение камеры задается во время создания игры; «системы следящей камеры», в которых камера просто следует за персонажем игрока; и «интерактивные системы камеры», которые находятся под контролем игрока.
С фиксированной системой камер разработчики устанавливают свойства камеры, такие как ее положение, ориентация или поле зрения , во время создания игры. Виды камеры не будут меняться динамически, поэтому одно и то же место всегда будет показано под одним и тем же набором видов. Игры, в которых используются фиксированные камеры, включают Grim Fandango (1998) и ранние игры Resident Evil и God of War . [2]
Одним из преимуществ этой системы камер является то, что она позволяет разработчикам игр использовать язык кино , создавая настроение с помощью операторской работы и выбора кадров. Игры, использующие такую технику, часто хвалят за их кинематографические качества. [3] Во многих играх с фиксированными камерами используется управление танком , при котором игроки управляют движением персонажа относительно положения персонажа игрока, а не положения камеры; [4] это позволяет игроку сохранять направление при изменении угла камеры. [5]
Камеры слежения следят за персонажами сзади. Игрок никак не управляет камерой — например, он не может вращать ее или перемещать в другое положение. Этот тип системы камер был очень распространен в ранних 3D-играх, таких как Crash Bandicoot или Tomb Raider, поскольку он очень прост в реализации. Однако с ним связано несколько проблем. В частности, если текущий вид не подходит (либо потому, что он закрыт объектом, либо потому, что он не показывает то, что интересует игрока), его нельзя изменить, поскольку игрок не управляет камерой. [6] [7] [8] Иногда эта точка обзора вызывает трудности, когда персонаж поворачивается или стоит лицом к стене. Камера может дергаться или оказываться в неудобных положениях. [1]
Этот тип системы камеры является улучшением по сравнению с системой следящей камеры. Пока камера все еще отслеживает персонажа, некоторые ее параметры, такие как ориентация или расстояние до персонажа, могут быть изменены. На игровых консолях камера часто управляется аналоговым джойстиком , чтобы обеспечить хорошую точность, тогда как в играх для ПК она обычно управляется мышью . Это касается таких игр, как Super Mario Sunshine или The Legend of Zelda: The Wind Waker . Полностью интерактивные системы камеры часто сложно реализовать правильным образом. Таким образом, GameSpot утверждает, что большая часть трудностей Super Mario Sunshine заключается в необходимости управлять камерой. [9] The Legend of Zelda: The Wind Waker была более успешной в этом - IGN назвал систему камеры «настолько умной, что она редко нуждается в ручной коррекции». [10]
Одной из первых игр, предлагающих интерактивную систему камер, была Super Mario 64. В игре было два типа систем камер, между которыми игрок мог переключаться в любое время. Первая была стандартной системой следящей камеры, за исключением того, что она частично управлялась искусственным интеллектом . Действительно, система «знала» о структуре уровня и поэтому могла предвидеть определенные кадры. Например, на первом уровне, когда тропа к холму собирается повернуть налево, камера автоматически начинает смотреть влево, тем самым предвидя движения игрока. Второй тип позволяет игроку управлять камерой относительно положения Марио . Нажимая левую или правую кнопки, камера вращается вокруг Марио, в то время как нажатие вверх или вниз приближает или отдаляет камеру от Марио. [11] [12]
Существует большое количество исследований о том, как реализовать систему камер. [13] Роль программного обеспечения решателя ограничений заключается в создании наилучшего возможного кадра с учетом набора визуальных ограничений. Другими словами, решателю ограничений дается запрошенная композиция кадра, например, «показать этого персонажа и убедиться, что он занимает не менее 30 процентов пространства экрана». Затем решатель будет использовать различные методы, чтобы попытаться создать кадр, который удовлетворит этому запросу. Как только подходящий кадр найден, решатель выводит координаты и поворот камеры, которые затем могут быть использованы графическим рендерером для отображения вида. [14]
В некоторых системах камер, если решение не может быть найдено, ограничения ослабляются. Например, если решатель не может сгенерировать кадр, в котором персонаж занимает 30 процентов экранного пространства, он может игнорировать ограничение экранного пространства и просто гарантировать, что персонаж вообще будет виден. [15] Такие методы включают в себя уменьшение масштаба.
Некоторые системы камер используют предопределенные сценарии для определения того, как выбрать текущий кадр для часто встречающихся сценариев кадров, называемых идиомами фильмов. Обычно сценарий будет запущен в результате действия. Например, когда персонаж игрока инициирует разговор с другим персонажем, будет запущен сценарий «разговора». Этот сценарий будет содержать инструкции о том, как «снять» разговор двух персонажей. Таким образом, кадры будут комбинацией, например, кадров через плечо и крупных планов . Такие подходы на основе сценариев могут переключать камеру между набором предопределенных камер или полагаться на решатель ограничений для генерации координат камеры для учета изменчивости макета сцены. Этот подход на основе сценариев и использование решателя ограничений для вычисления виртуальных камер были впервые предложены Друкером. [16] Последующие исследования продемонстрировали, как система на основе сценариев может автоматически переключать камеры для просмотра разговоров между аватарами в приложении чата в реальном времени. [17]
Билл Томлинсон использовал более оригинальный подход к проблеме. Он разработал систему, в которой камера является автономным агентом со своей собственной личностью. Стиль кадров и их ритм будут зависеть от их настроения. Таким образом, счастливая камера будет «режет чаще, проводить больше времени в кадрах крупным планом, двигаться с подпрыгивающим, стремительным движением и ярко освещать сцену». [18]
В то время как большая часть предыдущей работы в автоматизированных системах управления виртуальной камерой была направлена на снижение необходимости ручного управления камерой человеком, решение Director's Lens вычисляет и предлагает палитру предлагаемых снимков виртуальной камеры, оставляя человеку-оператору возможность сделать творческий выбор кадра. При вычислении последующих предлагаемых снимков виртуальной камеры система анализирует визуальные композиции и шаблоны редактирования ранее записанных кадров для вычисления предлагаемых снимков камеры, которые соответствуют соглашениям о непрерывности, таким как не пересекать линию действия, сопоставлять размещение виртуальных персонажей так, чтобы они смотрели друг на друга через монтажные переходы, и отдает предпочтение тем кадрам, которые человек-оператор ранее использовал последовательно. [19]
В 2010 году Microsoft выпустила Kinect как гибридное периферийное устройство 3D-сканера / веб-камеры , которое обеспечивает полное обнаружение игроков Xbox 360 и управление без помощи рук пользовательскими интерфейсами видеоигр и другого программного обеспечения на консоли. Позднее это было изменено Оливером Крейлосом [20] из Калифорнийского университета в Дэвисе в серии видеороликов на YouTube, которые показали, как он объединяет Kinect с виртуальной камерой на базе ПК. [21] Поскольку Kinect способен обнаруживать полный диапазон глубины (с помощью компьютерного стереозрения и структурированного света ) в пределах захваченной сцены, Крейлос продемонстрировал способность Kinect и виртуальной камеры обеспечивать навигацию со свободной точкой обзора в диапазоне глубины, хотя камера могла позволить только видеозахват сцены, показанной спереди Kinect, что приводило к полям черного пустого пространства, где камера не могла захватить видео в пределах поля глубины. Позже Крейлос продемонстрировал дальнейшее усовершенствование модификации, объединив видеопотоки двух Kinect, чтобы еще больше улучшить видеозахват в поле зрения виртуальной камеры. [22] Разработки Крейлоса с использованием Kinect были освещены среди работ других участников сообщества хакеров и доморощенных разработчиков Kinect в статье New York Times . [23]
Были разработаны виртуальные камеры, которые позволяют режиссеру снимать захват движения и просматривать движения цифрового персонажа в реальном времени [24] в предварительно сконструированной цифровой среде, такой как дом или космический корабль. [25] Resident Evil 5 была первой видеоигрой, в которой использовалась эта технология, [26] которая была разработана для фильма 2009 года Аватар . [25] [27] Использование захвата движения для управления положением и ориентацией виртуальной камеры позволяет оператору интуитивно перемещать и нацеливать виртуальную камеру, просто ходя и поворачивая установку виртуальной камеры. Установка виртуальной камеры состоит из портативного монитора или планшетного устройства, датчиков движения, дополнительной опорной рамы и дополнительных джойстиков или кнопок управления, которые обычно используются для запуска или остановки записи и регулировки свойств объектива. [28] В 1992 году Майкл Маккенна из Media Lab Массачусетского технологического института продемонстрировал самую раннюю задокументированную установку виртуальной камеры, когда он закрепил магнитный датчик движения Polhemus и 3,2-дюймовый портативный ЖК-телевизор на деревянной линейке. [29] Проект Walkthrough в Университете Северной Каролины в Чапел-Хилле создал ряд физических устройств ввода для управления видом виртуальной камеры, включая двойные трехосевые джойстики и опору в форме бильярдного шара, известную как UNC Eyeball, которая имела встроенный трекер движения с шестью степенями свободы и цифровую кнопку. [30]
{{cite book}}
: |journal=
проигнорировано ( помощь ){{cite book}}
: |journal=
проигнорировано ( помощь ){{cite book}}
: CS1 maint: отсутствует местоположение издателя ( ссылка )