SlideShare ist ein Scribd-Unternehmen logo
1 von 53
Downloaden Sie, um offline zu lesen
Luis Cataldi - Director of Education and Learning - Epic Games
Making High Quality VR with Unreal Engine
Launch the project  Double clicking on the
.uproject file
Launch the project  The Outpost 23 Landri
map file will load by
default
Content Consideration For High Quality VR  The Outpost 23 Landri
map file will load by
default
Content Consideration For High Quality VR  The Outpost 23 Landri
map file will load by
default
 This is a large map with
over 4000 static meshes
in the level
 6.444,028 triangles in the
level
Outpost 23 is kind of a Modular Lego Building  Outpost 23 is assembled
from over 4000 modular
static mesh pieces which
are grid snapped together
Explore the Outpost 23 Env Art Map  Explore the Outpost 23
Env Art Map in the root
folder to see all the
modular building blocks
Master Materials & Material Instances  Optimized workflow
feature
 Material Instances allow
you to make “on the fly”
changes to a Material
without the engine having
to do heavy computation
or recalculation of
shaders.
 Material Instances can
also be changed at
Runtime since they do not
require recalculation.
 All Parameterized nodes
from the Master Material
are editable
Great tutorial on the creation of the master materials for Outpost 23 by Tech Artist Scott
www.epicgames.com/unrealtournament/blog/outpost-23-texturing-ddo-painter-quixel-suite
Deferred Decals  Help visually to break up
repeating textures
 Help visually to break up
modular meshes
 Help visually to break up
the overall tone of a map
that uses master
materials and material
instances for
optomizations
Deferred Decals  Use Deferred Decal
Material Domains
 Translucent Blend Modes
 Options for using various
Decal Blend Modes
There is Always a Compromise Between Losses and Gains  You will often lose one thing
to gain another
 Find the ideal balance
between all considerations
 Looking for as many efficient
ways of doing things as
possible
 Build a pipelines to observe
the restrictions
 Offload as much as you can to
pre-calculated elements
 The solutions to balance is
often a mix of the three
Looking at the Lighting of the map  Most localized lights are
set to Static and become
precomputed light maps
and shadow maps
 Some lights are set to
Stationary and have a
dynamic component that
can be used interactively
 There is one Directional
Light that serves at the
Moon Light though there
is no need to have it be
fully Dynamic
 This environment has no
dynamic lights, which is
good for VR performance
Use the console command Stat LightRendering to see current lighting cost.
Lighting Mobility and Precomputed Lighting  The idea of storing or
baking complex lighting
calculations into textures
is called lightmapping. It
works by calculating how
complex lighting should
look on all surfaces by
storing those results into
a texture using a built in
tool called LightMass
 It uses those textures to
map the results on all the
surfaces of your level
 This is known as a
Precomputed Lighting
Path
StaticLight Lights that cannot be changed or moved in any way
at runtime and are calculated only within Lightmaps.
Stationary Light Lights that are intended to stay in one position, but
unlike Static Lights, are able to change in other ways
such as brightness or color.
Movable Light Lights that can be moved and changed in game (e.g.
headlights on a car or flashlights).
High Quality Reflections in VR  Use Reflection probes
instead of screen space
reflections.
 By default, only the
nearest reflection capture
will be applied without
parallax correction unless
the material opts-in to
High Quality Reflections
Forward Shading Renderer for VR  By default, Unreal Engine 4 uses
a Deferred Renderer as it
provides the most versatility
and grants access to more
rendering features.
 However, there are some trade-
offs in using the Deferred
Renderer that might not be
right for all VR
experiences. Forward
Rendering provides a faster
baseline, with faster rendering
passes, which may lead to
better performance on VR
platforms.
 Not only is Forward Rendering
faster, it also provides better
anti-aliasing options than the
Deferred Renderer, which may
lead to better visuals.
The Forward Renderer works by culling lights
and Reflection Captures to a frustum-space
grid. Each pixel in the forward pass then
iterates over the lights and Reflection Captures
affecting it, sharing the material with them.
Dynamic Shadows for Stationary Lights are
computed beforehand and packed into
channels of a screen-space shadow mask,
leveraging the existing limit of 4 overlapping
Stationary Lights.
Forward Shading Renderer for VR  Full support for stationary
lights, including dynamic
shadows from movable
objects which blend together
with precomputed
environment shadows
 Multiple reflection captures
blended together with
parallax correction
 Planar reflections of a partial
scene, composited into
reflection captures
 D-Buffer decals
 Precomputed lighting and
skylights
 Unshadowed movable lights
 Capsule shadows
 Instanced stereo compatible
A Deferred Rendered View of the Map  By default, Unreal Engine 4 uses
a Deferred Renderer as it
provides the most versatility
and grants access to more
rendering features.
 However, there are some trade-
offs in using the Deferred
Renderer that might not be
right for all VR
experiences. Forward
Rendering provides a faster
baseline, with faster rendering
passes, which may lead to
better performance on VR
platforms.
 Not only is Forward Rendering
faster, it also provides better
anti-aliasing options than the
Deferred Renderer, which may
lead to better visuals.
Deferred Renderer Buffer Visualizations
Multi Sample Anti-Aliasing (MSAA) vs Temporal Anti-Aliasing (TAA)  Projects that choose to use
MSAA will want to build content
to mitigate specular aliasing.
The ‘Normal to Roughness’
feature can help reduce
specular aliasing from detailed
normal maps. Automatic LOD
generation for static meshes
can flatten features on distant
meshes and help reduce aliasing
from small triangles.
 In our tests, using MSAA instead
of TAA increases GPU frame
time by about 25%. Actual cost
will depend on your content.
The forward renderer supports both multi sample anti-aliasing (MSAA) and
temporal anti-aliasing (TAA). In most cases TAA is preferable because it
removes both geometric aliasing and specular aliasing. In VR, the constant
sub-pixel movement introduced by head tracking introduces unwanted
blurriness, making MSAA a better choice.
Multi Sample Anti-Aliasing (MSAA) vs Temporal Anti-Aliasing (TAA)  Projects that choose to use
MSAA will want to build content
to mitigate specular aliasing.
The ‘Normal to Roughness’
feature can help reduce
specular aliasing from detailed
normal maps. Automatic LOD
generation for static meshes
can flatten features on distant
meshes and help reduce aliasing
from small triangles.
 In our tests, using MSAA instead
of TAA increases GPU frame
time by about 25%. Actual cost
will depend on your content.
There are Advantages to Each Renderer
The UE4 Deferred Render is a full-featured workhorse, but takes a bit of skill to
fully leverage. Temporal Anti-Aliasing limits how sharp your image can be.
A new UE4 Forward Renderer will be a specialized renderer, with less features,
but faster baseline. Multi Sampling Anti-Aliasing (MSAA) is the sharpest
solution for anti-aliasing.
GPU Profiler (Ctrl+Shift+,)  The GPU Profiler allows you to
quickly identify the GPU cost of
the various passes, sometimes
down to the draw calls.
 The data is based on GPU
timestamps and is usually quite
accurate.
 The GPU Profiler can shows the
light name which makes it
easier for the artist to optimize
the right light source.
Profile Often and Maintain Performance Goals  Check your performance
constantly to ensure that you
are hitting your VR performance
targets.
 LOD's and aggressive culling are
a must to ensure that you are
hitting your VR performance
targets.
 Due to the demanding
