SlideShare a Scribd company logo
1 of 28
Unreal Engine
Best Practices for VR
Luis Cataldi – Epic Games, Education Evangelist
VR Learning Resources for Unreal Engine:
Docs:
▪ Getting Started With VR
▪ UE4 VR Index Page
▪ VR Best Practices
▪ VR Cheat Sheets
▪ Oculus Quick Starts
▪ GearVR Quick Starts
Video:
▪ Integrating the Oculus Rift into UE4
▪ UE4 Support Stream - Developing for VR
▪ 2015 UE4 - VR and Unreal Engine
▪ Unreal Engine 4 Training Stream: Up and Running with Gear VR
Presentations:
▪ UE4 VR - Niklas Smedberg
▪ Lessons from Integrating the Oculus Rift into UE4
Links:
▪ Getting Started with VR in Unreal Engine 4
2
Things to keep in at the front of your mind:
World Scale
Getting the scale of your world correct is one of the most important things to help deliver the
best user experience possible on VR platforms. Having the wrong scale can lead to all kind of
sensory issues for users and could even result in Simulation Sickness. Objects are most easily
viewed in VR when they are in a range of 0.75 to 3.5 Meters from the player's camera. Inside of
UE4, 1 Unreal Unit (UU) is equal to 1 Centimeter (CM). This means that object's inside of
Unreal are best viewed when they are 75 UU to 350 UU away from the player's camera when
using VR.
3
Distance Distance in Unreal Units(UU)
1 Centimeter 1 Unreal Unit
1 Meter 100 Unreal Units
1 Kilometer 100,000 Unreal Units
Things to keep in at the front of your mind:
World Scale
You can adjust the scale of your world in the World to Meters variable that is located
under World Settings in side of UE4. However exercise caution when adjusting the scale of your
world as again, selecting the wrong scale could lead to a disconnection between the world and
the user which could lead to simulation sickness.
4
Things to keep in at the front of your mind:
VR Character Settings
The setup for a character using a VR headset is slightly different than for a
standard character. Things like character Height, Width, Speed, and Camera
Location all need to be slightly modified to accommodate a VR character.
5
Things to keep in at the front of your mind:
VR Character Settings
Character Height & Width
Character Height & Width should mimic real life measurements as much as possible. Using sizes
that are too big or two small could ruin the emersion that you are trying to achieve.
6
Property UE4 Default Recommended VR
Height: 192 CM 176 CM
Width: 84 CM 68 CM
Things to keep in at the front of your mind:
VR Character Settings
Movement Speed
VR movement speed is a difficult property to recommend a setting for because the movement
speed that you choose will mainly be determined by the type of experience that you are trying
to achieve. In the Elemental VR demo for example, the movement speed was cut to about 1/4
normal speed.
7
Property UE4 Default Recommended VR
Movement Speed: 60 M/S 24 M/S
Things to keep in at the front of your mind:
VR Character Settings
Camera Location
The VR camera needs to be positioned slightly lower than the base eye height to compensate for
being at the characters eye level.
8
Property UE4 Default Recommended VR
Base Eye Height: 180 CM 160 CM
Things to keep in at the front of your mind:
Make sure your project is running at your HMD's target frame
rate before you build or add anything to your world.
9
Things to keep in at the front of your mind:
Check your performance constantly to ensure that you are
hitting your VR performance targets.
10
Things to keep in at the front of your mind:
○ Maintain a very simplistic approach to making your content.
○ Minimize complex shaders as best possible.
○ Add detail to the mesh within reason in lieu of relying of
complex shaders for surface details.
11
Things to keep in at the front of your mind:
LOD's and aggressive culling are a must to ensure that you are
hitting your VR performance targets.
12
Known issues and possible workarounds:
Screen Space Reflections(SSR)
SSR will work in VR but not give you the results that you want and instead you
should look into using reflection probes.
13
Known issues and possible workarounds:
Normal Mapping Issues
When viewing Normal maps on objects in VR, you will notice that they do not have
the impact that they might have once had. This is because normal mapping does
not account for a binocular display or motion parallax. Because of this, Normal
maps will come out looking flat when viewed with a VR device. To get around this,
you can do one of two things.
14
Known issues and possible workarounds:
Parallax Mapping
Parallax mapping takes Normal mapping to the next level by accounting for depth
cues, Normal mapping does not. A Parallax mapping shader can better display
depth information, making objects appear to have more detail than they do. This is
because no matter what angle you look at, a Parallax map will always correct itself
to show you the correct depth information from that view point. The best use of a
Parallax map would be for cobblestone pathways and fine detail on surfaces.
15
Known issues and possible workarounds:
Tessellation Shader Displacement
Tessellation Shader Displacement will displace 3D Geometry in real time by adding
details that are not modeled into the object. Tessellation shaders do a great job of
displaying information because tessellation shaders actually create the missing
detail by creating more vertices and displacing them in 3D Space.
16
New Project Settings:
When creating a new project for VR it is best to create a project that uses the Mobile / Tablet
setting with Scalable 3D or 2D and No Starter Content. If you need content you should port /
import only what you need and not everything you have.
17
Launching VR Preview:
Testing out your VR set is very straightforward, simply select “VR Preview” from the Play
dropdown button. By default the head tracking will work right away without any changes to your
existing project or template.
18
Using VR in Blueprint:
Using VR in Blueprint is very straightforward.
You will need a Camera Component and optionally one or two Motion Controllers Components. By default
your Camera is already set up for HMD support, if you wish to disable rotation changes from the HMD you
can disable “Lock to HMD” in the Component’s properties.
19
Performance Considerations:
For the VR experience to feel smooth, your game needs to run on 75 hz
(Oculus DK2) or even 90 hz. (HTC Vive and Oculus CV1) depending on the
device. To see the current framerate type in “stat fps” or “stat unit” (for
more detailed breakdown) in your console when running the game.
20
GPU Profiling:
To capture a single frame with GPU timings press Ctrl+Shift+, or type in “profilegpu” in the console.
This command dumps accurate timings of the GPU, you will find that certain processes are a heavy
burden on the framerate (Ambient Occlusion is one common example) when using VR.
The GPU Profiling & Performance and Profiling docs are a good place to learn about profiling your
game.
21
Instanced Stereo:
The latest 4.11 release introduces Instanced Stereo Rendering, check the video below for a
comparison video of how that works.
“Basically, we’re utilizing hardware instancing to draw both eyes simultaneously with a single draw
call and pass through the render loop. This cuts down render thread CPU time significantly and also
improves GPU performance. Bullet Train was seeing ~15 – 20% CPU improvement on the render
thread and ~7 – 10% improvement on the GPU.” – Ryan Vance.
22
To enable this feature in
4.11 and above, go to
your Project Settings
and look for “Instanced
Stereo” under the
Rendering category.
Disable Heavy Post-Processors:
Due to the demanding requirements of VR many of the advanced Post Processing features that you normally
use should be disabled. To accomplish this you will need to do the following in your level.
• Add a Post Process(PP) volume to your level if there is not already one there.
• Select the PP volume and in the Post Process Volume section enable the Unbound option so that the settings in the PP
volume will be applied to the entire level.
• Expand the Settings of the Post Process Volume and then go through each section and disable any active PP settings by
enabling that property by clicking on it and then set the value from the default, usually 1.0, to 0 to disable the feature.
• When doing this you will not need to hit every section and set all the properties to 0. Instead first disable the really
heavy hitting features like Lens Flares, Screen Space reflections, Temporal AA, SSAO, and anything else that might
have an impact on performance.
• While a lot of the features are disabled by setting things in your .INI this ensures that nothing will happen to performance if
someone deletes the .INI by mistake.
23
Static, Stationary and Dynamic Lighting:
You should always use Static lighting and lightmaps when making a VR project as this
is the cheapest option to render. If you need to use dynamic lighting make sure to
limit the amount of dynamic lights to as few as possible and make sure that they
never touch one another. If you have an outdoor scene set your directional light to
dynamic instead of stationary and then turn on Cascading Shadow Maps and set then
adjust the settings to be as low as possible while still giving you shadows. This is going
to take a lot of trial and error to get correct.
24
Fake shadows if you can:
Using things like fake blob shadow drop to simulate dynamic shadows are a good
general rule in order to keep VR project running at frame.
25
Blob shadow example. Image by Eric Chadwick
VFX in VR:
Some VFX techniques like using SubUV Textures to simulate fire or smoke
do not hold up well when viewed in VR. In many cases it can be more
desirable to use static meshes emitters instead of 2D sprite particles to
simulate VFX's like explosions or smoke trails. Near field effects, or effects
that happen very close to the camera can work well in VR but only when the
effects are made up of Static Meshes particles.
26
Again, VR Learning Resources for Unreal Engine:
Docs:
▪ Getting Started With VR
▪ UE4 VR Index Page
▪ VR Best Practices
▪ VR Cheat Sheets
▪ Oculus Quick Starts
▪ GearVR Quick Starts
Video:
▪ Integrating the Oculus Rift into UE4
▪ UE4 Support Stream - Developing for VR
▪ 2015 UE4 - VR and Unreal Engine
▪ Unreal Engine 4 Training Stream: Up and Running with Gear VR
Presentations:
▪ UE4 VR - Niklas Smedberg
▪ Lessons from Integrating the Oculus Rift into UE4
Links:
▪ Getting Started with VR in Unreal Engine 4
27
Thanks you!
luis.cataldi@epicgames.com
28

