SlideShare a Scribd company logo
Intro to Unreal
Luis Cataldi – Epic Games, Education Evangelist
Unreal Engine For Academic Use
Good Things to Know:
Unreal Engine (EULA) End User License Agreement - LINK
Assets Naming Convention – LINK
Unreal Engine 4 Coding Standard – Link
Unreal Engine 4 Hardware & Software Specifications – Link
Downloading Unreal Engine Source Code – Link
Building Unreal Engine from Source – Link
Compiling Game Projects - Link
3
Unreal Engine Learning Resources
How UE4 Online Documentation is Structured:
Overview Page - Link
Quick Start Pages – Link
Users Guides - Link
How To Pages - Link
Reference Pages - Link
Samples - Link
Tutorials - Link
APIs - Link
5
UE4’s Online Documentation
Improved metadata support
Skill level
Engine version
Sitemap filters
Checkpoints
6
Unreal Engine Release Notes:
Release Notes - Link
New Features
Performance Improvements
Platform Additions
Bug Fixes
Enhancements
Changes
7
UE4 For Unity Developers:
Unreal Engine 4 For Unity Developers – Link
Unreal Engine 4 Terminology – Link
Unreal Engine 4 Tools & Editors - Link
8
Troubleshooting Guide:
Destructible Troubleshooting Guide – LINK
Troubleshooting Launcher Problems - Link
Lighting Troubleshooting Guide – LINK
Mobile Development Troubleshooting Guide – Link
Swarm Agent Troubleshooting - Link
9
UE4 Skills Video Training Curriculum:
Basics – Link
Animation – Link
Programming - Link
Blueprints - Link
Virtual Reality – Link
Level Editing - Link
Unreal Motion Graphics (UMG) – Link
More…
10
UE4 3rd Party Curriculum:
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
11
Content Examples: - Link
12
13
Game Samples & Free Content In the Learn Tab:
● Content Examples
● The complete A Boy and His Kite
● Open World Demo Collection
● Water Planes
● Matinee environments and characters and content
● Stylized Rendering environments and content
● Realistic Rendering environments and content
● Sun Temple environments and content
● Particle Effects environments and content
● Silly Geo complete game project and content
● Multiplayer Shootout complete game project and content
● Platformer Game complete game project and content
● Swinging Ninja complete game project and content
● Vehicle Game complete game project and content
● Strategy Game complete game project and content
● SciFi Bunk environments and content
● Radial Impact complete game project and content
● And more…
14
The Entire Infiltrator Demo Now Available For Download
○ 900 Textures
○ 468 Materials
○ 637 Static Meshes
○ 20 Skeletal Meshes
○ 69 Sound Wavs
○ 181 Animation
These assets are perfect for use in academic projects including:
○ Level design classes building high fidelity gameplay spaces.
○ For high quality environment art and set dressing exercises.
○ For use in game jams and student games.
○ Perfect for dissecting professional caliber AAA UE4 sample content.
○ ...and much more.
Total Size: 4 GB
Dozens of free complete projects available through the Learn Tab:
Dozens of free complete projects available through the Learn Tab:
15
Huge Infinity Blade Collection Now Available For Download
Below is a list of specific content included in all the asset packs:
○ 1911 Textures
○ 1051 Materials
○ 1488 Static Meshes
○ 176 Skeletal Meshes
○ 1064 Particles
○ 16 Sound Wavs
○ 9 Sound Cues
○ 6 Blueprints
These assets are perfect for use in academic projects including:
○ Level design classes building gameplay spaces for mobile environments.
○ For environment art and mobile set dressing exercises.
○ For use in mobile and traditional game jams.
○ For use in student games.
○ Perfect for dissecting professional caliber mobile UE4 sample content.
○ ...and much more.
Compatibility:4.9
16
The Showdown Cinematic VR Experience Now Available For Download
Below is a list of specific content included in the download:
○ 450 Textures
○ 189 Materials
○ 161 Static Meshes
○ 5 Skeletal Meshes
○ 19 Effects
These assets are perfect for use in academic projects including:
○ VR design classes building playable spaces.
○ For VR environment art and set dressing exercises.
○ For use in VR jams.
○ For student VR games.
○ Perfect for dissecting professional caliber UE4 sample VR content.
○ ...and much more.
Total Size: 2.8 GB
Dozens of free complete projects available through the Learn Tab:
Working with AnswerHUB - Link
There are 15 full time Epic technicians working to help folks on AnswerHUB at all times, but it's
important for people asking questions to AnswerHUB to do the few things listed below.
USE THE SEARCH FIRST!
o There is a strong chance someone has run into similar or the same issue before.
Categories the issue
o Is it a BUG?
o Is it a problem with C++?
o Is it a problem with Blueprints?
o Is it a Rendering issue?
o Etc...
Good submission make AnswerHUB work
o Provide screenshots of the issue. People are visual.
o List steps to reproduce the issue.
o Take the time to be clear and explain carefully.
o Use examples of what you wish to achieve (based on known games when possible)
AnswerHUB is community driven. Help and you will be helped.
o Unreal Engine is open-source software driven by the community.
o By being active in the community, your credibility grows as a developer.
o More people help those who help others.
o Become active in the community and build Karma Points in AnswerHUB.
17
The Learn Tab:
The place to go for help.
18
Better than Google because:
It searches all of Epic Documentation
It searches the Community Wiki
It searches AnswerHUB
…provides you better answers.
** it is actually a Google gadget. ☻
The Unreal Engine Framework
20
GameInstance
GameMode
Pawn Class
HUD Class
PlayerController
Class
PlayerState
Class
GameState
Class
21
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. Any data that you
want to keep beyond levels and
matches, for example "what
player did in specific moment so
you can have consequence on
other level" should be placed in
the GameInstance.
GameInstance
GameMode
Pawn Class
HUD Class
PlayerController
Class
PlayerState
Class
GameState
Class
22
The GameMode is the definition
of the game, including things like
the game rules and win
conditions. It only exists on the
server. It typically should not have
much data that changes during
play, and it definitely should not
have transient data that clients
need to know about.
GameInstance
GameMode
Pawn Class
HUD Class
PlayerController
Class
PlayerState
Class
GameState
Class
23
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. The GameState exists on
the server and all clients and can
replicate freely to keep all
machines up to date.
GameInstance
GameMode
Pawn Class
HUD Class
PlayerController
Class
PlayerState
Class
GameState
Class
24
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.
Example data that would be
appropriate in a PlayerState
include player name, score, in-
match level for something like a
MOBA, or whether the player is
currently carrying the flag in a
CTF game. PlayerStates for all
players exist on all machines
(unlike PlayerControllers) and can
replicate freely to keep things in
sync.
GameInstance
GameMode
Pawn Class
HUD Class
PlayerController
Class
PlayerState
Class
GameState
Class
25
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").
In some cases, putting input
handling or other functionality into
the PlayerController is necessary.
The PlayerController persists
throughout the game, while the
Pawn can be transient.
For example, in deathmatch style
gameplay, you may die and
respawn, so you would get a new
Pawn but your PlayerController
would be the same. In this example,
if you kept your score on your Pawn,
the score would reset, but if you
kept your score on your
PlayerController, it would not.
GameInstance
GameMode
Pawn Class
HUD Class
PlayerController
Class
PlayerState
Class
GameState
Class
26
GameInstance
GameMode
Pawn Class
HUD Class
PlayerController
Class
PlayerState
Class
GameState
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. In the
case of splitscreen multiplayer
games, multiple Viewports share
the same screen, but each HUD
still draws to its own Viewport.
The type, or class, of HUD to use
is specified by the gametype
being used.
27
GameInstance
GameMode
Pawn Class
HUD Class
PlayerController
Class
PlayerState
Class
GameState
Class
The Pawn Class is the base class
of all Actors that can be controlled
by players or AI. A Pawn is the
physical representation of a
player or AI entity within the
world. This not only means that
the Pawn determines what the
player or AI entity looks like
visually, but also how it interacts
with the world in terms of
collisions and other physical
interactions.
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.
28
Base building blocks in the Unreal Engine
29
Actor
Base building blocks in the Unreal Engine
Any object that can be placed into a level
30
Actor
Pawn
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
31
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
32
Pawn Controller
1-to-1 Relationship
33
CharacterMovementComponent
Pawn
Character
CapsuleComponent
SkeletalMeshComponent
Etc.
Controller
1-to-1 Relationship
34
CharacterMovementComponent
Pawn
Character
Default Pawn
CapsuleComponent
SkeletalMeshComponent
Etc.
SpectatorPawn
DefaultPawnMovementComponent
StaticMeshComponent
CollisionComponent, Etc.
Controller
1-to-1 Relationship
35
CharacterMovementComponent
Pawn
Character
Default Pawn
Wheeled
Vehicle
CapsuleComponent
SkeletalMeshComponent
Etc.
VehicleMovementComponent
SkeletalMeshComponent
PhysicsHandle
Etc.
SpectatorPawn
DefaultPawnMovementComponent
StaticMeshComponent
CollisionComponent, Etc.
Controller
1-to-1 Relationship
Gameplay Framework
Quick Reference Link
Unreal Engine
Best Practices for VR
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
38
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.
39
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.
40
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.
41
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.
42
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.
43
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.
44
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.
45
Things to keep in at the front of your mind:
Check your performance constantly to ensure that you are
hitting your VR performance targets.
46
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.
47
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.
48
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.
49
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.
50
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.
51
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.
52
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.
53
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.
54
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.
55
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.
56
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.
57
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.
58
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.
59
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.
60
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.
61
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.
62

