Віртуальна система камер
Графіка у відеоіграх |
---|
Категорія:Графіка у відеоіграх |
У відеоіграх з 3D-графікою віртуальна система камер спрямована на керування камерою для відображення вигляду віртуального 3D світу. Системи камер використовуються у відеоіграх, де метою є відображення подій під найкращим можливим кутом, тобто у віртуальних 3D світах, коли потрібен вид у перспективі від третьої особи.
На відміну від кінематографістів, творці віртуальних камер мають справу з інтерактивним і непередбачуваним світом. Неможливо знати, де буде персонаж гравця в наступні кілька секунд — отже, неможливо спланувати ракурси так, як це зробив би режисер. Щоб вибрати найбільш відповідні ракурси, система покладається на установлені заздалегідь правила або штучний інтелект.
Існує три типи віртуальних камер:
- фіксована камера, де камера взагалі не рухається і персонаж гравця відображається в послідовності нерухомих кадрів
- камера стеження, де камера залежить від напрямку руху персонажа
- інтерактивна камера, яка є частково автоматизованою, що дозволяє гравцеві змінювати ракурс за бажанням
Для реалізації системи камер, розробники відеоігор використовують методи програмування в обмеженнях, автономні агенти або алгоритми штучного інтелекту.
У відеоіграх «перспектива від третьої особи» (або «вид від третьої особи») має на увазі графічну перспективну проєкцію, яка відображається з фіксованої відстані позаду та трохи вище персонажа гравця. Дана перспектива найчастіше зустрічається в жанрі бойовиків та пригодницьких іграх. Відеоігри з такою перспективою часто використовують позиційне аудіо, де гучність навколишніх звуків змінюється залежно від положення аватара.[1]
У системі з фіксованою камерою розробники заздалегідь прописують її характеристики — положення віртуальної камери, її орієнтацію в просторі або поле зору, ці характеристики зазвичай залишаються незмінними протягом всього ігрового відрізку. Положення віртуальної камери не змінюється динамічно, тому одне й те саме місце завжди відображатиметься однаково. Прикладом відеоігор з фіксованою камерою є Grim Fandango (1998), Syberia (2002), ранні ігри Resident Evil і God of War.[2]
Однією з переваг даної системи є те, що вона дозволяє геймдизайнерам використовувати кінематографічні прийоми, створюючи відповідну атмосферу за допомогою операторської роботи та вибору ракурсів. Проєкти, які використовують цю техніку, часто хвалять за кінематографічність.[3] У багатьох іграх із фіксованою камерою використовується танкове керування[en] — коли гравці керують пересуванням персонажа, яке залежить від його знаходження на екрані, а не від положення камери[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] Роль програмування в обмеженнях полягає у створенні найкращого можливого ракурсу, використовуючи лише специфічний набір візуальних констант. Іншими словами, отримуючи бажану композицію кадру, наприклад «покажіть цього персонажа та переконайтеся, що він займає принаймні 30 відсотків екранного простору», необхідно використати різні методи, щоб спробувати створити знімок, який задовольнятиме цей запит. Після того, як підходящий знімок знайдено, відповідні координати та поворот камери використовуються для відображення у грі.[13]
У деяких системах камер, якщо не вдається знайти рішення, обмеження послаблюються. Наприклад, якщо не можливо створити знімок, де персонаж займає 30 відсотків екранного простору, можна проігнорувати відповідне обмеження і просто переконатися, що персонажа взагалі видно.[14] До таких методів відноситься масштабування.
Для вибору необхідного знімку, деякі системи камер використовують попередньо визначені сценарії. Як правило, сценарій запускається в результаті відповідних дій гравця, наприклад, коли персонаж гравця починає розмову з іншим персонажем, буде запущено сценарій «розмови». Цей сценарій міститиме алгоритм роботи віртуальної камери, що «знімає» розмову двох персонажів. Таким чином, знімки будуть комбінацією, наприклад, ракурсів через плече та великим планом. Такі підходи на основі сценаріїв можуть перемикати камеру між «розставленими» розробниками вручну віртуальними камерами для деяких сюжетних сцен та програмою для генерації координат камери під управлінням штучного інтелекту в залежності від мінливості компонування сцени. Такий сценарійний підхід і використання програмування в обмеженнях для обчислення віртуальних камер вперше було запропоновано Стівеном Друкером.[15]
Білл Томлінсон використав більш оригінальний підхід до проблеми. Він розробив систему, в якій камера є автономним агентом зі своєю індивідуальністю, стиль знімків і їх ритм залежать від її настрою. Таким чином щаслива камера буде «робити знімки частіше, витрачати більше часу на знімки великим планом, рухатися стрибаючими рухами та яскраво освітлювати сцену».[16]
У той час як більша частина роботи над автоматизованими програмами керування віртуальними камерами була спрямована на зменшенні потреби в ручному управлінні, Director's Lens запропонували рішення, яке пропонує палітру вибраних знімків віртуальної камери, залишаючи людині-оператору творчу можливість вибрати з них підходящі. Під час обчислення наступних пропонованих знімків віртуальної камери, система аналізує візуальні композиції та шаблони редагування попередніх вибраних оператором знімків, щоб запропонувати саме такі знімки, які не будуть порушувати композиційну цілісність сцени, тобто не перериватимуть визначені сюжетні лінії подій, будуть відповідно відображати розміщення віртуальних персонажів, щоб вибрані ракурси виглядали так, ніби персонажі дивляться один на одного та інше.[17]
У 2010 році Microsoft випустили Kinect як гібридний периферійний пристрій 3D-сканера/веб-камери, який забезпечує розпізнавання всього тіла гравця і керування інтерфейсами відеоігор та іншого програмного забезпечення Xbox 360 без використання рук. Згодом Олівер Крейлос з Каліфорнійського Університету у Девісі в своїй серії відео на YouTube модифікував цю технологію, поєднавши Kinect із віртуальною камерою на ПК.[18] Пізніше Крейлос продемонстрував подальшу розробку модифікації, об’єднавши відеопотоки двох Kinect для подальшого покращення захоплення відео в межах зору віртуальної камери.[19] Розробки Крейлоса з використанням Kinect були висвітлені серед робіт інших учасників спільноти ентузіастів Kinect у статті New York Times.[20]
Було розроблено віртуальні камери, які дозволяють захоплення руху для спостереження за рухами персонажів у реальному часі[21] у попередньо сконструйованому цифровому середовищі.[22] Resident Evil 5 була першою відеогрою, у якій використовувалася технологія,[23] яка була розроблена для фільму Аватар (2009).[22][24] Використання захоплення руху для керування положенням і орієнтацією віртуальної камери дозволяє оператору інтуїтивно переміщати та націлювати віртуальну камеру, просто пересуваючись з необхідним обладнанням. Віртуальна камера складається з портативного монітора або планшета, датчиків руху, додаткового каркаса підтримки та додаткових джойстиків або кнопок керування, які зазвичай використовуються для початку або зупинки запису та налаштування властивостей об’єктива.[25] У 1992 році Майкл Маккенна з медіа-лабораторії Массачусетського технологічного інституту продемонстрував перше задокументоване обладнання для віртуальної камери, закріпивши магнітний датчик руху Polhemus і 3,2-дюймовий портативний LCD-телевізор на дерев'яній лінійці.[26]
- ↑ а б Andrew Rollings; Ernest Adams (2006). Fundamentals of Game Design. Prentice Hall. ISBN 9780131687479.
- ↑ Fixed Camera (Concept). Giant Bomb (англ.). Процитовано 16 березня 2023.
- ↑ Casamassina, Matt. Resident Evil. IGN. Архів оригіналу за 25 березня 2009. Процитовано 16 березня 2023.
- ↑ Perez, Matt (20 лютого 2015). A eulogy for tank controls. PC Gamer (англ.). Процитовано 16 березня 2023.
- ↑ Matulef, Jeffrey (26 січня 2015). Bringing out the Dead: Tim Schafer reflects back on Grim Fandango. Eurogamer.net (брит.). Процитовано 16 березня 2023.
- ↑ IGN Staff (8 вересня 1999). Sonic Adventure. IGN. Архів оригіналу за 11 лютого 2008. Процитовано 16 березня 2023.
- ↑ IGN Staff (11 грудня 1999). Tomb Raider: The Last Revelation. IGN (англ.). Процитовано 16 березня 2023.
- ↑ Carle, Chris. Enter the Matrix. IGN. Архів оригіналу за 25 березня 2009. Процитовано 16 березня 2023.
- ↑ Gerstmann, Jeff (27 серпня 2002). Super Mario Sunshine Review. GameSpot. Архів оригіналу за 26 березня 2009. Процитовано 16 березня 2023.
- ↑ Casamassina, Matt. Legend of Zelda: The Wind Waker. IGN. Архів оригіналу за 26 березня 2009. Процитовано 16 березня 2023.
- ↑ Super Mario 64--Nintendo 64 (1996). GameSpot. Архів оригіналу за 26 березня 2009. Процитовано 16 березня 2023.
- ↑ Семыкин, Владимир (11 травня 2019). Выгодный ракурс: на что влияет камера в видеоиграх — Gamedev на DTF. DTF. Процитовано 16 березня 2023.
- ↑ William Bares; Scott McDermott; Scott McDermott; Somying Thainimit (2000). Virtual 3D camera composition from frame constraints (PDF). California, United States: Marina del Rey: International Multimedia Conference. с. 177—186. Архів оригіналу (PDF) за 10 липня 2010. Процитовано 16 березня 2023.
- ↑ Steven M. Drucker; David Zeltzer (1995). CamDroid: A System for Implementing Intelligent Camera Control (PDF). Symposium on Interactive 3D Graphics. ISBN 978-0-89791-736-0. Архів оригіналу (PDF) за 5 червня 2011. Процитовано 16 березня 2023.
- ↑ Steven Drucker; David Zeltzer (1995). CamDroid: A System for Implementing Intelligent Camera Control (PDF). Symposium on Interactive 3D Graphics. ISBN 978-0-89791-736-0. Архів оригіналу (PDF) за 5 червня 2011. Процитовано 17 березня 2023.
- ↑ Bill Tomlinson; Bruce Blumberg; Delphine Nain (2000). Expressive Autonomous Cinematography for Interactive Virtual Environments (PDF). Vol. 4th. Barcelona, Spain.: Proceedings of the Fourth International Conference on Autonomous Agents. doi:10.1145/336595.337513. ISBN 978-1-58113-230-4. Процитовано 17 березня 2023.
- ↑ Christophe Lino; Marc Christie; Roberto Ranon; William Bares (1 грудня 2011). The director's lens: an intelligent assistant for virtual cinematography. Proceedings of the 19th ACM International Conference on Multimedia (MM '11). ACM. с. 323—332. doi:10.1145/2072298.2072341. ISBN 9781450306164.
{{cite book}}
:|access-date=
вимагає|url=
(довідка) - ↑ Parrish, Kevin (18 листопада 2010). Kinect Used As 3D Video Capture Tool. Tom's Hardware (англ.). Процитовано 17 березня 2023.
- ↑ Stevens, Tim (29 листопада 2010). Two Kinects join forces to create better 3D video, blow our minds (video). Engadget (амер.). Процитовано 17 березня 2023.
- ↑ Wortham, Jenna (22 листопада 2010). With Kinect Controller, Hackers Take Liberties. The New York Times (амер.). ISSN 0362-4331. Процитовано 17 березня 2023.
- ↑ Hsu, Jeremy (27 лютого 2009). Virtual Camera" Captures Actors’ Movements for Resident Evil 5. Popular Science. Архів оригіналу за 2 березня 2009. Процитовано 17 березня 2023.
- ↑ а б Lewinski, John Scott. Resident Evil 5 Offers Sneak Peek at Avatar's 'Virtual Camera'. Wired (амер.). ISSN 1059-1028. Процитовано 17 березня 2023.
- ↑ Lowe, Scott (28 лютого 2009). The Tech Behind RE5. IGN (англ.). Процитовано 17 березня 2023.
- ↑ THOMPSON, ANNE (1 січня 2010). How James Cameron's Innovative New 3D Tech Created Avatar. Popular Mechanics (амер.). Процитовано 17 березня 2023.
- ↑ Insight VCS - A professional virtual camera system. OptiTrack (англ.). Процитовано 17 березня 2023.
- ↑ Michael McKenna (March 1992). Interactive viewpoint control and three-dimensional operations. Proceedings of the 1992 symposium on Interactive 3D graphics - SI3D '92. ACM. с. 53—56. doi:10.1145/147156.147163. ISBN 978-0897914673.