More Related Content

What's hot

【Unite Tokyo 2018】実践的なパフォーマンス分析と最適化
【Unite Tokyo 2018】実践的なパフォーマンス分析と最適化【Unite Tokyo 2018】実践的なパフォーマンス分析と最適化
【Unite Tokyo 2018】実践的なパフォーマンス分析と最適化Unity Technologies Japan K.K.
 
Physically Based Lighting in Unreal Engine 4
Physically Based Lighting in Unreal Engine 4Physically Based Lighting in Unreal Engine 4
Physically Based Lighting in Unreal Engine 4Lukas Lang
 
Metaverse - The Future of Marketing and Web 3.0.pdf
Metaverse - The Future of Marketing and Web 3.0.pdfMetaverse - The Future of Marketing and Web 3.0.pdf
Metaverse - The Future of Marketing and Web 3.0.pdfthetechnologynews
 
Build Immersive Worlds in Virtual Reality
Build Immersive Worlds  in Virtual RealityBuild Immersive Worlds  in Virtual Reality
Build Immersive Worlds in Virtual RealityUnity Technologies
 
Oculus Quest 2 on Mixed Reality Toolkit V2.5.0~ ハンドトラッキングする方法 ~
Oculus Quest 2 on Mixed Reality Toolkit V2.5.0~ ハンドトラッキングする方法 ~Oculus Quest 2 on Mixed Reality Toolkit V2.5.0~ ハンドトラッキングする方法 ~
Oculus Quest 2 on Mixed Reality Toolkit V2.5.0~ ハンドトラッキングする方法 ~Takahiro Miyaura
 