More Related Content

What's hot

はじめてのUnreal Engine 4
はじめてのUnreal Engine 4はじめてのUnreal Engine 4
はじめてのUnreal Engine 4
Shun Sasaki
 
なぜなにFProperty - 対応方法と改善点 -
なぜなにFProperty - 対応方法と改善点 -なぜなにFProperty - 対応方法と改善点 -
なぜなにFProperty - 対応方法と改善点 -
エピック・ゲームズ・ジャパン Epic Games Japan
 
Game Design Process
Game Design ProcessGame Design Process
Game Design Process
Martin Sillaots
 
Introduction to Unity3D Game Engine
Introduction to Unity3D Game EngineIntroduction to Unity3D Game Engine
Introduction to Unity3D Game Engine
Mohsen Mirhoseini
 
Phases of game development
Phases of game developmentPhases of game development
Phases of game development
Victor Terekhovskyi
 
Game Design Principle
Game Design PrincipleGame Design Principle
Game Design Principle
Naquiah Daud
 
PRESENTATION ON Game Engine
PRESENTATION ON Game EnginePRESENTATION ON Game Engine
PRESENTATION ON Game EngineDiksha Bhargava
 
Unity 3d Basics
Unity 3d BasicsUnity 3d Basics
Unity 3d Basics
Chaudhry Talha Waseem
 