requirements of VR many of the
advanced Post Processing
features that are normally use
should be set to `0`.
Launching VR Preview  Testing out your VR headset is
straightforward, simply select
“VR Preview” from the Play
dropdown button. By default
the head tracking will work
without changes to your
existing project or template.
Platform Support As of 4.12, we support the
following platforms out of the box:
 Oculus Rift
 Steam VR (including the HTC
Vive)
 PSVR
 OSVR (preview)
 Samsung Gear VR
 Google Daydream
 Leap Motion
Create once, and deploy anywhere.
Mobile
Desktop / Console
Oculus Rift
HTC Vive / Steam VR
PSVR
OSVR
Samsung Gear VR
Google Daydream
Platform Support All of these platforms go through
UE4’s common VR interfaces, so
you can make your content once,
and deploy it anywhere.
• Unified Camera System
• Motion Controller System
• Optimized rendering paths
• Low-latency optimizations
Oculus
Vive PSVR
OSVR
VR Project Template  We have templates designed for
Virtual Reality
 The template can be selected
from the Blueprint tab as a new
project is created.
 The motion controller template
provides examples for object
interaction and manipulation as
well as point based
teleportation.
Design Considerations for VR
A significan consideration when desinging
for VR is how to minimize/prevent
Motion/Simulation Sickness.
How is it Motion/Simulation Sickness
caused?
en.wikipedia.org/wiki/Virtual_reality_sickness
Sensory conflict theory believes that sickness will occur when a
user's perception of self-motion is based on incongruent sensory
inputs from the visual system,vestibular system, and non-
vestibular proprioceptors, and particularly so when these inputs
are at odds with the user's expectation based on prior experience.
Five typical causes of Motion/Simulation Sickness in VR
Further Reading
 Any, most, some, Non-forward movement
 The awareness of Vection
(When a large part of the visual field is moving and the viewer
feels like she has moved while the world is stationary)
 The feeling of accelerations
 Frequent camera YAW
 Lack of a static reference frame
The Unreal Engine Framework
GameInstance
GameMode
Pawn Class
HUD Class
PlayerController
Class
GameState
Class
PlayerState
Class
GameInstance
GameMode
Pawn Class
HUD Class
PlayerController
Class
GameState
Class
PlayerState
Class
The GameMode is the definition of the
game.
● It also holds important
information about:
• Pawn
• PlayerContoller
• GameState
• PlayerState
• HUD
GameInstance
GameMode
Pawn Class
HUD Class
PlayerController
Class
GameState
Class
PlayerState
Class
The Pawn class is the base class of all
Actors that can be controlled by
players or AI.
● The Pawn represents the
physical location, rotation, etc.
of a player or entity within the
game.
● A Character is a special type of
Pawn that has the ability to walk
around.
GameInstance
GameMode
Pawn Class
HUD Class
PlayerController
Class
GameState
Class
PlayerState
Class
A PlayerController is the interface
between the Pawn and the human
player controlling it.
● The PlayerController decides
what to do and then issues
commands to the Pawn (e.g.
"start crouching", "jump").
● Putting input handling or other
functionality into the
PlayerController is often
necessary.
● The PlayerController persists
throughout the game, while the
Pawn can be transient.
GameInstance
GameMode
Pawn Class
HUD Class
PlayerController
Class
GameState
Class
PlayerState
Class
The GameInstance is a class who’s
state persists switching of levels, game
modes, pawns etc. Where classes like
GameMode or PlayerController are
being reset and data stored in those
classes is removed.
GameInstance
GameMode
Pawn Class
HUD Class
PlayerController
Class
GameState
Class
PlayerState
Class
A PlayerState is the state of a
participant in the game, such as a
human player or a bot that is
simulating a player. Non-player AI that
exists as part of the game would not
have a PlayerState.
GameInstance
GameMode
Pawn Class
HUD Class
PlayerController
Class
GameState
Class
PlayerState
Class
The GameState contains the state of
the game, which could include things
like the list of connected players, the
score, where the pieces are in a chess
game, or the list of what missions you
have completed in an open world
game.
GameInstance
GameMode
Pawn Class
HUD Class
PlayerController
Class
GameState
Class
PlayerState
Class
The HUD is the base object for
displaying elements overlaid on the
screen. Every human-controlled player
in the game has their own instance of
the AHUD class which draws to their
individual Viewport.
Object
Actor
Pawn
Character
Base building blocks in the Unreal Engine
Any object that can be placed into a level
Subclass of Actor and serve as an in-game avatar
Subclass of a Pawn that is intended
to be used as a player character
CharacterMovementComponent
Pawn
Character
Default Pawn
Wheeled
Vehicle
CapsuleComponent
SkeletalMeshComponent
Etc.
VehicleMovementComponent
SkeletalMeshComponent
PhysicsHandle
Etc.
SpectatorPawn
DefaultPawnMovementComponent
StaticMeshComponent
CollisionComponent, Etc.
Controller
1-to-1 Relationship
How can we learn to harness
the power of Unreal Engine?
VR Learning Resources for Unreal Engine Starting Out:
• Oculus Quick Starts
• SteamVR Quick Start
• Google VR Quick Start
• Gear VR Quick Starts
VR Platforms:
• Samsung Gear VR
Development
• Google VR Development
• Oculus Rift Development
• SteamVR Development
VR Topics:
• VR Cheat Sheets
• VR Best Practices
• Motion Controller Component
Setup
• VR Camera Refactor
Video:
• 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
Presentations:
• UE4 VR - Niklas Smedberg
• Lessons from Integrating the Oculus Rift into UE4
• Going Off The Rails: The Making of Bullet Train
Links:
• Sam Deiter - 10 VR tips for Unreal Engine
• Tom Looman’s - Getting Started with VR in Unreal Engine 4
VR Learning Resources for Unreal Engine
VR Editor Starting Out:
• Activating VR Mode
VR Editor Guides:
• Setting Up VR Editor from GitHub
• Navigating the World in VR Mode
• Working with Actors in VR Mode
VR Editor Reference:
• VR Editor Controls
• Quick Select Menu
• Radial Menu
• Transforming Actors in VR
• Editor Windows in VR Mode
The Unreal Engine Release Notes
Education Community VR for UE4
Mitchell McCaffrey’s - Mitch VR Labs
• Mitch's VR Lab - an Introduction
• Mitch's VR Lab - Look Based interaction
• Mitch's VR Lab - Simple Teleportation Mechanic
• Mitch's VR Lab - Introduction to SteamVR
• Mitch's VR Lab - Simple Head IK
• Mitch’s UE4 Forum Post
Education Community VR for UE4
Education Community VR for UE4
Free Unreal Engine Courses:
• Twin Stick Shooter
• 3rd Person Power-Up Game with C++
• 2D Sidescroller with Blueprints
• Endless Runner with Blueprints
• Unreal Match 3 Game
Free UE4 Community Youtube.com Learning Channels:
• 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
Education Community VR for UE4
Free UE4 Community Blueprints:
• Communication Training - Zak Parrish
• Blueprints Compendium - VOLUME II
• BP_Compendium.pdf
• Network Compendium
Free UE4 Community VR Learning Channels:
• Unreal Engine VR Curriculum
Free UE4 Community ArchViz Learning Channels:
• Architectural Visualization Tutorials
Paid e-learning Courses:
• Unreal Engine 4: The Complete Beginner's Course
• Learn to Code in C++ by Developing Your First
Game
• Complete Introduction to Unreal 4
• An Introduction to Creating Realistic Materials in
UE4
• Master Blueprints in Unreal Engine 4 - Endless
Runner
• Create a Helicopter Game Control System in
Unreal Engine 4
• Unreal Essential Training - Lynda.com
• Unreal: Learn Lighting - Lynda.com
• 3dmotive - Unreal Engine courses
• Pluralsight - Unreal Engine courses
Thanks for leanring with us.
You can download the project file that was used for
the VRLA 17 worshop at the THIS link.
Luis Cataldi - Director of Education and Learning - Epic Games