Metaverse building (blockchain, nft, 3d, vr)
Metaverse building (blockchain, nft, 3d, vr)Metaverse building (blockchain, nft, 3d, vr)
Metaverse building (blockchain, nft, 3d, vr)Wajdi Ben Rabah
 
Performance XR Trends: Interrogating the Liveness of the Live
Performance XR Trends: Interrogating the Liveness of the LivePerformance XR Trends: Interrogating the Liveness of the Live
Performance XR Trends: Interrogating the Liveness of the LiveKent Bye
 
Landscape of AI/ML in 2023
Landscape of AI/ML in 2023Landscape of AI/ML in 2023
Landscape of AI/ML in 2023HyunJoon Jung
 
Generative AI, Game Development and the Future of Civilization
Generative AI, Game Development and the Future of CivilizationGenerative AI, Game Development and the Future of Civilization
Generative AI, Game Development and the Future of CivilizationJon Radoff
 
【Unite Tokyo 2018】カスタムシェーダーでモバイルでも最先端グラフィックスな格闘ゲームを!
【Unite Tokyo 2018】カスタムシェーダーでモバイルでも最先端グラフィックスな格闘ゲームを!【Unite Tokyo 2018】カスタムシェーダーでモバイルでも最先端グラフィックスな格闘ゲームを!
【Unite Tokyo 2018】カスタムシェーダーでモバイルでも最先端グラフィックスな格闘ゲームを!UnityTechnologiesJapan002
 
VRモーキャプツール『VR Motion Recorder』の使い方
VRモーキャプツール『VR Motion Recorder』の使い方VRモーキャプツール『VR Motion Recorder』の使い方
VRモーキャプツール『VR Motion Recorder』の使い方まろん 八ッ橋
 
Top 10 metaverse platfroms 2022
Top 10 metaverse platfroms 2022Top 10 metaverse platfroms 2022
Top 10 metaverse platfroms 2022zaarahary
 
UnityによるHoloLens用UWPアプリケーション開発の勘所
UnityによるHoloLens用UWPアプリケーション開発の勘所UnityによるHoloLens用UWPアプリケーション開発の勘所
UnityによるHoloLens用UWPアプリケーション開発の勘所Takahiro Miyaura
 
XR (Extended reality) Current and future trends
XR (Extended reality) Current and future trendsXR (Extended reality) Current and future trends
XR (Extended reality) Current and future trendsKeyur Bhalavat
 

What's hot (20)

【Unite Tokyo 2018】実践的なパフォーマンス分析と最適化
【Unite Tokyo 2018】実践的なパフォーマンス分析と最適化【Unite Tokyo 2018】実践的なパフォーマンス分析と最適化
【Unite Tokyo 2018】実践的なパフォーマンス分析と最適化
 