Online MultiPlay Game Design
Online MultiPlay Game DesignOnline MultiPlay Game Design
猫でもわかるUnreal Engine4
猫でもわかるUnreal Engine4猫でもわかるUnreal Engine4
猫でもわかるUnreal Engine4
pafuhana 1213
 
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
 
Introduction to Game Development
Introduction to Game DevelopmentIntroduction to Game Development
Introduction to Game Development
iTawy Community
 
ロボット好き集まれ!こいつ、動くぞ。星と翼のパラドクス開発事例
ロボット好き集まれ!こいつ、動くぞ。星と翼のパラドクス開発事例ロボット好き集まれ!こいつ、動くぞ。星と翼のパラドクス開発事例
ロボット好き集まれ!こいつ、動くぞ。星と翼のパラドクス開発事例
エピック・ゲームズ・ジャパン Epic Games Japan
 
Game Project / Working with Unity
Game Project / Working with UnityGame Project / Working with Unity
Game Project / Working with UnityPetri Lankoski
 
UE4をレンダラとした趣味的スピード背景ルックデブ(UE4 Environment Art Dive)
UE4をレンダラとした趣味的スピード背景ルックデブ(UE4 Environment Art Dive)UE4をレンダラとした趣味的スピード背景ルックデブ(UE4 Environment Art Dive)
UE4をレンダラとした趣味的スピード背景ルックデブ(UE4 Environment Art Dive)
エピック・ゲームズ・ジャパン Epic Games Japan
 
出張ヒストリア ブループリントを書くにあたって大切なこと
出張ヒストリア ブループリントを書くにあたって大切なこと出張ヒストリア ブループリントを書くにあたって大切なこと
出張ヒストリア ブループリントを書くにあたって大切なこと
historia_Inc
 
猫でも分かるUE4.22から入ったSubsystem
猫でも分かるUE4.22から入ったSubsystem 猫でも分かるUE4.22から入ったSubsystem
猫でも分かるUE4.22から入ったSubsystem
エピック・ゲームズ・ジャパン Epic Games Japan
 
猫でも分かる UE4の新しいサンプル「Action RPG」について
猫でも分かる UE4の新しいサンプル「Action RPG」について猫でも分かる UE4の新しいサンプル「Action RPG」について
猫でも分かる UE4の新しいサンプル「Action RPG」について
エピック・ゲームズ・ジャパン Epic Games Japan
 
Umg ,이벤트 바인딩, Invaidation Box
Umg ,이벤트 바인딩, Invaidation BoxUmg ,이벤트 바인딩, Invaidation Box
Umg ,이벤트 바인딩, Invaidation Box
대영 노
 
Introduction to game development
Introduction to game developmentIntroduction to game development
Introduction to game development
Gaetano Bonofiglio
 

What's hot (20)

はじめてのUnreal Engine 4
はじめてのUnreal Engine 4はじめてのUnreal Engine 4
はじめてのUnreal Engine 4
 
なぜなにFProperty - 対応方法と改善点 -
なぜなにFProperty - 対応方法と改善点 -なぜなにFProperty - 対応方法と改善点 -
なぜなにFProperty - 対応方法と改善点 -
 
Game Design Process
Game Design ProcessGame Design Process
Game Design Process
 
Introduction to Unity3D Game Engine
Introduction to Unity3D Game EngineIntroduction to Unity3D Game Engine
Introduction to Unity3D Game Engine
 
Phases of game development
Phases of game developmentPhases of game development
Phases of game development
 
Game Design Principle
Game Design PrincipleGame Design Principle
Game Design Principle
 
PRESENTATION ON Game Engine
PRESENTATION ON Game EnginePRESENTATION ON Game Engine
PRESENTATION ON Game Engine
 
Unity 3d Basics
Unity 3d BasicsUnity 3d Basics
Unity 3d Basics
 
Online MultiPlay Game Design
Online MultiPlay Game DesignOnline MultiPlay Game Design
Online MultiPlay Game Design
 
猫でもわかるUnreal Engine4
猫でもわかるUnreal Engine4猫でもわかるUnreal Engine4
猫でもわかるUnreal Engine4
 
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...
 
Introduction to Game Development
Introduction to Game DevelopmentIntroduction to Game Development
Introduction to Game Development
 
ロボット好き集まれ!こいつ、動くぞ。星と翼のパラドクス開発事例
ロボット好き集まれ!こいつ、動くぞ。星と翼のパラドクス開発事例ロボット好き集まれ!こいつ、動くぞ。星と翼のパラドクス開発事例
ロボット好き集まれ!こいつ、動くぞ。星と翼のパラドクス開発事例
 
Game Project / Working with Unity
Game Project / Working with UnityGame Project / Working with Unity
Game Project / Working with Unity
 
UE4をレンダラとした趣味的スピード背景ルックデブ(UE4 Environment Art Dive)
UE4をレンダラとした趣味的スピード背景ルックデブ(UE4 Environment Art Dive)UE4をレンダラとした趣味的スピード背景ルックデブ(UE4 Environment Art Dive)
UE4をレンダラとした趣味的スピード背景ルックデブ(UE4 Environment Art Dive)
 
