Если графика отображается для большого угла обзора (например, очень большой телевизор или гарнитура VR), зритель не может сфокусироваться на всем изображении, только на его части. (На самом деле, это относится и к экранам обычного размера.)
В сочетании со способом отслеживания глаз зрителя (который, как я полагаю, наиболее жизнеспособен в виртуальной реальности), вы можете теоретически использовать это и визуализировать графику вне фокуса зрителя с постепенно уменьшающимися деталями и разрешением, получая производительность без потери воспринимаемого качества.
Есть ли какие-либо методы для этого доступны или находятся в стадии разработки сегодня?
opengl
directx
rendering
virtual-reality
Барт ван Хейкелом
источник
источник
Ответы:
Есть примеры таких эффектов, о которых вы говорите во многих играх. Во-первых, есть глубина резкости , при которой объект на расстоянии выглядит размытым, точно так же, как если бы камера фокусировалась на вещах, расположенных только близко к ней, как в этом примере. Вы можете изучить другие примеры, связанные с этим, в пакете DirectX SDK - там тоже есть примеры кода. Для OpenGL вы получите их в сети, если будете искать.
Второе, что вы можете захотеть увидеть, это то, что может быть известно как Geometry MipMaping или Progressive Meshes, что, как следует из названия, похоже на mip-mapping текстуры, но для геометрии. Количество полигонов в сетке уменьшается по мере удаления объекта от камеры. Это помогает в повышении производительности. В D3D существует функция, которая поможет автоматически генерировать прогрессивные сетки. Вот:
Вот пример этого:
РЕДАКТИРОВАТЬ: рассмотреть следующее изображение
Это усечение камеры. Линия, проходящая прямо через середину, является вектором LookAt. Теперь, предполагая, что игрок всегда захочет сфокусироваться в центре экрана, вы определяете угол x. Любой объект, который будет расположен под углом больше, чем определенный х, будет иметь рендеринг с низким разрешением, а те, которые находятся в пределах угла, будут отображаться с деталями. Таким образом, объекты в центре экрана будут более детальными, чем объекты по бокам. Если игрок не смотрит в центр, просто отрегулируйте эту центральную линию в направлении, в котором смотрит игрок. (или, возможно, повернуть всю камеру в этом направлении).
источник
Да, Foveted Rendering использует отслеживание глаз, чтобы визуализировать только то, на что смотрит пользователь с высокой детализацией. Все остальное можно представить более подробно.
Хотя это довольно очевидно, если посмотреть на такой снимок экрана, как сообщается, он невидим для пользователя в виртуальной реальности.
Существующие основные гарнитуры не включают отслеживание глаз (пока), но есть несколько решений сторонних производителей для добавления отслеживания глаз. Кроме того, для процесса рендеринга требуется небольшая дополнительная обработка. Однако преимущества являются значительными. С внедрением рендеринга рендеринга требуется лишь небольшая процентная доля поля зрения с высокой детализацией, что может привести к значительному увеличению частоты кадров. Точные цифры зависят от реализации.
Кроме того, это даже не ограничивается VR-гарнитурами. Его можно использовать и на настольных мониторах (с добавлением отслеживания глаз и более ограниченным эффектом).
источник
Если продолжить ответ Byte56, то да, такие вещи развиваются в отрасли. Fixed Foveated Rendering - это техника, используемая Valve в демонстрации по ремонту роботов ( https://youtu.be/DdL3WC_oBO4?t=769 ) и в некоторых коммерческих играх (вспоминается Resident Evil VII для PSVR). В фиксированном рендеринге рендеринга не используется отслеживание глаз, но это означает, что он хорошо работает с текущими версиями гарнитур VR, которые в настоящее время не имеют каких-либо возможностей отслеживания глаз. Хотя прямо сейчас Vive должен получить набор обновлений для отслеживания взглядов, так что вы можете увидеть, что некоторые версии AAA VR используют это.
Вы не найдете много доступных примеров кода, связанных с такого рода вещами, но у Nvidia есть некоторые аппаратные расширения, которые хорошо документированы. Multi-разрешение довольно хорошо объяснено, но это особенность, связанная с их оборудованием.
источник