Physically Based Lighting in Unreal Engine 4
Physically Based Lighting in Unreal Engine 4Physically Based Lighting in Unreal Engine 4
Physically Based Lighting in Unreal Engine 4
 
Metaverse - The Future of Marketing and Web 3.0.pdf
Metaverse - The Future of Marketing and Web 3.0.pdfMetaverse - The Future of Marketing and Web 3.0.pdf
Metaverse - The Future of Marketing and Web 3.0.pdf
 
AEC分野におけるUnreal Engine / Twinmotionの活用について【Archi Future 2020】
AEC分野におけるUnreal Engine / Twinmotionの活用について【Archi Future 2020】AEC分野におけるUnreal Engine / Twinmotionの活用について【Archi Future 2020】
AEC分野におけるUnreal Engine / Twinmotionの活用について【Archi Future 2020】
 
Build Immersive Worlds in Virtual Reality
Build Immersive Worlds  in Virtual RealityBuild Immersive Worlds  in Virtual Reality
Build Immersive Worlds in Virtual Reality
 
Oculus Quest 2 on Mixed Reality Toolkit V2.5.0~ ハンドトラッキングする方法 ~
Oculus Quest 2 on Mixed Reality Toolkit V2.5.0~ ハンドトラッキングする方法 ~Oculus Quest 2 on Mixed Reality Toolkit V2.5.0~ ハンドトラッキングする方法 ~
Oculus Quest 2 on Mixed Reality Toolkit V2.5.0~ ハンドトラッキングする方法 ~
 
Metaverse building (blockchain, nft, 3d, vr)
Metaverse building (blockchain, nft, 3d, vr)Metaverse building (blockchain, nft, 3d, vr)
Metaverse building (blockchain, nft, 3d, vr)
 
Performance XR Trends: Interrogating the Liveness of the Live
Performance XR Trends: Interrogating the Liveness of the LivePerformance XR Trends: Interrogating the Liveness of the Live
Performance XR Trends: Interrogating the Liveness of the Live
 
AI as a service
AI as a serviceAI as a service
AI as a service
 
Unity2018/2019における最適化事情
Unity2018/2019における最適化事情Unity2018/2019における最適化事情
Unity2018/2019における最適化事情
 
Landscape of AI/ML in 2023
Landscape of AI/ML in 2023Landscape of AI/ML in 2023
Landscape of AI/ML in 2023
 
Extending the Unity Editor
Extending the Unity EditorExtending the Unity Editor
Extending the Unity Editor
 
Generative AI, Game Development and the Future of Civilization
Generative AI, Game Development and the Future of CivilizationGenerative AI, Game Development and the Future of Civilization
Generative AI, Game Development and the Future of Civilization
 
【Unite Tokyo 2018】カスタムシェーダーでモバイルでも最先端グラフィックスな格闘ゲームを!
【Unite Tokyo 2018】カスタムシェーダーでモバイルでも最先端グラフィックスな格闘ゲームを!【Unite Tokyo 2018】カスタムシェーダーでモバイルでも最先端グラフィックスな格闘ゲームを!
【Unite Tokyo 2018】カスタムシェーダーでモバイルでも最先端グラフィックスな格闘ゲームを!
 
VRモーキャプツール『VR Motion Recorder』の使い方
VRモーキャプツール『VR Motion Recorder』の使い方VRモーキャプツール『VR Motion Recorder』の使い方
VRモーキャプツール『VR Motion Recorder』の使い方
 
Top 10 metaverse platfroms 2022
Top 10 metaverse platfroms 2022Top 10 metaverse platfroms 2022
Top 10 metaverse platfroms 2022
 
UE4を使用したバーチャルヒューマンの映像制作 UNREAL FEST EXTREME 2021 SUMMER
UE4を使用したバーチャルヒューマンの映像制作  UNREAL FEST EXTREME 2021 SUMMERUE4を使用したバーチャルヒューマンの映像制作  UNREAL FEST EXTREME 2021 SUMMER
UE4を使用したバーチャルヒューマンの映像制作 UNREAL FEST EXTREME 2021 SUMMER
 
UnityによるHoloLens用UWPアプリケーション開発の勘所
UnityによるHoloLens用UWPアプリケーション開発の勘所UnityによるHoloLens用UWPアプリケーション開発の勘所
UnityによるHoloLens用UWPアプリケーション開発の勘所
 
XR (Extended reality) Current and future trends
XR (Extended reality) Current and future trendsXR (Extended reality) Current and future trends
XR (Extended reality) Current and future trends
 