出張ヒストリア ブループリントを書くにあたって大切なこと
出張ヒストリア ブループリントを書くにあたって大切なこと出張ヒストリア ブループリントを書くにあたって大切なこと
出張ヒストリア ブループリントを書くにあたって大切なこと
 
猫でも分かるUE4.22から入ったSubsystem
猫でも分かるUE4.22から入ったSubsystem 猫でも分かるUE4.22から入ったSubsystem
猫でも分かるUE4.22から入ったSubsystem
 
猫でも分かる UE4の新しいサンプル「Action RPG」について
猫でも分かる UE4の新しいサンプル「Action RPG」について猫でも分かる UE4の新しいサンプル「Action RPG」について
猫でも分かる UE4の新しいサンプル「Action RPG」について
 
Umg ,이벤트 바인딩, Invaidation Box
Umg ,이벤트 바인딩, Invaidation BoxUmg ,이벤트 바인딩, Invaidation Box
Umg ,이벤트 바인딩, Invaidation Box
 
Introduction to game development
Introduction to game developmentIntroduction to game development
Introduction to game development
 

Similar to 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
Luis Cataldi
 
On Ramp to Unreal Engine
On Ramp to Unreal EngineOn Ramp to Unreal Engine
On Ramp to Unreal Engine
Unreal Engine
 
Luis cataldi-siggraph 2015
Luis cataldi-siggraph 2015Luis cataldi-siggraph 2015
Luis cataldi-siggraph 2015
Luis Cataldi
 
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
Unreal 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 Engine
Luis Cataldi
 
Knock knock on GameDev gateway! - Introduction to Game development
Knock knock on GameDev gateway! - Introduction to Game developmentKnock knock on GameDev gateway! - Introduction to Game development
Knock knock on GameDev gateway! - Introduction to Game development
Mamdouh Tarabishi
 
Knock Knock on GameDev Gate
Knock Knock on GameDev GateKnock Knock on GameDev Gate
Knock Knock on GameDev Gate
BeMyApp
 
I Develop Videogames
I Develop VideogamesI Develop Videogames
I Develop Videogames
Christian Chomiak
 
How to build Kick Ass Games in the Cloud
How to build Kick Ass Games in the CloudHow to build Kick Ass Games in the Cloud
How to build Kick Ass Games in the Cloud
Chris Schalk
 
DEF CON 24 - Allan Cecil and DwangoAC - tasbot the perfectionist
DEF CON 24 - Allan Cecil and DwangoAC -  tasbot the perfectionistDEF CON 24 - Allan Cecil and DwangoAC -  tasbot the perfectionist
DEF CON 24 - Allan Cecil and DwangoAC - tasbot the perfectionist
Felipe Prado
 
Making a game "Just Right" through testing and play balancing
Making a game "Just Right" through testing and play balancingMaking a game "Just Right" through testing and play balancing
Making a game "Just Right" through testing and play balancing
Julio Gorgé
 
Y1 gd engine_terminology
Y1 gd engine_terminologyY1 gd engine_terminology
Y1 gd engine_terminology
NeilRogero
 
Introduction to Game Programming: Using C# and Unity 3D - Chapter 3 (Preview)
Introduction to Game Programming: Using C# and Unity 3D - Chapter 3 (Preview)Introduction to Game Programming: Using C# and Unity 3D - Chapter 3 (Preview)
Introduction to Game Programming: Using C# and Unity 3D - Chapter 3 (Preview)
noorcon
 
A List of Some of the Tools Available to Create Digital Learning Games
A List of Some of the Tools Available to Create Digital Learning GamesA List of Some of the Tools Available to Create Digital Learning Games
A List of Some of the Tools Available to Create Digital Learning Games
Karl Kapp
 
06. Game Architecture
06. Game Architecture06. Game Architecture
06. Game Architecture
Amin Babadi
 
Using FireMonkey as a game engine
Using FireMonkey as a game engineUsing FireMonkey as a game engine
Using FireMonkey as a game engine
pprem
 
Y1 gd engine_terminology
Y1 gd engine_terminologyY1 gd engine_terminology
Y1 gd engine_terminology
kieranowens1997
 
GDC 2014 - Jeremy Ehrhardt, KIXEYE - Building Customer Support and Loyalty
GDC 2014 - Jeremy Ehrhardt, KIXEYE - Building Customer Support and LoyaltyGDC 2014 - Jeremy Ehrhardt, KIXEYE - Building Customer Support and Loyalty
GDC 2014 - Jeremy Ehrhardt, KIXEYE - Building Customer Support and Loyalty
SteelPangolin
 
Овчаренко Євген “Відеоігри це ефективність”
Овчаренко Євген “Відеоігри це ефективність”Овчаренко Євген “Відеоігри це ефективність”
Овчаренко Євген “Відеоігри це ефективність”
Lviv Startup Club
 

Similar to Intro to unreal with framework and vr (20)

Luis Catald IGDA Sept 2015
Luis Catald IGDA Sept 2015Luis Catald IGDA Sept 2015
Luis Catald IGDA Sept 2015
 
On Ramp to Unreal Engine
On Ramp to Unreal EngineOn Ramp to Unreal Engine
On Ramp to Unreal Engine
 
Luis cataldi-siggraph 2015
Luis cataldi-siggraph 2015Luis cataldi-siggraph 2015
Luis cataldi-siggraph 2015
 
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
 