Weitere ähnliche Inhalte

Was ist angesagt?

What's new in Shader Graph: ready for production – Unite Copenhagen 2019
What's new in Shader Graph: ready for production – Unite Copenhagen 2019What's new in Shader Graph: ready for production – Unite Copenhagen 2019
What's new in Shader Graph: ready for production – Unite Copenhagen 2019Unity Technologies
 
High Dynamic Range color grading and display in Frostbite
High Dynamic Range color grading and display in FrostbiteHigh Dynamic Range color grading and display in Frostbite
High Dynamic Range color grading and display in FrostbiteElectronic Arts / DICE
 
The Tipping Point: How Virtual Experiences Are Transforming Global Industries
The Tipping Point: How Virtual Experiences Are Transforming Global IndustriesThe Tipping Point: How Virtual Experiences Are Transforming Global Industries
The Tipping Point: How Virtual Experiences Are Transforming Global IndustriesUnity Technologies
 
Making High Quality Interactive VR with Unreal Engine Luis Cataldi
Making High Quality Interactive VR with Unreal Engine Luis CataldiMaking High Quality Interactive VR with Unreal Engine Luis Cataldi
Making High Quality Interactive VR with Unreal Engine Luis CataldiUnreal Engine
 
Abalanche - Unity Shader Graph #1: Shader & PBR Materials
Abalanche - Unity Shader Graph #1: Shader & PBR MaterialsAbalanche - Unity Shader Graph #1: Shader & PBR Materials
Abalanche - Unity Shader Graph #1: Shader & PBR MaterialsPhuong Hoang Vu
 
CatchUp! 謎だらけのゲーム開発 vol.02 カラーマネージメント
CatchUp! 謎だらけのゲーム開発 vol.02 カラーマネージメントCatchUp! 謎だらけのゲーム開発 vol.02 カラーマネージメント
CatchUp! 謎だらけのゲーム開発 vol.02 カラーマネージメントYoshiomi Kure
 
Developing AR and VR Experiences with Unity
Developing AR and VR Experiences with UnityDeveloping AR and VR Experiences with Unity
Developing AR and VR Experiences with UnityMark Billinghurst
 
Developing and optimizing a procedural game: The Elder Scrolls Blades- Unite ...
Developing and optimizing a procedural game: The Elder Scrolls Blades- Unite ...Developing and optimizing a procedural game: The Elder Scrolls Blades- Unite ...
Developing and optimizing a procedural game: The Elder Scrolls Blades- Unite ...Unity Technologies
 
GDC Europe 2014: Unreal Engine 4 for Programmers - Lessons Learned & Things t...
GDC Europe 2014: Unreal Engine 4 for Programmers - Lessons Learned & Things t...GDC Europe 2014: Unreal Engine 4 for Programmers - Lessons Learned & Things t...
GDC Europe 2014: Unreal Engine 4 for Programmers - Lessons Learned & Things t...Gerke Max Preussner
 
Immersal を活用した AR クラウドなシステム開発とハンズオン!
Immersal を活用した AR クラウドなシステム開発とハンズオン!Immersal を活用した AR クラウドなシステム開発とハンズオン!
Immersal を活用した AR クラウドなシステム開発とハンズオン!NishoMatsusita
 
HDR Theory and practicce (JP)
HDR Theory and practicce (JP)HDR Theory and practicce (JP)
HDR Theory and practicce (JP)Hajime Uchimura
 
Unreal Engine.pptx
Unreal Engine.pptxUnreal Engine.pptx
Unreal Engine.pptxSujitShejul1
 
Filmic Tonemapping for Real-time Rendering - Siggraph 2010 Color Course
Filmic Tonemapping for Real-time Rendering - Siggraph 2010 Color CourseFilmic Tonemapping for Real-time Rendering - Siggraph 2010 Color Course
Filmic Tonemapping for Real-time Rendering - Siggraph 2010 Color Coursehpduiker
 
Calibrating Lighting and Materials in Far Cry 3
Calibrating Lighting and Materials in Far Cry 3Calibrating Lighting and Materials in Far Cry 3
Calibrating Lighting and Materials in Far Cry 3stevemcauley
 
TouchDesigner for Broadcast
TouchDesigner for BroadcastTouchDesigner for Broadcast
TouchDesigner for Broadcast_kiryo
 
Rendering AAA-Quality Characters of Project A1
Rendering AAA-Quality Characters of Project A1Rendering AAA-Quality Characters of Project A1
Rendering AAA-Quality Characters of Project A1Ki Hyunwoo
 

Was ist angesagt? (20)

What's new in Shader Graph: ready for production – Unite Copenhagen 2019
What's new in Shader Graph: ready for production – Unite Copenhagen 2019What's new in Shader Graph: ready for production – Unite Copenhagen 2019
What's new in Shader Graph: ready for production – Unite Copenhagen 2019
 
High Dynamic Range color grading and display in Frostbite
High Dynamic Range color grading and display in FrostbiteHigh Dynamic Range color grading and display in Frostbite
High Dynamic Range color grading and display in Frostbite
 
The Tipping Point: How Virtual Experiences Are Transforming Global Industries
The Tipping Point: How Virtual Experiences Are Transforming Global IndustriesThe Tipping Point: How Virtual Experiences Are Transforming Global Industries
The Tipping Point: How Virtual Experiences Are Transforming Global Industries
 
Making High Quality Interactive VR with Unreal Engine Luis Cataldi
Making High Quality Interactive VR with Unreal Engine Luis CataldiMaking High Quality Interactive VR with Unreal Engine Luis Cataldi
Making High Quality Interactive VR with Unreal Engine Luis Cataldi
 
Press Button, Drink Coffee : An Overview of UE4 build pipeline and maintenance
Press Button, Drink Coffee : An Overview of UE4 build pipeline and maintenancePress Button, Drink Coffee : An Overview of UE4 build pipeline and maintenance
Press Button, Drink Coffee : An Overview of UE4 build pipeline and maintenance
 
Abalanche - Unity Shader Graph #1: Shader & PBR Materials
Abalanche - Unity Shader Graph #1: Shader & PBR MaterialsAbalanche - Unity Shader Graph #1: Shader & PBR Materials
Abalanche - Unity Shader Graph #1: Shader & PBR Materials
 
CatchUp! 謎だらけのゲーム開発 vol.02 カラーマネージメント
CatchUp! 謎だらけのゲーム開発 vol.02 カラーマネージメントCatchUp! 謎だらけのゲーム開発 vol.02 カラーマネージメント
CatchUp! 謎だらけのゲーム開発 vol.02 カラーマネージメント
 
Developing AR and VR Experiences with Unity
Developing AR and VR Experiences with UnityDeveloping AR and VR Experiences with Unity
Developing AR and VR Experiences with Unity
 
Light prepass
Light prepassLight prepass
Light prepass
 