Hair Groom入門 (UE4 Character Art Dive Online)
Hair Groom入門 (UE4 Character Art Dive Online)Hair Groom入門 (UE4 Character Art Dive Online)
Hair Groom入門 (UE4 Character Art Dive Online)
 

Similar to Luis cataldi-ue4-vr-best-practices2

Making VR Games and Experiences in UE4
Making VR Games and Experiences in UE4Making VR Games and Experiences in UE4
Making VR Games and Experiences in UE4Unreal Engine
 
Making VR games and experiences in Unreal Engine
Making VR games and experiences in Unreal EngineMaking VR games and experiences in Unreal Engine
Making VR games and experiences in Unreal EngineLuis 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
 
Developing Games For VR - Lessons Learned
Developing Games For VR - Lessons LearnedDeveloping Games For VR - Lessons Learned
Developing Games For VR - Lessons LearnedMartin Climatiano
 
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
 
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 CataldiLuis Cataldi
 
On-device Motion Tracking for Immersive VR
On-device Motion Tracking for Immersive VROn-device Motion Tracking for Immersive VR
On-device Motion Tracking for Immersive VRQualcomm Research
 
Hiren Bhinde (Qualcomm): On-device Motion Tracking for Immersive VR
Hiren Bhinde (Qualcomm): On-device Motion Tracking for Immersive VRHiren Bhinde (Qualcomm): On-device Motion Tracking for Immersive VR
Hiren Bhinde (Qualcomm): On-device Motion Tracking for Immersive VRAugmentedWorldExpo
 
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
 
SEARIS 2014 Keynote - MiddleVR - Philosophy and architecture
SEARIS 2014 Keynote - MiddleVR - Philosophy and architectureSEARIS 2014 Keynote - MiddleVR - Philosophy and architecture
SEARIS 2014 Keynote - MiddleVR - Philosophy and architectureSebastien Kuntz
 
Essential Tips for Optimizing 3D Modelling and Animation.pptx
Essential Tips for Optimizing 3D Modelling and Animation.pptxEssential Tips for Optimizing 3D Modelling and Animation.pptx
Essential Tips for Optimizing 3D Modelling and Animation.pptxvinzglobalsocial
 
Virtual Reality gaming: analysis of Yon Paradox development - Fabio Mosca - C...
Virtual Reality gaming: analysis of Yon Paradox development - Fabio Mosca - C...Virtual Reality gaming: analysis of Yon Paradox development - Fabio Mosca - C...
Virtual Reality gaming: analysis of Yon Paradox development - Fabio Mosca - C...Codemotion
 
VR Introduction
VR IntroductionVR Introduction
VR IntroductionAdam Chen
 
V Ray For Sketch Up 2007 Manual
V Ray For Sketch Up 2007 ManualV Ray For Sketch Up 2007 Manual
V Ray For Sketch Up 2007 ManualPheo8x
 
ARM: Enhancing your Unity mobile VR experience
ARM: Enhancing your Unity mobile VR experienceARM: Enhancing your Unity mobile VR experience
ARM: Enhancing your Unity mobile VR experienceDevGAMM Conference
 
Art and design for VR
Art and design for VRArt and design for VR
Art and design for VRChandan Singh
 
Intro to VR with Unreal Engine
Intro to VR with Unreal Engine   Intro to VR with Unreal Engine
Intro to VR with Unreal Engine Unreal Engine
 

Similar to Luis cataldi-ue4-vr-best-practices2 (20)

Making VR Games and Experiences in UE4
Making VR Games and Experiences in UE4Making VR Games and Experiences in UE4
Making VR Games and Experiences in UE4
 
Making VR games and experiences in Unreal Engine
Making VR games and experiences in Unreal EngineMaking VR games and experiences in Unreal Engine
Making VR games and experiences in Unreal Engine
 
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
 
Developing Games For VR - Lessons Learned
Developing Games For VR - Lessons LearnedDeveloping Games For VR - Lessons Learned
Developing Games For VR - Lessons Learned
 
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
 
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
 
Vuzix i wear vr920
Vuzix i wear vr920Vuzix i wear vr920
Vuzix i wear vr920
 
Alexey Savchenko, Unreal Engine
Alexey Savchenko, Unreal EngineAlexey Savchenko, Unreal Engine
Alexey Savchenko, Unreal Engine
 
On-device Motion Tracking for Immersive VR
On-device Motion Tracking for Immersive VROn-device Motion Tracking for Immersive VR
On-device Motion Tracking for Immersive VR
 