Knock knock on GameDev gateway! - Introduction to Game development
Knock knock on GameDev gateway! - Introduction to Game developmentKnock knock on GameDev gateway! - Introduction to Game development
Knock knock on GameDev gateway! - Introduction to Game development
 
Knock Knock on GameDev Gate
Knock Knock on GameDev GateKnock Knock on GameDev Gate
Knock Knock on GameDev Gate
 
I Develop Videogames
I Develop VideogamesI Develop Videogames
I Develop Videogames
 
How to build Kick Ass Games in the Cloud
How to build Kick Ass Games in the CloudHow to build Kick Ass Games in the Cloud
How to build Kick Ass Games in the Cloud
 
DEF CON 24 - Allan Cecil and DwangoAC - tasbot the perfectionist
DEF CON 24 - Allan Cecil and DwangoAC -  tasbot the perfectionistDEF CON 24 - Allan Cecil and DwangoAC -  tasbot the perfectionist
DEF CON 24 - Allan Cecil and DwangoAC - tasbot the perfectionist
 
Pong
PongPong
Pong
 
Making a game "Just Right" through testing and play balancing
Making a game "Just Right" through testing and play balancingMaking a game "Just Right" through testing and play balancing
Making a game "Just Right" through testing and play balancing
 
Y1 gd engine_terminology
Y1 gd engine_terminologyY1 gd engine_terminology
Y1 gd engine_terminology
 
Introduction to Game Programming: Using C# and Unity 3D - Chapter 3 (Preview)
Introduction to Game Programming: Using C# and Unity 3D - Chapter 3 (Preview)Introduction to Game Programming: Using C# and Unity 3D - Chapter 3 (Preview)
Introduction to Game Programming: Using C# and Unity 3D - Chapter 3 (Preview)
 
A List of Some of the Tools Available to Create Digital Learning Games
A List of Some of the Tools Available to Create Digital Learning GamesA List of Some of the Tools Available to Create Digital Learning Games
A List of Some of the Tools Available to Create Digital Learning Games
 
06. Game Architecture
06. Game Architecture06. Game Architecture
06. Game Architecture
 
Using FireMonkey as a game engine
Using FireMonkey as a game engineUsing FireMonkey as a game engine
Using FireMonkey as a game engine
 
Y1 gd engine_terminology
Y1 gd engine_terminologyY1 gd engine_terminology
Y1 gd engine_terminology
 
GDC 2014 - Jeremy Ehrhardt, KIXEYE - Building Customer Support and Loyalty
GDC 2014 - Jeremy Ehrhardt, KIXEYE - Building Customer Support and LoyaltyGDC 2014 - Jeremy Ehrhardt, KIXEYE - Building Customer Support and Loyalty
GDC 2014 - Jeremy Ehrhardt, KIXEYE - Building Customer Support and Loyalty
 
Овчаренко Євген “Відеоігри це ефективність”
Овчаренко Євген “Відеоігри це ефективність”Овчаренко Євген “Відеоігри це ефективність”
Овчаренко Євген “Відеоігри це ефективність”
 

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 4
Luis Cataldi
 
UnrealEngine_4_hackathon
UnrealEngine_4_hackathonUnrealEngine_4_hackathon
UnrealEngine_4_hackathon
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
Luis Cataldi
 
Luis cataldi-ue4-vr-best-practices2
Luis cataldi-ue4-vr-best-practices2Luis cataldi-ue4-vr-best-practices2
Luis cataldi-ue4-vr-best-practices2
Luis Cataldi
 
Ue4 siggraph-nick-whiting
Ue4 siggraph-nick-whitingUe4 siggraph-nick-whiting
Ue4 siggraph-nick-whiting
Luis Cataldi
 
Kim libreri-siggraph 2015
Kim libreri-siggraph 2015Kim libreri-siggraph 2015
Kim libreri-siggraph 2015
Luis Cataldi
 
Luis cataldi unreal engine for educators
Luis cataldi   unreal engine for educatorsLuis cataldi   unreal engine for educators
Luis cataldi unreal engine for educators
Luis Cataldi
 

More from 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
 
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
 
Luis cataldi-ue4-vr-best-practices2
Luis cataldi-ue4-vr-best-practices2Luis cataldi-ue4-vr-best-practices2
Luis cataldi-ue4-vr-best-practices2
 
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 unreal engine for educators
Luis cataldi   unreal engine for educatorsLuis cataldi   unreal engine for educators
Luis cataldi unreal engine for educators
 

Recently uploaded

Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
MysoreMuleSoftMeetup
 
Operation Blue Star - Saka Neela Tara
Operation Blue Star   -  Saka Neela TaraOperation Blue Star   -  Saka Neela Tara
Operation Blue Star - Saka Neela Tara
Balvir Singh
 
How to Split Bills in the Odoo 17 POS Module
How to Split Bills in the Odoo 17 POS ModuleHow to Split Bills in the Odoo 17 POS Module
How to Split Bills in the Odoo 17 POS Module
Celine George
 
Fish and Chips - have they had their chips
Fish and Chips - have they had their chipsFish and Chips - have they had their chips
Fish and Chips - have they had their chips
GeoBlogs
 
The Art Pastor's Guide to Sabbath | Steve Thomason
The Art Pastor's Guide to Sabbath | Steve ThomasonThe Art Pastor's Guide to Sabbath | Steve Thomason
The Art Pastor's Guide to Sabbath | Steve Thomason
Steve Thomason
 