Developing and optimizing a procedural game: The Elder Scrolls Blades- Unite ...
Developing and optimizing a procedural game: The Elder Scrolls Blades- Unite ...Developing and optimizing a procedural game: The Elder Scrolls Blades- Unite ...
Developing and optimizing a procedural game: The Elder Scrolls Blades- Unite ...
 
GDC Europe 2014: Unreal Engine 4 for Programmers - Lessons Learned & Things t...
GDC Europe 2014: Unreal Engine 4 for Programmers - Lessons Learned & Things t...GDC Europe 2014: Unreal Engine 4 for Programmers - Lessons Learned & Things t...
GDC Europe 2014: Unreal Engine 4 for Programmers - Lessons Learned & Things t...
 
建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)
建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)
建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)
 
Immersal を活用した AR クラウドなシステム開発とハンズオン!
Immersal を活用した AR クラウドなシステム開発とハンズオン!Immersal を活用した AR クラウドなシステム開発とハンズオン!
Immersal を活用した AR クラウドなシステム開発とハンズオン!
 
HDR Theory and practicce (JP)
HDR Theory and practicce (JP)HDR Theory and practicce (JP)
HDR Theory and practicce (JP)
 
Unreal Engine.pptx
Unreal Engine.pptxUnreal Engine.pptx
Unreal Engine.pptx
 
Filmic Tonemapping for Real-time Rendering - Siggraph 2010 Color Course
Filmic Tonemapping for Real-time Rendering - Siggraph 2010 Color CourseFilmic Tonemapping for Real-time Rendering - Siggraph 2010 Color Course
Filmic Tonemapping for Real-time Rendering - Siggraph 2010 Color Course
 
Augmented Reality
Augmented RealityAugmented Reality
Augmented Reality
 
Calibrating Lighting and Materials in Far Cry 3
Calibrating Lighting and Materials in Far Cry 3Calibrating Lighting and Materials in Far Cry 3
Calibrating Lighting and Materials in Far Cry 3
 
TouchDesigner for Broadcast
TouchDesigner for BroadcastTouchDesigner for Broadcast
TouchDesigner for Broadcast
 
Rendering AAA-Quality Characters of Project A1
Rendering AAA-Quality Characters of Project A1Rendering AAA-Quality Characters of Project A1
Rendering AAA-Quality Characters of Project A1
 

Ähnlich wie Making High Quality Interactive VR with Unreal Engine Luis Cataldi

Making VR with Unreal Engine Luis Cataldi
Making VR with Unreal Engine  Luis CataldiMaking VR with Unreal Engine  Luis Cataldi
Making VR with Unreal Engine Luis CataldiUnreal Engine
 
Deferred rendering in_leadwerks_engine[1]
Deferred rendering in_leadwerks_engine[1]Deferred rendering in_leadwerks_engine[1]
Deferred rendering in_leadwerks_engine[1]ozlael ozlael
 
Visibility Optimization for Games
Visibility Optimization for GamesVisibility Optimization for Games
Visibility Optimization for GamesUmbra
 
Visibility Optimization for Games
Visibility Optimization for GamesVisibility Optimization for Games
Visibility Optimization for GamesSampo Lappalainen
 
XR graphics in Unity: delivering the best AR/VR experiences – Unite Copenhage...
XR graphics in Unity: delivering the best AR/VR experiences – Unite Copenhage...XR graphics in Unity: delivering the best AR/VR experiences – Unite Copenhage...
XR graphics in Unity: delivering the best AR/VR experiences – Unite Copenhage...Unity Technologies
 
Luis cataldi-ue4-vr-best-practices2
Luis cataldi-ue4-vr-best-practices2Luis cataldi-ue4-vr-best-practices2
Luis cataldi-ue4-vr-best-practices2Luis Cataldi
 
Gpu presentation
Gpu presentationGpu presentation
Gpu presentationspartasoft
 
Sig13 ce future_gfx
Sig13 ce future_gfxSig13 ce future_gfx
Sig13 ce future_gfxCass Everitt
 
FACE COUNTING USING OPEN CV & PYTHON FOR ANALYZING UNUSUAL EVENTS IN CROWDS
FACE COUNTING USING OPEN CV & PYTHON FOR ANALYZING UNUSUAL EVENTS IN CROWDSFACE COUNTING USING OPEN CV & PYTHON FOR ANALYZING UNUSUAL EVENTS IN CROWDS
FACE COUNTING USING OPEN CV & PYTHON FOR ANALYZING UNUSUAL EVENTS IN CROWDSIRJET Journal
 
Point cloud mesh-investigation_report-lihang
Point cloud mesh-investigation_report-lihangPoint cloud mesh-investigation_report-lihang
Point cloud mesh-investigation_report-lihangLihang Li
 
The Rendering Pipeline - Challenges & Next Steps
The Rendering Pipeline - Challenges & Next StepsThe Rendering Pipeline - Challenges & Next Steps
The Rendering Pipeline - Challenges & Next StepsJohan Andersson
 
Migrating from OpenGL to Vulkan
Migrating from OpenGL to VulkanMigrating from OpenGL to Vulkan
Migrating from OpenGL to VulkanMark Kilgard
 
Technologies Used In Graphics Rendering
Technologies Used In Graphics RenderingTechnologies Used In Graphics Rendering
Technologies Used In Graphics RenderingBhupinder Singh
 
"High-resolution 3D Reconstruction on a Mobile Processor," a Presentation fro...
"High-resolution 3D Reconstruction on a Mobile Processor," a Presentation fro..."High-resolution 3D Reconstruction on a Mobile Processor," a Presentation fro...
"High-resolution 3D Reconstruction on a Mobile Processor," a Presentation fro...Edge AI and Vision Alliance
 

Ähnlich wie Making High Quality Interactive VR with Unreal Engine Luis Cataldi (20)

Making VR with Unreal Engine Luis Cataldi
Making VR with Unreal Engine  Luis CataldiMaking VR with Unreal Engine  Luis Cataldi
Making VR with Unreal Engine Luis Cataldi
 
LightWave™ 3D 11 Add-a-Seat
LightWave™ 3D 11 Add-a-SeatLightWave™ 3D 11 Add-a-Seat
LightWave™ 3D 11 Add-a-Seat
 
Deferred rendering in_leadwerks_engine[1]
Deferred rendering in_leadwerks_engine[1]Deferred rendering in_leadwerks_engine[1]
Deferred rendering in_leadwerks_engine[1]
 
Visibility Optimization for Games
Visibility Optimization for GamesVisibility Optimization for Games
Visibility Optimization for Games
 
Visibility Optimization for Games
Visibility Optimization for GamesVisibility Optimization for Games
Visibility Optimization for Games
 
XR graphics in Unity: delivering the best AR/VR experiences – Unite Copenhage...
XR graphics in Unity: delivering the best AR/VR experiences – Unite Copenhage...XR graphics in Unity: delivering the best AR/VR experiences – Unite Copenhage...
XR graphics in Unity: delivering the best AR/VR experiences – Unite Copenhage...
 
Luis cataldi-ue4-vr-best-practices2
Luis cataldi-ue4-vr-best-practices2Luis cataldi-ue4-vr-best-practices2
Luis cataldi-ue4-vr-best-practices2
 
Alexey Savchenko, Unreal Engine
Alexey Savchenko, Unreal EngineAlexey Savchenko, Unreal Engine
Alexey Savchenko, Unreal Engine
 
Gpu presentation
Gpu presentationGpu presentation
Gpu presentation
 
Sig13 ce future_gfx
Sig13 ce future_gfxSig13 ce future_gfx
Sig13 ce future_gfx
 