Hiren Bhinde (Qualcomm): On-device Motion Tracking for Immersive VR
Hiren Bhinde (Qualcomm): On-device Motion Tracking for Immersive VRHiren Bhinde (Qualcomm): On-device Motion Tracking for Immersive VR
Hiren Bhinde (Qualcomm): On-device Motion Tracking for Immersive VR
 
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...
 
SEARIS 2014 Keynote - MiddleVR - Philosophy and architecture
SEARIS 2014 Keynote - MiddleVR - Philosophy and architectureSEARIS 2014 Keynote - MiddleVR - Philosophy and architecture
SEARIS 2014 Keynote - MiddleVR - Philosophy and architecture
 
Essential Tips for Optimizing 3D Modelling and Animation.pptx
Essential Tips for Optimizing 3D Modelling and Animation.pptxEssential Tips for Optimizing 3D Modelling and Animation.pptx
Essential Tips for Optimizing 3D Modelling and Animation.pptx
 
Virtual Reality gaming: analysis of Yon Paradox development - Fabio Mosca - C...
Virtual Reality gaming: analysis of Yon Paradox development - Fabio Mosca - C...Virtual Reality gaming: analysis of Yon Paradox development - Fabio Mosca - C...
Virtual Reality gaming: analysis of Yon Paradox development - Fabio Mosca - C...
 
VR Introduction
VR IntroductionVR Introduction
VR Introduction
 
V Ray For Sketch Up 2007 Manual
V Ray For Sketch Up 2007 ManualV Ray For Sketch Up 2007 Manual
V Ray For Sketch Up 2007 Manual
 
Vray
VrayVray
Vray
 
ARM: Enhancing your Unity mobile VR experience
ARM: Enhancing your Unity mobile VR experienceARM: Enhancing your Unity mobile VR experience
ARM: Enhancing your Unity mobile VR experience
 
Art and design for VR
Art and design for VRArt and design for VR
Art and design for VR
 
Intro to VR with Unreal Engine
Intro to VR with Unreal Engine   Intro to VR with Unreal Engine
Intro to VR with Unreal Engine
 

More from 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
 
Intro to unreal with framework and vr
Intro to unreal with framework and vrIntro to unreal with framework and vr
Intro to unreal with framework and vrLuis 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
 

More from Luis Cataldi (8)

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
 
Intro to unreal with framework and vr
Intro to unreal with framework and vrIntro to unreal with framework and vr
Intro to unreal with framework and vr
 
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
 

Recently uploaded

Seal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptxSeal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptxnegromaestrong
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17Celine George
 
Class 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdfClass 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdfAyushMahapatra5
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...EduSkills OECD
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfciinovamais
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.MaryamAhmad92
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxheathfieldcps1
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.christianmathematics
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.pptRamjanShidvankar
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeThiyagu K
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfPoh-Sun Goh
 
PROCESS RECORDING FORMAT.docx
PROCESS      RECORDING        FORMAT.docxPROCESS      RECORDING        FORMAT.docx
PROCESS RECORDING FORMAT.docxPoojaSen20
 
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...Nguyen Thanh Tu Collection
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxDenish Jangid
 
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...Shubhangi Sonawane
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsTechSoup
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingTechSoup
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfagholdier
 
Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Celine George
 

Recently uploaded (20)

Seal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptxSeal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptx
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
Class 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdfClass 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdf
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.
 
Asian American Pacific Islander Month DDSD 2024.pptx
Asian American Pacific Islander Month DDSD 2024.pptxAsian American Pacific Islander Month DDSD 2024.pptx
Asian American Pacific Islander Month DDSD 2024.pptx
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.ppt
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and Mode
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdf
 
PROCESS RECORDING FORMAT.docx
PROCESS      RECORDING        FORMAT.docxPROCESS      RECORDING        FORMAT.docx
PROCESS RECORDING FORMAT.docx
 
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
 
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 
Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17
 