The approach at University of Liverpool.pptx
The approach at University of Liverpool.pptxThe approach at University of Liverpool.pptx
The approach at University of Liverpool.pptx
Jisc
 
Home assignment II on Spectroscopy 2024 Answers.pdf
Home assignment II on Spectroscopy 2024 Answers.pdfHome assignment II on Spectroscopy 2024 Answers.pdf
Home assignment II on Spectroscopy 2024 Answers.pdf
Tamralipta Mahavidyalaya
 
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
siemaillard
 
The Roman Empire A Historical Colossus.pdf
The Roman Empire A Historical Colossus.pdfThe Roman Empire A Historical Colossus.pdf
The Roman Empire A Historical Colossus.pdf
kaushalkr1407
 
1.4 modern child centered education - mahatma gandhi-2.pptx
1.4 modern child centered education - mahatma gandhi-2.pptx1.4 modern child centered education - mahatma gandhi-2.pptx
1.4 modern child centered education - mahatma gandhi-2.pptx
JosvitaDsouza2
 
The French Revolution Class 9 Study Material pdf free download
The French Revolution Class 9 Study Material pdf free downloadThe French Revolution Class 9 Study Material pdf free download
The French Revolution Class 9 Study Material pdf free download
Vivekanand Anglo Vedic Academy
 
Model Attribute Check Company Auto Property
Model Attribute  Check Company Auto PropertyModel Attribute  Check Company Auto Property
Model Attribute Check Company Auto Property
Celine George
 
Unit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdfUnit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdf
Thiyagu K
 
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
siemaillard
 
How libraries can support authors with open access requirements for UKRI fund...
How libraries can support authors with open access requirements for UKRI fund...How libraries can support authors with open access requirements for UKRI fund...
How libraries can support authors with open access requirements for UKRI fund...
Jisc
 
Template Jadual Bertugas Kelas (Boleh Edit)
Template Jadual Bertugas Kelas (Boleh Edit)Template Jadual Bertugas Kelas (Boleh Edit)
Template Jadual Bertugas Kelas (Boleh Edit)
rosedainty
 
Polish students' mobility in the Czech Republic
Polish students' mobility in the Czech RepublicPolish students' mobility in the Czech Republic
Polish students' mobility in the Czech Republic
Anna Sz.
 
ESC Beyond Borders _From EU to You_ InfoPack general.pdf
ESC Beyond Borders _From EU to You_ InfoPack general.pdfESC Beyond Borders _From EU to You_ InfoPack general.pdf
ESC Beyond Borders _From EU to You_ InfoPack general.pdf
Fundacja Rozwoju Społeczeństwa Przedsiębiorczego
 
How to Break the cycle of negative Thoughts
How to Break the cycle of negative ThoughtsHow to Break the cycle of negative Thoughts
How to Break the cycle of negative Thoughts
Col Mukteshwar Prasad
 
MARUTI SUZUKI- A Successful Joint Venture in India.pptx
MARUTI SUZUKI- A Successful Joint Venture in India.pptxMARUTI SUZUKI- A Successful Joint Venture in India.pptx
MARUTI SUZUKI- A Successful Joint Venture in India.pptx
bennyroshan06
 

Recently uploaded (20)

Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
 
Operation Blue Star - Saka Neela Tara
Operation Blue Star   -  Saka Neela TaraOperation Blue Star   -  Saka Neela Tara
Operation Blue Star - Saka Neela Tara
 
How to Split Bills in the Odoo 17 POS Module
How to Split Bills in the Odoo 17 POS ModuleHow to Split Bills in the Odoo 17 POS Module
How to Split Bills in the Odoo 17 POS Module
 
Fish and Chips - have they had their chips
Fish and Chips - have they had their chipsFish and Chips - have they had their chips
Fish and Chips - have they had their chips
 
The Art Pastor's Guide to Sabbath | Steve Thomason
The Art Pastor's Guide to Sabbath | Steve ThomasonThe Art Pastor's Guide to Sabbath | Steve Thomason
The Art Pastor's Guide to Sabbath | Steve Thomason
 
The approach at University of Liverpool.pptx
The approach at University of Liverpool.pptxThe approach at University of Liverpool.pptx
The approach at University of Liverpool.pptx
 
Home assignment II on Spectroscopy 2024 Answers.pdf
Home assignment II on Spectroscopy 2024 Answers.pdfHome assignment II on Spectroscopy 2024 Answers.pdf
Home assignment II on Spectroscopy 2024 Answers.pdf
 
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
 
The Roman Empire A Historical Colossus.pdf
The Roman Empire A Historical Colossus.pdfThe Roman Empire A Historical Colossus.pdf
The Roman Empire A Historical Colossus.pdf
 
1.4 modern child centered education - mahatma gandhi-2.pptx
1.4 modern child centered education - mahatma gandhi-2.pptx1.4 modern child centered education - mahatma gandhi-2.pptx
1.4 modern child centered education - mahatma gandhi-2.pptx
 
The French Revolution Class 9 Study Material pdf free download
The French Revolution Class 9 Study Material pdf free downloadThe French Revolution Class 9 Study Material pdf free download
The French Revolution Class 9 Study Material pdf free download
 
Model Attribute Check Company Auto Property
Model Attribute  Check Company Auto PropertyModel Attribute  Check Company Auto Property
Model Attribute Check Company Auto Property
 
