Alexey Savchenko, Epic Games
This report will highlight the most recent changes in the version of the technology with reference to specific developments. We will take a look at best practices of development for PC, mobile and web games, also touch upon prospects for the development of applications and games for the VR.
Making VR with Unreal Engine Luis CataldiUnreal Engine
The document discusses recent developments in virtual reality (VR) capabilities in the Unreal Engine. It describes new features like a forward rendering renderer with multi-sample anti-aliasing (MSAA), contact shadows, automatic level of detail (LOD) generation for static meshes, improved per-pixel translucent lighting, and reflection capture quality improvements. It also provides an overview of platform support for VR and resources for learning to develop VR content with Unreal Engine.
This document provides an overview of resources for learning how to make VR games and experiences in Unreal Engine. It discusses VR learning resources available in the Unreal Engine Learn tab as well as video tutorials, presentations, and links. Community resources for VR development from Mitchell McCaffrey and Carlos Coronado are also highlighted. The document covers best practices for VR development such as reducing motion sickness, ensuring high framerates, using profiling tools, and VR locomotion techniques. It emphasizes the importance of audio, lighting, and effects for high-quality VR.
This document provides an overview of resources for learning how to develop virtual reality applications using Unreal Engine. It begins by listing several high-profile VR projects created with Unreal Engine, then outlines learning resources available, including documentation, tutorials, courses, and community content. Key areas covered include getting started with VR platforms, best practices, motion controller setup, and using the VR editor. Updates from Epic on new templates, optimizations for VR development, and expanded platform support are also summarized.
Teaching UE4 With Quest Based Learning Dr Cynthia MarcelloUnreal Engine
This document discusses using Quest-Based Learning (QBL) to teach Unreal Engine 4. QBL uses game mechanics like quests to engage students in a non-linear learning path. Students can choose quests that suit their learning style and progress at their own pace. The document outlines how to design quests aligned to learning outcomes and map them to difficulty levels in UE4. Best practices include using tools like GitHub and Trello for project management. Student feedback indicates QBL provides flexibility and motivates time management.
Alexey Savchenko, Epic Games
This report will highlight the most recent changes in the version of the technology with reference to specific developments. We will take a look at best practices of development for PC, mobile and web games, also touch upon prospects for the development of applications and games for the VR.
Making VR with Unreal Engine Luis CataldiUnreal Engine
The document discusses recent developments in virtual reality (VR) capabilities in the Unreal Engine. It describes new features like a forward rendering renderer with multi-sample anti-aliasing (MSAA), contact shadows, automatic level of detail (LOD) generation for static meshes, improved per-pixel translucent lighting, and reflection capture quality improvements. It also provides an overview of platform support for VR and resources for learning to develop VR content with Unreal Engine.
This document provides an overview of resources for learning how to make VR games and experiences in Unreal Engine. It discusses VR learning resources available in the Unreal Engine Learn tab as well as video tutorials, presentations, and links. Community resources for VR development from Mitchell McCaffrey and Carlos Coronado are also highlighted. The document covers best practices for VR development such as reducing motion sickness, ensuring high framerates, using profiling tools, and VR locomotion techniques. It emphasizes the importance of audio, lighting, and effects for high-quality VR.
This document provides an overview of resources for learning how to develop virtual reality applications using Unreal Engine. It begins by listing several high-profile VR projects created with Unreal Engine, then outlines learning resources available, including documentation, tutorials, courses, and community content. Key areas covered include getting started with VR platforms, best practices, motion controller setup, and using the VR editor. Updates from Epic on new templates, optimizations for VR development, and expanded platform support are also summarized.
Teaching UE4 With Quest Based Learning Dr Cynthia MarcelloUnreal Engine
This document discusses using Quest-Based Learning (QBL) to teach Unreal Engine 4. QBL uses game mechanics like quests to engage students in a non-linear learning path. Students can choose quests that suit their learning style and progress at their own pace. The document outlines how to design quests aligned to learning outcomes and map them to difficulty levels in UE4. Best practices include using tools like GitHub and Trello for project management. Student feedback indicates QBL provides flexibility and motivates time management.
The document provides an overview of resources available for learning Unreal Engine, including:
- Updates to the online documentation such as improved metadata and filters.
- Links to documentation pages on topics like level design, cameras, and programming in C++ and Blueprints.
- Resources for virtual reality development including documentation, videos, and quick starts.
- Information on the different types of Twitch streams from Epic including livestreams, training, support, and newsletters.
- Mentions of third party learning resources and game samples/assets available for download.
This document discusses behavior trees, which are commonly used to direct behaviors for AI in games. It provides an overview of behavior tree theory, including the basic components of behavior trees like composites, services, decorators, tasks, and the blackboard. It then discusses behavior trees in Unreal Engine 4 specifically. The document also provides an example of how behavior trees could be used for an airplane dogfighting AI and includes references for further information.
GDC Europe 2014: Unreal Engine 4 for Programmers - Lessons Learned & Things t...Gerke Max Preussner
A high-level overview of Unreal Engine 4, its game framework, the Slate user interface library, Unreal Motion Graphics, and Editor and Engine extensibility. Presented at GDC Europe in Cologne, Germany.
Also includes bonus slides on concurrency and parallelism features, general tips for programmers and Epic's build and automation infrastructure.
Rendering AAA-Quality Characters of Project A1Ki Hyunwoo
The document discusses rendering techniques for high quality characters in an unannounced game project called A1. It covers skin rendering using subsurface scattering with multiple scattering approximations. It also covers hair rendering using ordered independent transparency with a linked list approach integrated into UE4, as well as a physically based shading model for hair. Future work discussed includes improvements to subsurface scattering, lighting, and shadowing for transparent and translucent materials.
Optimizing the Graphics Pipeline with Compute, GDC 2016Graham Wihlidal
With further advancement in the current console cycle, new tricks are being learned to squeeze the maximum performance out of the hardware. This talk will present how the compute power of the console and PC GPUs can be used to improve the triangle throughput beyond the limits of the fixed function hardware. The discussed method shows a way to perform efficient "just-in-time" optimization of geometry, and opens the way for per-primitive filtering kernels and procedural geometry processing.
Takeaway:
Attendees will learn how to preprocess geometry on-the-fly per frame to improve rendering performance and efficiency.
Intended Audience:
This presentation is targeting seasoned graphics developers. Experience with DirectX 12 and GCN is recommended, but not required.
Лекция "Особенности разработки под разные платформы"Evgeniy Marchenko
18 октября 2016 года.
Первая в России программа повышения квалификации в области создания и запуска игр с использованием технологий виртуальной реальности, сделанная экспертами-практиками. За неделю, проведенную на программе по виртуальной реальности, вы узнаете о методологии разработки игровых VR-продуктов, получите навыки, позволяющие самостоятельно прорабатывать геймдизайн игр виртуальной реальности, структурируете уже имеющийся опыт или получите первое представление о том, в каком направлении нужно двигаться, чтобы создать свою VR-игру.
http://hsbi.hse.ru/programs/professional_development/vamr-metodologiya-vr-razrabotki/
Сергей Комлач "Итоги Google I/O: что нас ждет"Fwdays
Итоги Google I/O. Что нас ждет в 2016: Android N, DevTools, Daydream, Android Apps в Chrome OSи многое другое
Совсем недавно прошла ежегодная конференция Google I/O 2016, на которой было сделано ряд анонсов - новый Google Assistant, Android N, платформа Daydream, улучшенные DevTools, а так же Instant Apps и Android Apps в Chrome OS.
Я побывал на I/O и как очевидец, расскажу про все анонсы и инсайды конференции
Unity: "Очевидное-невероятное” или хитрости разработки на Unity AndroidDevGAMM Conference
Unity для платформы Android решает за разработчика огромное количество проблем. Что впрочем не отменяет умелое использование этого мощного инструментария. Приходите и узнайте секреты и хитрости разработки от участника команды Unity Android.
vSphereTools - инструмент для автоматизации работы с vSphere | Тимур ГильмуллинPositive Hack Days
1. VIX API против pysphere.
2. vSphereTools - это набор скриптов от DevOps для поддержки работы с vSphere и виртуальными машинами.
3. Описание инструмента, его достоинства и недостатки, возможные доработки.
Visual Studio Connect() Russia Инструменты управления жизненным циклом Micros...Microsoft
Инструменты управления жизненным циклом Microsoft для вашего проекта – в облаке и локально.
Application Insights, Azure, Visual Studio Team Services, нагрузочное тестирование и процессы.
Vagrant - поднимаем проект на рабочей машине
Vagrant может быть еще проще (Vagrant plugins)
Как Ansible упрощает разворачивание проекта в Vagrant
А вы пробовали Docker?
Кирилл Ветчинкин Практика использования .NET Core на ОС Linux с применением а...MskDotNet Community
Технология.net Core от Microsoft позволила.Net разработчикам разворачивать приложения на Linux. Вместе с этим появилось и множество новых возможностей для более эффективной разработки и поставки. В докладе будут разобраны основные проблемы разработки, поставки, тестирования и рассмотрены схемы их решения, используя такие средства как: GitLab, Vgarant+VirtualBox, TeamCity, Ansible, Octopus Deploy, Docker. Мы поговорим про создание тестовых сред, управление инфраструктурой из кода и CI/CD. Основная цель доклада — продемонстрировать, что.net Core на Linux — это выгодно, быстро и управляемо.
The document provides an overview of resources available for learning Unreal Engine, including:
- Updates to the online documentation such as improved metadata and filters.
- Links to documentation pages on topics like level design, cameras, and programming in C++ and Blueprints.
- Resources for virtual reality development including documentation, videos, and quick starts.
- Information on the different types of Twitch streams from Epic including livestreams, training, support, and newsletters.
- Mentions of third party learning resources and game samples/assets available for download.
This document discusses behavior trees, which are commonly used to direct behaviors for AI in games. It provides an overview of behavior tree theory, including the basic components of behavior trees like composites, services, decorators, tasks, and the blackboard. It then discusses behavior trees in Unreal Engine 4 specifically. The document also provides an example of how behavior trees could be used for an airplane dogfighting AI and includes references for further information.
GDC Europe 2014: Unreal Engine 4 for Programmers - Lessons Learned & Things t...Gerke Max Preussner
A high-level overview of Unreal Engine 4, its game framework, the Slate user interface library, Unreal Motion Graphics, and Editor and Engine extensibility. Presented at GDC Europe in Cologne, Germany.
Also includes bonus slides on concurrency and parallelism features, general tips for programmers and Epic's build and automation infrastructure.
Rendering AAA-Quality Characters of Project A1Ki Hyunwoo
The document discusses rendering techniques for high quality characters in an unannounced game project called A1. It covers skin rendering using subsurface scattering with multiple scattering approximations. It also covers hair rendering using ordered independent transparency with a linked list approach integrated into UE4, as well as a physically based shading model for hair. Future work discussed includes improvements to subsurface scattering, lighting, and shadowing for transparent and translucent materials.
Optimizing the Graphics Pipeline with Compute, GDC 2016Graham Wihlidal
With further advancement in the current console cycle, new tricks are being learned to squeeze the maximum performance out of the hardware. This talk will present how the compute power of the console and PC GPUs can be used to improve the triangle throughput beyond the limits of the fixed function hardware. The discussed method shows a way to perform efficient "just-in-time" optimization of geometry, and opens the way for per-primitive filtering kernels and procedural geometry processing.
Takeaway:
Attendees will learn how to preprocess geometry on-the-fly per frame to improve rendering performance and efficiency.
Intended Audience:
This presentation is targeting seasoned graphics developers. Experience with DirectX 12 and GCN is recommended, but not required.
Лекция "Особенности разработки под разные платформы"Evgeniy Marchenko
18 октября 2016 года.
Первая в России программа повышения квалификации в области создания и запуска игр с использованием технологий виртуальной реальности, сделанная экспертами-практиками. За неделю, проведенную на программе по виртуальной реальности, вы узнаете о методологии разработки игровых VR-продуктов, получите навыки, позволяющие самостоятельно прорабатывать геймдизайн игр виртуальной реальности, структурируете уже имеющийся опыт или получите первое представление о том, в каком направлении нужно двигаться, чтобы создать свою VR-игру.
http://hsbi.hse.ru/programs/professional_development/vamr-metodologiya-vr-razrabotki/
Сергей Комлач "Итоги Google I/O: что нас ждет"Fwdays
Итоги Google I/O. Что нас ждет в 2016: Android N, DevTools, Daydream, Android Apps в Chrome OSи многое другое
Совсем недавно прошла ежегодная конференция Google I/O 2016, на которой было сделано ряд анонсов - новый Google Assistant, Android N, платформа Daydream, улучшенные DevTools, а так же Instant Apps и Android Apps в Chrome OS.
Я побывал на I/O и как очевидец, расскажу про все анонсы и инсайды конференции
Unity: "Очевидное-невероятное” или хитрости разработки на Unity AndroidDevGAMM Conference
Unity для платформы Android решает за разработчика огромное количество проблем. Что впрочем не отменяет умелое использование этого мощного инструментария. Приходите и узнайте секреты и хитрости разработки от участника команды Unity Android.
vSphereTools - инструмент для автоматизации работы с vSphere | Тимур ГильмуллинPositive Hack Days
1. VIX API против pysphere.
2. vSphereTools - это набор скриптов от DevOps для поддержки работы с vSphere и виртуальными машинами.
3. Описание инструмента, его достоинства и недостатки, возможные доработки.
Visual Studio Connect() Russia Инструменты управления жизненным циклом Micros...Microsoft
Инструменты управления жизненным циклом Microsoft для вашего проекта – в облаке и локально.
Application Insights, Azure, Visual Studio Team Services, нагрузочное тестирование и процессы.
Vagrant - поднимаем проект на рабочей машине
Vagrant может быть еще проще (Vagrant plugins)
Как Ansible упрощает разворачивание проекта в Vagrant
А вы пробовали Docker?
Кирилл Ветчинкин Практика использования .NET Core на ОС Linux с применением а...MskDotNet Community
Технология.net Core от Microsoft позволила.Net разработчикам разворачивать приложения на Linux. Вместе с этим появилось и множество новых возможностей для более эффективной разработки и поставки. В докладе будут разобраны основные проблемы разработки, поставки, тестирования и рассмотрены схемы их решения, используя такие средства как: GitLab, Vgarant+VirtualBox, TeamCity, Ansible, Octopus Deploy, Docker. Мы поговорим про создание тестовых сред, управление инфраструктурой из кода и CI/CD. Основная цель доклада — продемонстрировать, что.net Core на Linux — это выгодно, быстро и управляемо.
UniversalApp "убийца" WPF или же это WPF+ ?GoSharp
Доклад освящает основные вопросы касающиеся Universal App и WPF, например:
• Развитие WPF и появление WinRT
• Унификация Windows-платформы и UAP
• Инвестиции в WPF
• Как WPF стыкуется с UAP + матрица миграции (когда и как стоит мигрировать, а когда нет)
10. Образовательные ресурсы по VR на Unreal
Engine:
Начало работы:
• Oculus Quick Starts
• SteamVR Quick Start
• Google VR Quick Start
• Gear VR Quick Starts
VR-платформы:
• Samsung Gear VR Development
• Google VR Development
• Oculus Rift Development
• SteamVR Development
Статьи по VR:
• VR Cheat Sheets
• VR Best Practices
• Motion Controller Component Setup
• VR Camera Refactor
11. Образовательные ресурсы по VR на Unreal Engine:
Видео:
• 2015 UE4 - VR and Unreal Engine
• Making Bullet Train and Going off the Rails in VR
• VR Bow and Arrow Tutorial w/ Ryan Brucks - Training Livestream
• Training Livestream - Sam and Wes' VR Stream: Cameras, Multiplayer, Tips and Tricks!
• Creating Interactions in VR with Motion Controllers 1-3
• Setting Up VR Motion Controllers
• VR Networking and 3D Menus
• Up and Running with Gear VR
• Developing for VR
• Integrating the Oculus Rift into UE4
Презентации:
• UE4 VR - Niklas Smedberg
• Lessons from Integrating the Oculus Rift into UE4
• Going Off The Rails: The Making of Bullet Train
Ссылки:
• Sam Deiter - 10 VR tips for Unreal Engine
• Tom Looman’s - Getting Started with VR in Unreal Engine 4
12. Образовательные ресурсы по VR для Unreal Engine:
Начало работы с редактором для VR:
• Activating VR Mode
Руководства по редактору для VR:
• Setting Up VR Editor from GitHub
• Navigating the World in VR Mode
• Working with Actors in VR Mode
Справка по редактору для VR:
• VR Editor Controls
• Quick Select Menu
• Radial Menu
• Transforming Actors in VR
• Editor Windows in VR Mode
13. **Новый режим Toggle VR Mode в Unreal Engine 4.13
** Все еще
экспериментальный, но
очень крутой.
15. Mitchell McCaffrey’s - Mitch VR Labs
Introduction to VR
Look Based interaction
Simple Teleportation Mechanic
Introduction to SteamVR
Simple Head IK
Mitch’s UE4 Forum Post
Образовательное Сообщество VR на UE4:
16. Справочник по VR на
Unreal Engine
От Mitchell McCaffrey & Pearson Education Inc.
Ожидается в феврале 2017
Новые образовательные ресурсы по VR на UE4:
17. Образовательное сообщество VR на UE4:
Образовательные каналы на Youtube.com:
• World of Level Design UE4 Fundamentals
• Virtus Education series
• Unreal Engine 4 Beginner Tutorials
• Mathew Wadstein Tutorials
• Leo Gonzales Unreal Basics
• Tesla Dev Tutorials
• UE4 Style Guide
Ресурсы по изучению блюпринтов:
• Communication Training - Zak Parrish
• Blueprints Compendium - VOLUME II
• BP_Compendium.pdf
• Network Compendium
Образовательные каналы на ArchViz:
• Architectural Visualization Tutorials
18. Образовательное сообщество VR на UE4:
Платные онлайн-курсы:
• Learn to Code in C++ by Developing Your First Game
• Complete Introduction to Unreal 4
• Unreal Essential Training - Lynda.com
• Unreal: Learn Lighting - Lynda.com
• 3dmotive - Unreal Engine courses
• Pluralsight - Unreal Engine courses
26. Новое: Шаблон VR-проекта
С помощью контроллера движения возможно взаимодействие и манипуляция с
объектами, а также телепортация.
27. Мы используем эти тест-кейсы из реального мира, чтобы внести наши фреймворки
и новые способы оптимизации в движок
В Epic Games, мы развиваем движок
создавая контент.
28. Instanced Stereo Rendering
Позволяет использовать single draw call для того чтобы создать картинку для обоих глаз,
экономя время CPU (и некоторое время GPU).
- В настоящий момент работает на PC, а в скором времени будет также доступно для
PS4 и мобильных платформ
- Нужно запускать в настройках проекта
29. Instanced stereo доступно сейчас для отложенного/deferred (PC) рендеринга и PS4.
- Мы также внедряем поддержку мульти-мониторного расширения для форвард
(мобильные платформы) рендеринга, а также улучшаем поддержку PS4 для более
оптимального использования ресурсов.
Instanced Stereo Rendering
30. Hidden And Visible Area Mesh
Мы отображаем меши таким образом,
чтобы не захватывать геометрию,
которую не видно, и используем пост-
процессы только там, где это
возможно.
Для отложенного рендеринга, Visible
Area Mesh является серьезной
оптимизацией!
Является особенностью
определённых платформ.
31. Hidden And Visible Area Mesh
Hidden Area Mask использует меш, чтобы выявить и исключить пиксели, которых не
будет в итоговом изображении.
32. Hidden And Visible Area Mesh
Visible Area Mask использует меш, чтобы ограничить пост-процессы только видимыми
пикселями.
33. Camera Refactor
По сравнению с 4.11, мы полностью
переписали систему камеры, чтобы
сделать разработку намного проще!
- Компоненты Камеры (Camera
Components) сейчас двигаются в
точности в зависимости от того, как
двигается реальный VR-шлем (HMD)
- Вы можете прикрепить компоненты
(меши, UI и т.д.) напрямую к камере
(camera component)!
35. Поддержка платформ
Начиная с 4.12, существует поддержка следующих
платформ «из коробки»:
• Oculus Rift
• Steam VR (including the HTC Vive)
• PSVR
• OSVR (preview)
• Samsung Gear VR
• Google Daydream
• Leap Motion
36. Поддержка платформ
Создавая единожды, применяйте вне
зависимости от платформы
Мобильные
устройства
Десктоп / Консоли
Oculus Rift
HTC Vive / Steam VR
PSVR
OSVR
Samsung Gear VR
Google Daydream
37. Все данные платформы
поддерживают стандартные VR-
интерфейсы UE4, поэтому вы можете
создать свой контент единожды и
использовать его где угодно.
Oculus
Vive PSVR
OSVR
Единая Система Камеры
Система Контроллеров Движения
Оптимизированные способы рендеринга
Оптимизации low-latency
39. Отложенный (deferred) рендеринг в UE4 - полноценный рабочий
инструмент, для эффективного использования которого всё же
потребуются необходимые навыки. Temporal Anti Aliasing (временное
сглаживание) ограничивает то, насколько резкой картинка может быть.
Новый форвард (forward) рендеринг в UE4 будет специализированным
рендерингом, с меньшим количеством фичей, но с более быстрыми
базовыми параметрами. Multi Sampling Anti Aliasing (MSAA) – самое
эффективное решение для сглаживания.
43. en.wikipedia.org/wiki/Virtual_reality_sickness
Теория сенсорного конфликта утверждает, что
тошнота/укачивание происходит, когда восприятие
собственного движения пользователя основывается на
несовместимых сенсорных импульсах от зрительной
системы, вестибулярной системы и не-вестибулярных
рецепторов, и в особенности тогда, когда данные
импульсы не совпадают с ожиданиями пользователя,
основывающихся на предшествующем опыте.
44. Пять типичных причин возникновения Тошноты/Укачивания в VR
1. Непоступательные движения
• Не неестественные движения
2. Осознание Вектора
• Когда большая часть того, что видит человек, движется, ему в
действительности кажется, что он сам движется, а окружение
статично
3. Чувство Ускорения
4. Чрезмерное вращение камеры (camera YAW)
5. Наличие статичного кадра (static reference frame)
45. С помощью этих приёмов в Unreal
Engine МЫ можем улучшить опыт от
VR игр и VR опыта в целом
46. Вы ОБЯЗАНЫ Следить за Частотой Кадров
Для просмотра текущего фреймрейта введите “stat fps” или “stat unit” (для более
подробной разбивки) в консоли при запуске игры.
47. VR Instanced Stereo работает «по умолчанию» в UE 4.13
Чтобы включить эту
функцию в версиях до UE
4.13, перейдите в
настройки проекта и
найдите “Instanced Stereo” в
настройках Рендера.
49. Поддерживайте очень упрощенный подход к созданию
контента.
Сводите к минимуму количество сложных шейдеров.
Вместо того, чтобы использовать сложные шейдеры для
деталей поверхностей, лучше добавляйте детали самому мешу.
50. Обязательно используйте LOD‘ы и aggressive culling для
того, чтобы быть уверенными, что вы попадаете в
намеченные показатели производительности в VR.
51. Screen Space Reflections (SSR)
SSR будет работать в VR, но может не дать ожидаемого
результата. Вместо этого лучше использовать датчики
отражения (reflection probes).
52. Проблемы с Normal Mapping
При просмотре Карты Нормалей на объектах в VR, можно
заметить, что они не дают такого же эффекта, как обычно.
Это происходит потому, что Карты Нормалей не учитывают
бинокулярность дисплея или параллакса. Из-за этого Карты
Нормалей выглядят плоскими в VR.
53. Parallax Mapping
Шейдер Parallax mapping может лучше передавать
глубину информации. Таким образом объекты кажутся
более детализированными.
Parallax map сама себя поправит, чтобы показать вам
правильную информацию о глубине от заданной точки.
* Parallax карты часто выглядят лучше вблизи, в то время
как многие Карты Нормалей будут хорошо выглядеть на
средних дистанциях.
54. Tessellation Shader Displacement
Tessellation Shader Displacement изменит 3D геометрию в
реальном времени, добавляя детали, которые не
моделируются в объект. Tessellation shaders очень помогают
отображать информации, потому что они создают
недостающие детали, добавляя больше вершин (vertices) и
изменяя их в 3D пространстве.
55. Запускаем VR Preview:
Тестировать ваш VR set очень просто: выберите “VR Preview” из выпадающего списка кнопки Play.
По умолчанию, отслеживание положения головы будет работать сразу же, без внесения каких-
либо изменений в существующий проект или шаблон.
** Remember in UE 4.13 to try Play from VR Editor, if you have controllers.
56. GPU Profiling:
Для того, чтобы захватить один кадр с таймингами GPU нажмите Ctrl + Shift + или
введите “profilegpu” в консоли. Эта команда собирает точные тайминги GPU. Вы
обнаружите, что некоторые процессы являются тяжелыми и уменьшают частоту
кадров (Ambient Occlusion является одним из распространенных примеров) при
использовании в VR.
Посмотрите GPU Profiling и Performance and Profiling в разделе документации.
57. GPU Profiling:
В Unreal Engine 4.13 появился новый экспериментальный Real Time GPU Profiler!
•Что бы его включить, введите r.GPUStatsEnabled 1 в консоли
•Затем введите stat gpu для его запуска
58. Отключите Тяжёлые Пост-Процессы:
Из-за жестких требований к VR многие из дополнительных функций пост-обработки, которые обычно
используются, должны быть отключены. Для этого, сначала вы можете рассмотреть возможность отключить
тяжелые пост-процессы в настройках проекта в первую очередь, или используйте следующие атрибуты.
• Добавьте Post Process(PP) volume на ваш уровень, если там ещё нет ни одного.
• Выберите PP volume and включите опцию Unbound чтобы добавить эту настройку ко всему уровню
• Пройдитесь по всем настройкам в Post Process Volume и отключите все ненужные настройки PP. Для этого сначала
включите конкретную настройку, измените значение с того, что было установлено по умолчанию (обычно 1.0), на 0.
• В первую очередь нужно отключить наиболее тяжёлые для производительности в VR фичи, такие как Lens Flares, Screen
Space reflections, Screen Space Ambient Occlusion, а также другие влияющие на производительность фичи.
• В то время как некоторые из функций отключаются настройками в файлах .INI, это гарантирует, что производительность
не будет затронута, если .INI удалится по ошибке.
59. Освещение для VR в UE4
• Тусклые огни и цвета могут помочь уменьшить вероятность укачивания/тошноты.
• Не перекрывайте Стационарный/Динамический свет.
• При использовании Динамических Теней – только один shadowing light.
• Пользуйтесь Stat LightRendering, чтобы следить за «стоимостью» освещения.
• Запеченный свет – лучший вариант для VR-окружения.
• Всё время следите за Profile для обеспечения нужной производительности.
60. Фальшивые тени везде, где только можно!!
Используйте такие читы, как fake blob shadow drop, чтобы имитировать динамические
тени для поддержания оптимального фреймрейта VR-проекта.
Пример Blob shadow. Предоставил Eric Chadwick
61. Партикл-Эффекты в VR
• VFX, основанный на меше лучше всего подходит для VR-проекта.
• Партиклы, которые направлены на камеру, - не лучшее решение для VR из-за
стереоскопического видения.
• Dither Temporal AA Material Function сделает так, что Opacity masked объекты будут выглядеть,
как Translucent.
• Local Space rotation может выглядеть в VR, как выключенное.
62. Соображения по VR-Окружению
• Рассматривайте Reflection probes вместо screen space reflections.
• Ещё раз… Texture Blob shadows - дешёвая альтернатива динамическим теням.
• Merge Actor Tool может помочь сократить затраты на отображение Static Mesh без
необходимости выполнения действия вне UE4
65. The Unreal Engine Framework
GameInstance
GameMode
Pawn Class
HUD Class
PlayerController
Class
GameState
Class
PlayerState
Class
66. The Unreal Engine Framework
GameInstance
GameMode
Pawn Class
HUD Class
PlayerController
Class
GameState
Class
PlayerState
Class
GameMode, по сути, определяет
игру.
● Он должен содержать такие
вещи, как правила игры и
условия победы.
● Он также содержи важную
информацию о:
○ Pawn
○ PlayerContoller
○ GameState
○ PlayerState
67. The Unreal Engine Framework
GameInstance
GameMode
Pawn Class
HUD Class
PlayerController
Class
GameState
Class
PlayerState
Class
Pawn class – это базовый класс всех
Акторов (Actors), которые могут
контролироваться игроком или АИ.
● Pawn представляет собой
физическое местоположение,
вращение и т.д. игрока, или
другого субъекта в игре.
● A Character представляет
собой особый тип Pawn,
который может
передвигаться/ходить.
68. The Unreal Engine Framework
GameInstance
GameMode
Pawn Class
HUD Class
PlayerController
Class
GameState
Class
PlayerState
Class
PlayerController является связующим
звеном между Pawn и человеком,
который им играет.
● PlayerController решает, что
делать, а затем выдает команды
на Pawn (например, «идти на
корточках", "прыгнуть").
● Помещение способа ввода или
других функциональных
возможностей в PlayerController
часто бывает необходимо.
● PlayerController хранится на
протяжении всей игры, в то время
как Pawn может быть временным.
69. The Unreal Engine Framework
GameInstance
GameMode
Pawn Class
HUD Class
PlayerController
Class
GameState
Class
PlayerState
Class
GameInstance – это класс,
который сохраняет своё
состояние и переключает уровни,
game modes, pawns и т.д. В то
время как классы типа
GameMode или PlayerController
сбрасываются и данные, которые
в них хранились, – удаляются.
70. The Unreal Engine Framework
GameInstance
GameMode
Pawn Class
HUD Class
PlayerController
Class
GameState
Class
PlayerState
Class
PlayerState – это состояние
участника игры – реального
игрока или бота, который
симулирует реального игрока.
АИ, который не является игроком
и просто существует в игре, не
будет содержать PlayerState.
71. The Unreal Engine Framework
GameInstance
GameMode
Pawn Class
HUD Class
PlayerController
Class
GameState
Class
PlayerState
Class
GameState содержит состояние
игры, которое может включать в
себя такие вещи, как список
подключенных игроков, счёт,
расположение фигур в
шахматной игре, или список
миссий, которые вы завершили в
игре с открытым миром.
72. The Unreal Engine Framework
GameInstance
GameMode
Pawn Class
HUD Class
PlayerController
Class
GameState
Class
PlayerState
Class
HUD - это базовый объект для
отображения элементов на
экране (интерфейса). Каждый
контролируемый человеком
персонаж в игре имеет свой
собственный
инстанс HUD класса, который
отрисовывает для него
индивидуальный Viewport.
73. Character
Object является основным
строительным блоком в Unreal Engine.
Actor – это любой объект, который
можно разместить на уровне.
Pawn – это подкласс (subclass) Actor, который
выполняет роль аватара в игре.
Character – это подкласс (subclass) Pawn,
который предназначен для использования в
качестве игрового персонажа.
Object
Actor
Pawn
76. Программирование интерактива в VR с помощью Blueprints
Блупринты в Unreal Engine – это полноценная система визуального скриптования,
основанная на концепции использования node-based интерфейса для создания
взаимодействия внутри Unreal Editor.
77. Изучаем Блупринты с помощью Content Examples
➔Official Documentation
➔Communication Training - Zak Parrish
➔BP_Compendium.pdf
➔Blueprints Compendium - VOLUME II
➔Network Compendium
➔Blueprints Video Tutorials
79. Ambient Sound Actors in VR
Ambient Sound Actor может
использоваться в качестве,
например, ambient looping sounds
и non-looping sounds. Как
правило, звучание Ambient Sound
Actor соответствует реальному
миру, где чем ближе вы к звуку,
тем он громче.
80. Настройки Звука
Вы можете назначить звуковой
ассет из панели Details, выбрав
ассет из Sound settings drop-down
menu или выделив звуковой ассет
в Content Browser и нажав
соответствующую кнопку.
81. Настройки Затухания (Attenuation)
Затухание (Attenuation) – это
способность звука становиться
тише, когда игрок отходит от
его источника.
Рекомендуется использовать
Sound Attenuation objects, где
это только возможно.
82. Stereo Spatialization
3D spatialization теперь доступен для
стерео аудио-ассетов.
Настройка 3D Stereo spread
параметра определяет
дистанцию в игровых юнитах
между левым и правым
каналами и вдоль вектора,
перпендикулярного к вектору
слухового эмиттера (listener-
emitter vector).
83. Audio Volume
Audio Volumes позволяют
контролировать и применять
различные звуки на вашем уровне, а
также обеспечить путь к созданию
узконаправленных звуковых зон, где
вы можете контролировать то, что
слышно внутри и снаружи Audio
Volume.
85. В Unreal Engine есть Полный набор
инструментов для работы с анимациями
animation retargeting
86. 86
VR с помощью Unreal Engine это круто.
Ознакомьтесь с UE4 VR learning
resouces для получения более
исчерпывающей информации.
luis.cataldi@epicgames.com