Azlina5 imagery
Azlina5  imageryAzlina5  imagery
Azlina5 imagery
 
FACE COUNTING USING OPEN CV & PYTHON FOR ANALYZING UNUSUAL EVENTS IN CROWDS
FACE COUNTING USING OPEN CV & PYTHON FOR ANALYZING UNUSUAL EVENTS IN CROWDSFACE COUNTING USING OPEN CV & PYTHON FOR ANALYZING UNUSUAL EVENTS IN CROWDS
FACE COUNTING USING OPEN CV & PYTHON FOR ANALYZING UNUSUAL EVENTS IN CROWDS
 
1604.08848v1
1604.08848v11604.08848v1
1604.08848v1
 
Point cloud mesh-investigation_report-lihang
Point cloud mesh-investigation_report-lihangPoint cloud mesh-investigation_report-lihang
Point cloud mesh-investigation_report-lihang
 
The Rendering Pipeline - Challenges & Next Steps
The Rendering Pipeline - Challenges & Next StepsThe Rendering Pipeline - Challenges & Next Steps
The Rendering Pipeline - Challenges & Next Steps
 
Praseed Pai
Praseed PaiPraseed Pai
Praseed Pai
 
Migrating from OpenGL to Vulkan
Migrating from OpenGL to VulkanMigrating from OpenGL to Vulkan
Migrating from OpenGL to Vulkan
 
Technologies Used In Graphics Rendering
Technologies Used In Graphics RenderingTechnologies Used In Graphics Rendering
Technologies Used In Graphics Rendering
 
OpenGL for 2015
OpenGL for 2015OpenGL for 2015
OpenGL for 2015
 
"High-resolution 3D Reconstruction on a Mobile Processor," a Presentation fro...
"High-resolution 3D Reconstruction on a Mobile Processor," a Presentation fro..."High-resolution 3D Reconstruction on a Mobile Processor," a Presentation fro...
"High-resolution 3D Reconstruction on a Mobile Processor," a Presentation fro...
 

Mehr von Luis Cataldi

Migrating to real time - Learning Unreal Engine 4
Migrating to real time - Learning Unreal Engine 4Migrating to real time - Learning Unreal Engine 4
Migrating to real time - Learning Unreal Engine 4Luis Cataldi
 
UnrealEngine_4_hackathon
UnrealEngine_4_hackathonUnrealEngine_4_hackathon
UnrealEngine_4_hackathonLuis Cataldi
 
Luis Catald IGDA Sept 2015
Luis Catald IGDA Sept 2015Luis Catald IGDA Sept 2015
Luis Catald IGDA Sept 2015Luis Cataldi
 
Ue4 siggraph-nick-whiting
Ue4 siggraph-nick-whitingUe4 siggraph-nick-whiting
Ue4 siggraph-nick-whitingLuis Cataldi
 
Kim libreri-siggraph 2015
Kim libreri-siggraph 2015Kim libreri-siggraph 2015
Kim libreri-siggraph 2015Luis Cataldi
 
Luis cataldi-siggraph 2015
Luis cataldi-siggraph 2015Luis cataldi-siggraph 2015
Luis cataldi-siggraph 2015Luis Cataldi
 
Luis cataldi unreal engine for educators
Luis cataldi   unreal engine for educatorsLuis cataldi   unreal engine for educators
Luis cataldi unreal engine for educatorsLuis Cataldi
 

Mehr von Luis Cataldi (7)

Migrating to real time - Learning Unreal Engine 4
Migrating to real time - Learning Unreal Engine 4Migrating to real time - Learning Unreal Engine 4
Migrating to real time - Learning Unreal Engine 4
 
UnrealEngine_4_hackathon
UnrealEngine_4_hackathonUnrealEngine_4_hackathon
UnrealEngine_4_hackathon
 
Luis Catald IGDA Sept 2015
Luis Catald IGDA Sept 2015Luis Catald IGDA Sept 2015
Luis Catald IGDA Sept 2015
 
Ue4 siggraph-nick-whiting
Ue4 siggraph-nick-whitingUe4 siggraph-nick-whiting
Ue4 siggraph-nick-whiting
 
Kim libreri-siggraph 2015
Kim libreri-siggraph 2015Kim libreri-siggraph 2015
Kim libreri-siggraph 2015
 
Luis cataldi-siggraph 2015
Luis cataldi-siggraph 2015Luis cataldi-siggraph 2015
Luis cataldi-siggraph 2015
 
Luis cataldi unreal engine for educators
Luis cataldi   unreal engine for educatorsLuis cataldi   unreal engine for educators
Luis cataldi unreal engine for educators
 

Kürzlich hochgeladen

HED Office Sohayok Exam Question Solution 2023.pdf
HED Office Sohayok Exam Question Solution 2023.pdfHED Office Sohayok Exam Question Solution 2023.pdf
HED Office Sohayok Exam Question Solution 2023.pdfMohonDas
 
Clinical Pharmacy Introduction to Clinical Pharmacy, Concept of clinical pptx
Clinical Pharmacy  Introduction to Clinical Pharmacy, Concept of clinical pptxClinical Pharmacy  Introduction to Clinical Pharmacy, Concept of clinical pptx
Clinical Pharmacy Introduction to Clinical Pharmacy, Concept of clinical pptxraviapr7
 
Diploma in Nursing Admission Test Question Solution 2023.pdf
Diploma in Nursing Admission Test Question Solution 2023.pdfDiploma in Nursing Admission Test Question Solution 2023.pdf
Diploma in Nursing Admission Test Question Solution 2023.pdfMohonDas
 
Education and training program in the hospital APR.pptx
Education and training program in the hospital APR.pptxEducation and training program in the hospital APR.pptx
Education and training program in the hospital APR.pptxraviapr7
 
CAULIFLOWER BREEDING 1 Parmar pptx
CAULIFLOWER BREEDING 1 Parmar pptxCAULIFLOWER BREEDING 1 Parmar pptx
CAULIFLOWER BREEDING 1 Parmar pptxSaurabhParmar42
 
3.21.24 The Origins of Black Power.pptx
3.21.24  The Origins of Black Power.pptx3.21.24  The Origins of Black Power.pptx
3.21.24 The Origins of Black Power.pptxmary850239
 
How to Solve Singleton Error in the Odoo 17
How to Solve Singleton Error in the  Odoo 17How to Solve Singleton Error in the  Odoo 17
How to Solve Singleton Error in the Odoo 17Celine George
 
CHUYÊN ĐỀ DẠY THÊM TIẾNG ANH LỚP 11 - GLOBAL SUCCESS - NĂM HỌC 2023-2024 - HK...
CHUYÊN ĐỀ DẠY THÊM TIẾNG ANH LỚP 11 - GLOBAL SUCCESS - NĂM HỌC 2023-2024 - HK...CHUYÊN ĐỀ DẠY THÊM TIẾNG ANH LỚP 11 - GLOBAL SUCCESS - NĂM HỌC 2023-2024 - HK...
CHUYÊN ĐỀ DẠY THÊM TIẾNG ANH LỚP 11 - GLOBAL SUCCESS - NĂM HỌC 2023-2024 - HK...Nguyen Thanh Tu Collection
 
Drug Information Services- DIC and Sources.
Drug Information Services- DIC and Sources.Drug Information Services- DIC and Sources.
Drug Information Services- DIC and Sources.raviapr7
 