Unit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdfUnit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdf
 
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
 
How libraries can support authors with open access requirements for UKRI fund...
How libraries can support authors with open access requirements for UKRI fund...How libraries can support authors with open access requirements for UKRI fund...
How libraries can support authors with open access requirements for UKRI fund...
 
Template Jadual Bertugas Kelas (Boleh Edit)
Template Jadual Bertugas Kelas (Boleh Edit)Template Jadual Bertugas Kelas (Boleh Edit)
Template Jadual Bertugas Kelas (Boleh Edit)
 
Polish students' mobility in the Czech Republic
Polish students' mobility in the Czech RepublicPolish students' mobility in the Czech Republic
Polish students' mobility in the Czech Republic
 
ESC Beyond Borders _From EU to You_ InfoPack general.pdf
ESC Beyond Borders _From EU to You_ InfoPack general.pdfESC Beyond Borders _From EU to You_ InfoPack general.pdf
ESC Beyond Borders _From EU to You_ InfoPack general.pdf
 
How to Break the cycle of negative Thoughts
How to Break the cycle of negative ThoughtsHow to Break the cycle of negative Thoughts
How to Break the cycle of negative Thoughts
 
MARUTI SUZUKI- A Successful Joint Venture in India.pptx
MARUTI SUZUKI- A Successful Joint Venture in India.pptxMARUTI SUZUKI- A Successful Joint Venture in India.pptx
MARUTI SUZUKI- A Successful Joint Venture in India.pptx
 