Luis cataldi-ue4-vr-best-practices2

  • 1. Unreal Engine Best Practices for VR Luis Cataldi – Epic Games, Education Evangelist
  • 2. VR Learning Resources for Unreal Engine: Docs: ▪ Getting Started With VR ▪ UE4 VR Index Page ▪ VR Best Practices ▪ VR Cheat Sheets ▪ Oculus Quick Starts ▪ GearVR Quick Starts Video: ▪ Integrating the Oculus Rift into UE4 ▪ UE4 Support Stream - Developing for VR ▪ 2015 UE4 - VR and Unreal Engine ▪ Unreal Engine 4 Training Stream: Up and Running with Gear VR Presentations: ▪ UE4 VR - Niklas Smedberg ▪ Lessons from Integrating the Oculus Rift into UE4 Links: ▪ Getting Started with VR in Unreal Engine 4 2
  • 3. Things to keep in at the front of your mind: World Scale Getting the scale of your world correct is one of the most important things to help deliver the best user experience possible on VR platforms. Having the wrong scale can lead to all kind of sensory issues for users and could even result in Simulation Sickness. Objects are most easily viewed in VR when they are in a range of 0.75 to 3.5 Meters from the player's camera. Inside of UE4, 1 Unreal Unit (UU) is equal to 1 Centimeter (CM). This means that object's inside of Unreal are best viewed when they are 75 UU to 350 UU away from the player's camera when using VR. 3 Distance Distance in Unreal Units(UU) 1 Centimeter 1 Unreal Unit 1 Meter 100 Unreal Units 1 Kilometer 100,000 Unreal Units
  • 4. Things to keep in at the front of your mind: World Scale You can adjust the scale of your world in the World to Meters variable that is located under World Settings in side of UE4. However exercise caution when adjusting the scale of your world as again, selecting the wrong scale could lead to a disconnection between the world and the user which could lead to simulation sickness. 4
  • 5. Things to keep in at the front of your mind: VR Character Settings The setup for a character using a VR headset is slightly different than for a standard character. Things like character Height, Width, Speed, and Camera Location all need to be slightly modified to accommodate a VR character. 5
  • 6. Things to keep in at the front of your mind: VR Character Settings Character Height & Width Character Height & Width should mimic real life measurements as much as possible. Using sizes that are too big or two small could ruin the emersion that you are trying to achieve. 6 Property UE4 Default Recommended VR Height: 192 CM 176 CM Width: 84 CM 68 CM
  • 7. Things to keep in at the front of your mind: VR Character Settings Movement Speed VR movement speed is a difficult property to recommend a setting for because the movement speed that you choose will mainly be determined by the type of experience that you are trying to achieve. In the Elemental VR demo for example, the movement speed was cut to about 1/4 normal speed. 7 Property UE4 Default Recommended VR Movement Speed: 60 M/S 24 M/S
  • 8. Things to keep in at the front of your mind: VR Character Settings Camera Location The VR camera needs to be positioned slightly lower than the base eye height to compensate for being at the characters eye level. 8 Property UE4 Default Recommended VR Base Eye Height: 180 CM 160 CM
  • 9. Things to keep in at the front of your mind: Make sure your project is running at your HMD's target frame rate before you build or add anything to your world. 9
  • 10. Things to keep in at the front of your mind: Check your performance constantly to ensure that you are hitting your VR performance targets. 10
  • 11. Things to keep in at the front of your mind: ○ Maintain a very simplistic approach to making your content. ○ Minimize complex shaders as best possible. ○ Add detail to the mesh within reason in lieu of relying of complex shaders for surface details. 11
  • 12. Things to keep in at the front of your mind: LOD's and aggressive culling are a must to ensure that you are hitting your VR performance targets. 12
  • 13. Known issues and possible workarounds: Screen Space Reflections(SSR) SSR will work in VR but not give you the results that you want and instead you should look into using reflection probes. 13
  • 14. Known issues and possible workarounds: Normal Mapping Issues When viewing Normal maps on objects in VR, you will notice that they do not have the impact that they might have once had. This is because normal mapping does not account for a binocular display or motion parallax. Because of this, Normal maps will come out looking flat when viewed with a VR device. To get around this, you can do one of two things. 14
  • 15. Known issues and possible workarounds: Parallax Mapping Parallax mapping takes Normal mapping to the next level by accounting for depth cues, Normal mapping does not. A Parallax mapping shader can better display depth information, making objects appear to have more detail than they do. This is because no matter what angle you look at, a Parallax map will always correct itself to show you the correct depth information from that view point. The best use of a Parallax map would be for cobblestone pathways and fine detail on surfaces. 15
  • 16. Known issues and possible workarounds: Tessellation Shader Displacement Tessellation Shader Displacement will displace 3D Geometry in real time by adding details that are not modeled into the object. Tessellation shaders do a great job of displaying information because tessellation shaders actually create the missing detail by creating more vertices and displacing them in 3D Space. 16
  • 17. New Project Settings: When creating a new project for VR it is best to create a project that uses the Mobile / Tablet setting with Scalable 3D or 2D and No Starter Content. If you need content you should port / import only what you need and not everything you have. 17
  • 18. Launching VR Preview: Testing out your VR set is very straightforward, simply select “VR Preview” from the Play dropdown button. By default the head tracking will work right away without any changes to your existing project or template. 18
  • 19. Using VR in Blueprint: Using VR in Blueprint is very straightforward. You will need a Camera Component and optionally one or two Motion Controllers Components. By default your Camera is already set up for HMD support, if you wish to disable rotation changes from the HMD you can disable “Lock to HMD” in the Component’s properties. 19
  • 20. Performance Considerations: For the VR experience to feel smooth, your game needs to run on 75 hz (Oculus DK2) or even 90 hz. (HTC Vive and Oculus CV1) depending on the device. To see the current framerate type in “stat fps” or “stat unit” (for more detailed breakdown) in your console when running the game. 20
  • 21. GPU Profiling: To capture a single frame with GPU timings press Ctrl+Shift+, or type in “profilegpu” in the console. This command dumps accurate timings of the GPU, you will find that certain processes are a heavy burden on the framerate (Ambient Occlusion is one common example) when using VR. The GPU Profiling & Performance and Profiling docs are a good place to learn about profiling your game. 21
  • 22. Instanced Stereo: The latest 4.11 release introduces Instanced Stereo Rendering, check the video below for a comparison video of how that works. “Basically, we’re utilizing hardware instancing to draw both eyes simultaneously with a single draw call and pass through the render loop. This cuts down render thread CPU time significantly and also improves GPU performance. Bullet Train was seeing ~15 – 20% CPU improvement on the render thread and ~7 – 10% improvement on the GPU.” – Ryan Vance. 22 To enable this feature in 4.11 and above, go to your Project Settings and look for “Instanced Stereo” under the Rendering category.
  • 23. Disable Heavy Post-Processors: Due to the demanding requirements of VR many of the advanced Post Processing features that you normally use should be disabled. To accomplish this you will need to do the following in your level. • Add a Post Process(PP) volume to your level if there is not already one there. • Select the PP volume and in the Post Process Volume section enable the Unbound option so that the settings in the PP volume will be applied to the entire level. • Expand the Settings of the Post Process Volume and then go through each section and disable any active PP settings by enabling that property by clicking on it and then set the value from the default, usually 1.0, to 0 to disable the feature. • When doing this you will not need to hit every section and set all the properties to 0. Instead first disable the really heavy hitting features like Lens Flares, Screen Space reflections, Temporal AA, SSAO, and anything else that might have an impact on performance. • While a lot of the features are disabled by setting things in your .INI this ensures that nothing will happen to performance if someone deletes the .INI by mistake. 23
  • 24. Static, Stationary and Dynamic Lighting: You should always use Static lighting and lightmaps when making a VR project as this is the cheapest option to render. If you need to use dynamic lighting make sure to limit the amount of dynamic lights to as few as possible and make sure that they never touch one another. If you have an outdoor scene set your directional light to dynamic instead of stationary and then turn on Cascading Shadow Maps and set then adjust the settings to be as low as possible while still giving you shadows. This is going to take a lot of trial and error to get correct. 24
  • 25. Fake shadows if you can: Using things like fake blob shadow drop to simulate dynamic shadows are a good general rule in order to keep VR project running at frame. 25 Blob shadow example. Image by Eric Chadwick
  • 26. VFX in VR: Some VFX techniques like using SubUV Textures to simulate fire or smoke do not hold up well when viewed in VR. In many cases it can be more desirable to use static meshes emitters instead of 2D sprite particles to simulate VFX's like explosions or smoke trails. Near field effects, or effects that happen very close to the camera can work well in VR but only when the effects are made up of Static Meshes particles. 26
  • 27. Again, VR Learning Resources for Unreal Engine: Docs: ▪ Getting Started With VR ▪ UE4 VR Index Page ▪ VR Best Practices ▪ VR Cheat Sheets ▪ Oculus Quick Starts ▪ GearVR Quick Starts Video: ▪ Integrating the Oculus Rift into UE4 ▪ UE4 Support Stream - Developing for VR ▪ 2015 UE4 - VR and Unreal Engine ▪ Unreal Engine 4 Training Stream: Up and Running with Gear VR Presentations: ▪ UE4 VR - Niklas Smedberg ▪ Lessons from Integrating the Oculus Rift into UE4 Links: ▪ Getting Started with VR in Unreal Engine 4 27

Editor's Notes

  1. The info from the docs is old and this is a feature that now works but still does not look that good. I am going to re-write this on the UDN
  2. This feature will only work in 4.11 or 4.12 as the VR team just got it working in VR.
  3. If this is grayed out it means that UE4 is not seeing your HMD. The only way to fix this is to close down UE4 and make sure that your HMD is connected and working before you launch UE4.
  4. You need to be careful when using the stat commands UE4 offers as they can not read or display what exactly is happening in the VR SDK. While the stat commands can be good for letting you know that there might be a problem, you really should use the profiling tools offered by the HMD manufacturers when you want to profile.