General views of Histopathology and step
General views of Histopathology and stepGeneral views of Histopathology and step
General views of Histopathology and stepobaje godwin sunday
 
The Singapore Teaching Practice document
The Singapore Teaching Practice documentThe Singapore Teaching Practice document
The Singapore Teaching Practice documentXsasf Sfdfasd
 
In - Vivo and In - Vitro Correlation.pptx
In - Vivo and In - Vitro Correlation.pptxIn - Vivo and In - Vitro Correlation.pptx
In - Vivo and In - Vitro Correlation.pptxAditiChauhan701637
 
Practical Research 1 Lesson 9 Scope and delimitation.pptx
Practical Research 1 Lesson 9 Scope and delimitation.pptxPractical Research 1 Lesson 9 Scope and delimitation.pptx
Practical Research 1 Lesson 9 Scope and delimitation.pptxKatherine Villaluna
 
CapTechU Doctoral Presentation -March 2024 slides.pptx
CapTechU Doctoral Presentation -March 2024 slides.pptxCapTechU Doctoral Presentation -March 2024 slides.pptx
CapTechU Doctoral Presentation -March 2024 slides.pptxCapitolTechU
 
Patient Counselling. Definition of patient counseling; steps involved in pati...
Patient Counselling. Definition of patient counseling; steps involved in pati...Patient Counselling. Definition of patient counseling; steps involved in pati...
Patient Counselling. Definition of patient counseling; steps involved in pati...raviapr7
 
Human-AI Co-Creation of Worked Examples for Programming Classes
Human-AI Co-Creation of Worked Examples for Programming ClassesHuman-AI Co-Creation of Worked Examples for Programming Classes
Human-AI Co-Creation of Worked Examples for Programming ClassesMohammad Hassany
 
Presentation on the Basics of Writing. Writing a Paragraph
Presentation on the Basics of Writing. Writing a ParagraphPresentation on the Basics of Writing. Writing a Paragraph
Presentation on the Basics of Writing. Writing a ParagraphNetziValdelomar1
 
2024.03.23 What do successful readers do - Sandy Millin for PARK.pptx
2024.03.23 What do successful readers do - Sandy Millin for PARK.pptx2024.03.23 What do successful readers do - Sandy Millin for PARK.pptx
2024.03.23 What do successful readers do - Sandy Millin for PARK.pptxSandy Millin
 
DUST OF SNOW_BY ROBERT FROST_EDITED BY_ TANMOY MISHRA
DUST OF SNOW_BY ROBERT FROST_EDITED BY_ TANMOY MISHRADUST OF SNOW_BY ROBERT FROST_EDITED BY_ TANMOY MISHRA
DUST OF SNOW_BY ROBERT FROST_EDITED BY_ TANMOY MISHRATanmoy Mishra
 

Kürzlich hochgeladen (20)

HED Office Sohayok Exam Question Solution 2023.pdf
HED Office Sohayok Exam Question Solution 2023.pdfHED Office Sohayok Exam Question Solution 2023.pdf
HED Office Sohayok Exam Question Solution 2023.pdf
 
Clinical Pharmacy Introduction to Clinical Pharmacy, Concept of clinical pptx
Clinical Pharmacy  Introduction to Clinical Pharmacy, Concept of clinical pptxClinical Pharmacy  Introduction to Clinical Pharmacy, Concept of clinical pptx
Clinical Pharmacy Introduction to Clinical Pharmacy, Concept of clinical pptx
 
Diploma in Nursing Admission Test Question Solution 2023.pdf
Diploma in Nursing Admission Test Question Solution 2023.pdfDiploma in Nursing Admission Test Question Solution 2023.pdf
Diploma in Nursing Admission Test Question Solution 2023.pdf
 
Education and training program in the hospital APR.pptx
Education and training program in the hospital APR.pptxEducation and training program in the hospital APR.pptx
Education and training program in the hospital APR.pptx
 
CAULIFLOWER BREEDING 1 Parmar pptx
CAULIFLOWER BREEDING 1 Parmar pptxCAULIFLOWER BREEDING 1 Parmar pptx
CAULIFLOWER BREEDING 1 Parmar pptx
 
3.21.24 The Origins of Black Power.pptx
3.21.24  The Origins of Black Power.pptx3.21.24  The Origins of Black Power.pptx
3.21.24 The Origins of Black Power.pptx
 
Prelims of Kant get Marx 2.0: a general politics quiz
Prelims of Kant get Marx 2.0: a general politics quizPrelims of Kant get Marx 2.0: a general politics quiz
Prelims of Kant get Marx 2.0: a general politics quiz
 
How to Solve Singleton Error in the Odoo 17
How to Solve Singleton Error in the  Odoo 17How to Solve Singleton Error in the  Odoo 17
How to Solve Singleton Error in the Odoo 17
 
CHUYÊN ĐỀ DẠY THÊM TIẾNG ANH LỚP 11 - GLOBAL SUCCESS - NĂM HỌC 2023-2024 - HK...
CHUYÊN ĐỀ DẠY THÊM TIẾNG ANH LỚP 11 - GLOBAL SUCCESS - NĂM HỌC 2023-2024 - HK...CHUYÊN ĐỀ DẠY THÊM TIẾNG ANH LỚP 11 - GLOBAL SUCCESS - NĂM HỌC 2023-2024 - HK...
CHUYÊN ĐỀ DẠY THÊM TIẾNG ANH LỚP 11 - GLOBAL SUCCESS - NĂM HỌC 2023-2024 - HK...
 
Drug Information Services- DIC and Sources.
Drug Information Services- DIC and Sources.Drug Information Services- DIC and Sources.
Drug Information Services- DIC and Sources.
 
General views of Histopathology and step
General views of Histopathology and stepGeneral views of Histopathology and step
General views of Histopathology and step
 
The Singapore Teaching Practice document
The Singapore Teaching Practice documentThe Singapore Teaching Practice document
The Singapore Teaching Practice document
 
In - Vivo and In - Vitro Correlation.pptx
In - Vivo and In - Vitro Correlation.pptxIn - Vivo and In - Vitro Correlation.pptx
In - Vivo and In - Vitro Correlation.pptx
 
Practical Research 1 Lesson 9 Scope and delimitation.pptx
Practical Research 1 Lesson 9 Scope and delimitation.pptxPractical Research 1 Lesson 9 Scope and delimitation.pptx
Practical Research 1 Lesson 9 Scope and delimitation.pptx
 
CapTechU Doctoral Presentation -March 2024 slides.pptx
CapTechU Doctoral Presentation -March 2024 slides.pptxCapTechU Doctoral Presentation -March 2024 slides.pptx
CapTechU Doctoral Presentation -March 2024 slides.pptx
 
Patient Counselling. Definition of patient counseling; steps involved in pati...
Patient Counselling. Definition of patient counseling; steps involved in pati...Patient Counselling. Definition of patient counseling; steps involved in pati...
Patient Counselling. Definition of patient counseling; steps involved in pati...
 
Human-AI Co-Creation of Worked Examples for Programming Classes
Human-AI Co-Creation of Worked Examples for Programming ClassesHuman-AI Co-Creation of Worked Examples for Programming Classes
Human-AI Co-Creation of Worked Examples for Programming Classes
 
Presentation on the Basics of Writing. Writing a Paragraph
Presentation on the Basics of Writing. Writing a ParagraphPresentation on the Basics of Writing. Writing a Paragraph
Presentation on the Basics of Writing. Writing a Paragraph
 