Intro to unreal with framework and vr

  • 1. Intro to Unreal Luis Cataldi – Epic Games, Education Evangelist
  • 2. Unreal Engine For Academic Use
  • 3. Good Things to Know: Unreal Engine (EULA) End User License Agreement - LINK Assets Naming Convention – LINK Unreal Engine 4 Coding Standard – Link Unreal Engine 4 Hardware & Software Specifications – Link Downloading Unreal Engine Source Code – Link Building Unreal Engine from Source – Link Compiling Game Projects - Link 3
  • 5. How UE4 Online Documentation is Structured: Overview Page - Link Quick Start Pages – Link Users Guides - Link How To Pages - Link Reference Pages - Link Samples - Link Tutorials - Link APIs - Link 5
  • 6. UE4’s Online Documentation Improved metadata support Skill level Engine version Sitemap filters Checkpoints 6
  • 7. Unreal Engine Release Notes: Release Notes - Link New Features Performance Improvements Platform Additions Bug Fixes Enhancements Changes 7
  • 8. UE4 For Unity Developers: Unreal Engine 4 For Unity Developers – Link Unreal Engine 4 Terminology – Link Unreal Engine 4 Tools & Editors - Link 8
  • 9. Troubleshooting Guide: Destructible Troubleshooting Guide – LINK Troubleshooting Launcher Problems - Link Lighting Troubleshooting Guide – LINK Mobile Development Troubleshooting Guide – Link Swarm Agent Troubleshooting - Link 9
  • 10. UE4 Skills Video Training Curriculum: Basics – Link Animation – Link Programming - Link Blueprints - Link Virtual Reality – Link Level Editing - Link Unreal Motion Graphics (UMG) – Link More… 10
  • 11. UE4 3rd Party Curriculum: 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 11
  • 13. 13 Game Samples & Free Content In the Learn Tab: ● Content Examples ● The complete A Boy and His Kite ● Open World Demo Collection ● Water Planes ● Matinee environments and characters and content ● Stylized Rendering environments and content ● Realistic Rendering environments and content ● Sun Temple environments and content ● Particle Effects environments and content ● Silly Geo complete game project and content ● Multiplayer Shootout complete game project and content ● Platformer Game complete game project and content ● Swinging Ninja complete game project and content ● Vehicle Game complete game project and content ● Strategy Game complete game project and content ● SciFi Bunk environments and content ● Radial Impact complete game project and content ● And more…
  • 14. 14 The Entire Infiltrator Demo Now Available For Download ○ 900 Textures ○ 468 Materials ○ 637 Static Meshes ○ 20 Skeletal Meshes ○ 69 Sound Wavs ○ 181 Animation These assets are perfect for use in academic projects including: ○ Level design classes building high fidelity gameplay spaces. ○ For high quality environment art and set dressing exercises. ○ For use in game jams and student games. ○ Perfect for dissecting professional caliber AAA UE4 sample content. ○ ...and much more. Total Size: 4 GB Dozens of free complete projects available through the Learn Tab:
  • 15. Dozens of free complete projects available through the Learn Tab: 15 Huge Infinity Blade Collection Now Available For Download Below is a list of specific content included in all the asset packs: ○ 1911 Textures ○ 1051 Materials ○ 1488 Static Meshes ○ 176 Skeletal Meshes ○ 1064 Particles ○ 16 Sound Wavs ○ 9 Sound Cues ○ 6 Blueprints These assets are perfect for use in academic projects including: ○ Level design classes building gameplay spaces for mobile environments. ○ For environment art and mobile set dressing exercises. ○ For use in mobile and traditional game jams. ○ For use in student games. ○ Perfect for dissecting professional caliber mobile UE4 sample content. ○ ...and much more. Compatibility:4.9
  • 16. 16 The Showdown Cinematic VR Experience Now Available For Download Below is a list of specific content included in the download: ○ 450 Textures ○ 189 Materials ○ 161 Static Meshes ○ 5 Skeletal Meshes ○ 19 Effects These assets are perfect for use in academic projects including: ○ VR design classes building playable spaces. ○ For VR environment art and set dressing exercises. ○ For use in VR jams. ○ For student VR games. ○ Perfect for dissecting professional caliber UE4 sample VR content. ○ ...and much more. Total Size: 2.8 GB Dozens of free complete projects available through the Learn Tab:
  • 17. Working with AnswerHUB - Link There are 15 full time Epic technicians working to help folks on AnswerHUB at all times, but it's important for people asking questions to AnswerHUB to do the few things listed below. USE THE SEARCH FIRST! o There is a strong chance someone has run into similar or the same issue before. Categories the issue o Is it a BUG? o Is it a problem with C++? o Is it a problem with Blueprints? o Is it a Rendering issue? o Etc... Good submission make AnswerHUB work o Provide screenshots of the issue. People are visual. o List steps to reproduce the issue. o Take the time to be clear and explain carefully. o Use examples of what you wish to achieve (based on known games when possible) AnswerHUB is community driven. Help and you will be helped. o Unreal Engine is open-source software driven by the community. o By being active in the community, your credibility grows as a developer. o More people help those who help others. o Become active in the community and build Karma Points in AnswerHUB. 17
  • 18. The Learn Tab: The place to go for help. 18 Better than Google because: It searches all of Epic Documentation It searches the Community Wiki It searches AnswerHUB …provides you better answers. ** it is actually a Google gadget. ☻
  • 19. The Unreal Engine Framework
  • 21. 21 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. Any data that you want to keep beyond levels and matches, for example "what player did in specific moment so you can have consequence on other level" should be placed in the GameInstance. GameInstance GameMode Pawn Class HUD Class PlayerController Class PlayerState Class GameState Class
  • 22. 22 The GameMode is the definition of the game, including things like the game rules and win conditions. It only exists on the server. It typically should not have much data that changes during play, and it definitely should not have transient data that clients need to know about. GameInstance GameMode Pawn Class HUD Class PlayerController Class PlayerState Class GameState Class
  • 23. 23 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. The GameState exists on the server and all clients and can replicate freely to keep all machines up to date. GameInstance GameMode Pawn Class HUD Class PlayerController Class PlayerState Class GameState Class
  • 24. 24 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. Example data that would be appropriate in a PlayerState include player name, score, in- match level for something like a MOBA, or whether the player is currently carrying the flag in a CTF game. PlayerStates for all players exist on all machines (unlike PlayerControllers) and can replicate freely to keep things in sync. GameInstance GameMode Pawn Class HUD Class PlayerController Class PlayerState Class GameState Class
  • 25. 25 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"). In some cases, putting input handling or other functionality into the PlayerController is necessary. The PlayerController persists throughout the game, while the Pawn can be transient. For example, in deathmatch style gameplay, you may die and respawn, so you would get a new Pawn but your PlayerController would be the same. In this example, if you kept your score on your Pawn, the score would reset, but if you kept your score on your PlayerController, it would not. GameInstance GameMode Pawn Class HUD Class PlayerController Class PlayerState Class GameState Class
  • 26. 26 GameInstance GameMode Pawn Class HUD Class PlayerController Class PlayerState Class GameState 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. In the case of splitscreen multiplayer games, multiple Viewports share the same screen, but each HUD still draws to its own Viewport. The type, or class, of HUD to use is specified by the gametype being used.
  • 27. 27 GameInstance GameMode Pawn Class HUD Class PlayerController Class PlayerState Class GameState Class The Pawn Class is the base class of all Actors that can be controlled by players or AI. A Pawn is the physical representation of a player or AI entity within the world. This not only means that the Pawn determines what the player or AI entity looks like visually, but also how it interacts with the world in terms of collisions and other physical interactions. 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.
  • 28. 28 Base building blocks in the Unreal Engine
  • 29. 29 Actor Base building blocks in the Unreal Engine Any object that can be placed into a level
  • 30. 30 Actor Pawn 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
  • 31. 31 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
  • 38. 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 38
  • 39. 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. 39 Distance Distance in Unreal Units(UU) 1 Centimeter 1 Unreal Unit 1 Meter 100 Unreal Units 1 Kilometer 100,000 Unreal Units
  • 40. 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. 40
  • 41. 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. 41
  • 42. 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. 42 Property UE4 Default Recommended VR Height: 192 CM 176 CM Width: 84 CM 68 CM
  • 43. 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. 43 Property UE4 Default Recommended VR Movement Speed: 60 M/S 24 M/S
  • 44. 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. 44 Property UE4 Default Recommended VR Base Eye Height: 180 CM 160 CM
  • 45. 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. 45
  • 46. Things to keep in at the front of your mind: Check your performance constantly to ensure that you are hitting your VR performance targets. 46
  • 47. 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. 47
  • 48. 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. 48
  • 49. 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. 49
  • 50. 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. 50
  • 51. 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. 51
  • 52. 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. 52
  • 53. 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. 53
  • 54. 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. 54
  • 55. 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. 55
  • 56. 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. 56
  • 57. 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. 57
  • 58. 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. 58 To enable this feature in 4.11 and above, go to your Project Settings and look for “Instanced Stereo” under the Rendering category.
  • 59. 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. 59
  • 60. 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. 60
  • 61. 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. 61 Blob shadow example. Image by Eric Chadwick
  • 62. 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. 62