2024.03.23 What do successful readers do - Sandy Millin for PARK.pptx
2024.03.23 What do successful readers do - Sandy Millin for PARK.pptx2024.03.23 What do successful readers do - Sandy Millin for PARK.pptx
2024.03.23 What do successful readers do - Sandy Millin for PARK.pptx
 
DUST OF SNOW_BY ROBERT FROST_EDITED BY_ TANMOY MISHRA
DUST OF SNOW_BY ROBERT FROST_EDITED BY_ TANMOY MISHRADUST OF SNOW_BY ROBERT FROST_EDITED BY_ TANMOY MISHRA
DUST OF SNOW_BY ROBERT FROST_EDITED BY_ TANMOY MISHRA
 

Making High Quality Interactive VR with Unreal Engine Luis Cataldi

  • 1. Luis Cataldi - Director of Education and Learning - Epic Games Making High Quality VR with Unreal Engine
  • 2. Launch the project  Double clicking on the .uproject file
  • 3. Launch the project  The Outpost 23 Landri map file will load by default
  • 4. Content Consideration For High Quality VR  The Outpost 23 Landri map file will load by default
  • 5. Content Consideration For High Quality VR  The Outpost 23 Landri map file will load by default  This is a large map with over 4000 static meshes in the level  6.444,028 triangles in the level
  • 6. Outpost 23 is kind of a Modular Lego Building  Outpost 23 is assembled from over 4000 modular static mesh pieces which are grid snapped together
  • 7. Explore the Outpost 23 Env Art Map  Explore the Outpost 23 Env Art Map in the root folder to see all the modular building blocks
  • 8. Master Materials & Material Instances  Optimized workflow feature  Material Instances allow you to make “on the fly” changes to a Material without the engine having to do heavy computation or recalculation of shaders.  Material Instances can also be changed at Runtime since they do not require recalculation.  All Parameterized nodes from the Master Material are editable Great tutorial on the creation of the master materials for Outpost 23 by Tech Artist Scott www.epicgames.com/unrealtournament/blog/outpost-23-texturing-ddo-painter-quixel-suite
  • 9. Deferred Decals  Help visually to break up repeating textures  Help visually to break up modular meshes  Help visually to break up the overall tone of a map that uses master materials and material instances for optomizations
  • 10. Deferred Decals  Use Deferred Decal Material Domains  Translucent Blend Modes  Options for using various Decal Blend Modes
  • 11. There is Always a Compromise Between Losses and Gains  You will often lose one thing to gain another  Find the ideal balance between all considerations  Looking for as many efficient ways of doing things as possible  Build a pipelines to observe the restrictions  Offload as much as you can to pre-calculated elements  The solutions to balance is often a mix of the three
  • 12. Looking at the Lighting of the map  Most localized lights are set to Static and become precomputed light maps and shadow maps  Some lights are set to Stationary and have a dynamic component that can be used interactively  There is one Directional Light that serves at the Moon Light though there is no need to have it be fully Dynamic  This environment has no dynamic lights, which is good for VR performance Use the console command Stat LightRendering to see current lighting cost.
  • 13. Lighting Mobility and Precomputed Lighting  The idea of storing or baking complex lighting calculations into textures is called lightmapping. It works by calculating how complex lighting should look on all surfaces by storing those results into a texture using a built in tool called LightMass  It uses those textures to map the results on all the surfaces of your level  This is known as a Precomputed Lighting Path StaticLight Lights that cannot be changed or moved in any way at runtime and are calculated only within Lightmaps. Stationary Light Lights that are intended to stay in one position, but unlike Static Lights, are able to change in other ways such as brightness or color. Movable Light Lights that can be moved and changed in game (e.g. headlights on a car or flashlights).
  • 14. High Quality Reflections in VR  Use Reflection probes instead of screen space reflections.  By default, only the nearest reflection capture will be applied without parallax correction unless the material opts-in to High Quality Reflections
  • 15. Forward Shading Renderer for VR  By default, Unreal Engine 4 uses a Deferred Renderer as it provides the most versatility and grants access to more rendering features.  However, there are some trade- offs in using the Deferred Renderer that might not be right for all VR experiences. Forward Rendering provides a faster baseline, with faster rendering passes, which may lead to better performance on VR platforms.  Not only is Forward Rendering faster, it also provides better anti-aliasing options than the Deferred Renderer, which may lead to better visuals. The Forward Renderer works by culling lights and Reflection Captures to a frustum-space grid. Each pixel in the forward pass then iterates over the lights and Reflection Captures affecting it, sharing the material with them. Dynamic Shadows for Stationary Lights are computed beforehand and packed into channels of a screen-space shadow mask, leveraging the existing limit of 4 overlapping Stationary Lights.
  • 16. Forward Shading Renderer for VR  Full support for stationary lights, including dynamic shadows from movable objects which blend together with precomputed environment shadows  Multiple reflection captures blended together with parallax correction  Planar reflections of a partial scene, composited into reflection captures  D-Buffer decals  Precomputed lighting and skylights  Unshadowed movable lights  Capsule shadows  Instanced stereo compatible
  • 17. A Deferred Rendered View of the Map  By default, Unreal Engine 4 uses a Deferred Renderer as it provides the most versatility and grants access to more rendering features.  However, there are some trade- offs in using the Deferred Renderer that might not be right for all VR experiences. Forward Rendering provides a faster baseline, with faster rendering passes, which may lead to better performance on VR platforms.  Not only is Forward Rendering faster, it also provides better anti-aliasing options than the Deferred Renderer, which may lead to better visuals. Deferred Renderer Buffer Visualizations
  • 18. Multi Sample Anti-Aliasing (MSAA) vs Temporal Anti-Aliasing (TAA)  Projects that choose to use MSAA will want to build content to mitigate specular aliasing. The ‘Normal to Roughness’ feature can help reduce specular aliasing from detailed normal maps. Automatic LOD generation for static meshes can flatten features on distant meshes and help reduce aliasing from small triangles.  In our tests, using MSAA instead of TAA increases GPU frame time by about 25%. Actual cost will depend on your content. The forward renderer supports both multi sample anti-aliasing (MSAA) and temporal anti-aliasing (TAA). In most cases TAA is preferable because it removes both geometric aliasing and specular aliasing. In VR, the constant sub-pixel movement introduced by head tracking introduces unwanted blurriness, making MSAA a better choice.
  • 19. Multi Sample Anti-Aliasing (MSAA) vs Temporal Anti-Aliasing (TAA)  Projects that choose to use MSAA will want to build content to mitigate specular aliasing. The ‘Normal to Roughness’ feature can help reduce specular aliasing from detailed normal maps. Automatic LOD generation for static meshes can flatten features on distant meshes and help reduce aliasing from small triangles.  In our tests, using MSAA instead of TAA increases GPU frame time by about 25%. Actual cost will depend on your content.
  • 20. There are Advantages to Each Renderer The UE4 Deferred Render is a full-featured workhorse, but takes a bit of skill to fully leverage. Temporal Anti-Aliasing limits how sharp your image can be. A new UE4 Forward Renderer will be a specialized renderer, with less features, but faster baseline. Multi Sampling Anti-Aliasing (MSAA) is the sharpest solution for anti-aliasing.
  • 21. GPU Profiler (Ctrl+Shift+,)  The GPU Profiler allows you to quickly identify the GPU cost of the various passes, sometimes down to the draw calls.  The data is based on GPU timestamps and is usually quite accurate.  The GPU Profiler can shows the light name which makes it easier for the artist to optimize the right light source.
  • 22. Profile Often and Maintain Performance Goals  Check your performance constantly to ensure that you are hitting your VR performance targets.  LOD's and aggressive culling are a must to ensure that you are hitting your VR performance targets.  Due to the demanding requirements of VR many of the advanced Post Processing features that are normally use should be set to `0`.
  • 23. Launching VR Preview  Testing out your VR headset is straightforward, simply select “VR Preview” from the Play dropdown button. By default the head tracking will work without changes to your existing project or template.
  • 24. Platform Support As of 4.12, we support the following platforms out of the box:  Oculus Rift  Steam VR (including the HTC Vive)  PSVR  OSVR (preview)  Samsung Gear VR  Google Daydream  Leap Motion
  • 25. Create once, and deploy anywhere. Mobile Desktop / Console Oculus Rift HTC Vive / Steam VR PSVR OSVR Samsung Gear VR Google Daydream
  • 26. Platform Support All of these platforms go through UE4’s common VR interfaces, so you can make your content once, and deploy it anywhere. • Unified Camera System • Motion Controller System • Optimized rendering paths • Low-latency optimizations Oculus Vive PSVR OSVR
  • 27. VR Project Template  We have templates designed for Virtual Reality  The template can be selected from the Blueprint tab as a new project is created.  The motion controller template provides examples for object interaction and manipulation as well as point based teleportation.
  • 29. A significan consideration when desinging for VR is how to minimize/prevent Motion/Simulation Sickness.
  • 30. How is it Motion/Simulation Sickness caused?
  • 31. en.wikipedia.org/wiki/Virtual_reality_sickness Sensory conflict theory believes that sickness will occur when a user's perception of self-motion is based on incongruent sensory inputs from the visual system,vestibular system, and non- vestibular proprioceptors, and particularly so when these inputs are at odds with the user's expectation based on prior experience.
  • 32. Five typical causes of Motion/Simulation Sickness in VR Further Reading  Any, most, some, Non-forward movement  The awareness of Vection (When a large part of the visual field is moving and the viewer feels like she has moved while the world is stationary)  The feeling of accelerations  Frequent camera YAW  Lack of a static reference frame
  • 33. The Unreal Engine Framework GameInstance GameMode Pawn Class HUD Class PlayerController Class GameState Class PlayerState Class
  • 34. GameInstance GameMode Pawn Class HUD Class PlayerController Class GameState Class PlayerState Class The GameMode is the definition of the game. ● It also holds important information about: • Pawn • PlayerContoller • GameState • PlayerState • HUD
  • 35. GameInstance GameMode Pawn Class HUD Class PlayerController Class GameState Class PlayerState Class The Pawn class is the base class of all Actors that can be controlled by players or AI. ● The Pawn represents the physical location, rotation, etc. of a player or entity within the game. ● A Character is a special type of Pawn that has the ability to walk around.
  • 36. GameInstance GameMode Pawn Class HUD Class PlayerController Class GameState Class PlayerState Class A PlayerController is the interface between the Pawn and the human player controlling it. ● The PlayerController decides what to do and then issues commands to the Pawn (e.g. "start crouching", "jump"). ● Putting input handling or other functionality into the PlayerController is often necessary. ● The PlayerController persists throughout the game, while the Pawn can be transient.
  • 37. GameInstance GameMode Pawn Class HUD Class PlayerController Class GameState Class PlayerState Class The GameInstance is a class who’s state persists switching of levels, game modes, pawns etc. Where classes like GameMode or PlayerController are being reset and data stored in those classes is removed.
  • 38. GameInstance GameMode Pawn Class HUD Class PlayerController Class GameState Class PlayerState Class A PlayerState is the state of a participant in the game, such as a human player or a bot that is simulating a player. Non-player AI that exists as part of the game would not have a PlayerState.
  • 39. GameInstance GameMode Pawn Class HUD Class PlayerController Class GameState Class PlayerState Class The GameState contains the state of the game, which could include things like the list of connected players, the score, where the pieces are in a chess game, or the list of what missions you have completed in an open world game.
  • 40. GameInstance GameMode Pawn Class HUD Class PlayerController Class GameState Class PlayerState Class The HUD is the base object for displaying elements overlaid on the screen. Every human-controlled player in the game has their own instance of the AHUD class which draws to their individual Viewport.
  • 41. Object Actor Pawn Character Base building blocks in the Unreal Engine Any object that can be placed into a level Subclass of Actor and serve as an in-game avatar Subclass of a Pawn that is intended to be used as a player character
  • 43. How can we learn to harness the power of Unreal Engine?
  • 44. VR Learning Resources for Unreal Engine Starting Out: • Oculus Quick Starts • SteamVR Quick Start • Google VR Quick Start • Gear VR Quick Starts VR Platforms: • Samsung Gear VR Development • Google VR Development • Oculus Rift Development • SteamVR Development VR Topics: • VR Cheat Sheets • VR Best Practices • Motion Controller Component Setup • VR Camera Refactor
  • 45. Video: • 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 Presentations: • UE4 VR - Niklas Smedberg • Lessons from Integrating the Oculus Rift into UE4 • Going Off The Rails: The Making of Bullet Train Links: • Sam Deiter - 10 VR tips for Unreal Engine • Tom Looman’s - Getting Started with VR in Unreal Engine 4
  • 46. VR Learning Resources for Unreal Engine VR Editor Starting Out: • Activating VR Mode VR Editor Guides: • Setting Up VR Editor from GitHub • Navigating the World in VR Mode • Working with Actors in VR Mode VR Editor Reference: • VR Editor Controls • Quick Select Menu • Radial Menu • Transforming Actors in VR • Editor Windows in VR Mode
  • 47. The Unreal Engine Release Notes
  • 48. Education Community VR for UE4 Mitchell McCaffrey’s - Mitch VR Labs • Mitch's VR Lab - an Introduction • Mitch's VR Lab - Look Based interaction • Mitch's VR Lab - Simple Teleportation Mechanic • Mitch's VR Lab - Introduction to SteamVR • Mitch's VR Lab - Simple Head IK • Mitch’s UE4 Forum Post
  • 50. Education Community VR for UE4 Free Unreal Engine Courses: • Twin Stick Shooter • 3rd Person Power-Up Game with C++ • 2D Sidescroller with Blueprints • Endless Runner with Blueprints • Unreal Match 3 Game Free UE4 Community Youtube.com Learning Channels: • 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
  • 51. Education Community VR for UE4 Free UE4 Community Blueprints: • Communication Training - Zak Parrish • Blueprints Compendium - VOLUME II • BP_Compendium.pdf • Network Compendium Free UE4 Community VR Learning Channels: • Unreal Engine VR Curriculum Free UE4 Community ArchViz Learning Channels: • Architectural Visualization Tutorials Paid e-learning Courses: • Unreal Engine 4: The Complete Beginner's Course • Learn to Code in C++ by Developing Your First Game • Complete Introduction to Unreal 4 • An Introduction to Creating Realistic Materials in UE4 • Master Blueprints in Unreal Engine 4 - Endless Runner • Create a Helicopter Game Control System in Unreal Engine 4 • Unreal Essential Training - Lynda.com • Unreal: Learn Lighting - Lynda.com • 3dmotive - Unreal Engine courses • Pluralsight - Unreal Engine courses
  • 53. You can download the project file that was used for the VRLA 17 worshop at the THIS link. Luis Cataldi - Director of Education and Learning - Epic Games