Top Banner
From Unity3D to Unreal Engine 4 Martin Pernica | @martindeveloper
36

From Unity3D to Unreal Engine 4

Jul 08, 2015

Download

Technology

Martin Pernica

Presentation from GDS 2014 about how our team is more effective with UE4.
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: From Unity3D to Unreal Engine 4

From Unity3D to Unreal Engine 4Martin Pernica | @martindeveloper

Page 2: From Unity3D to Unreal Engine 4

Who am I?

• Martin Pernica • @martindeveloper

• Lead developer in Soulbound Games • Rendering • GPGPU • Engine extensions • Game code

• … and sometimes CEO

Page 3: From Unity3D to Unreal Engine 4

First things first

• Disclaimer – this presentation is not intended as “Unity3D hate” or „UE4 promotion“! • Only reflect our experience with Unity3D and UE4

Page 4: From Unity3D to Unreal Engine 4

Let's start …

• Unity3D is widely used game engine • It has free edition and is easy to use • We used to work with Unity3D for two years

• On the other hand UE4 is paid and have royalties • And working with UE4 can be difficult for new users

• So why we decided move from Unity3D to UE4?

Page 5: From Unity3D to Unreal Engine 4

Indie

Page 6: From Unity3D to Unreal Engine 4

Indie budget

• We are small indie team with limited resources

• For Unity3D subscription we pay 225 USD per month • And per seat! • And no royalties

• For UE4 subscription we pay 19 USD per month • Also per seat • With 5% royalties

Page 7: From Unity3D to Unreal Engine 4

DRM

• In Unity3D is user limited only for 2 PC • When we cancel subscription, we cant use Unity3D Pro anymore

• In UE4 you can use unlimited number of PC • When we cancel UE4 subscription, we can still use UE4 and we

can also release the game!

Page 8: From Unity3D to Unreal Engine 4

Team workflow

Page 9: From Unity3D to Unreal Engine 4

• In our small team, effectivity is key element in development

• There are some areas where we are more effective with UE4 • Materials • Game logic • Visual quality • Engine programming

Team workflow

Page 10: From Unity3D to Unreal Engine 4

Team workflow - materials

Page 11: From Unity3D to Unreal Engine 4

• Graphic: “Hey programmer, I need this material to be more shiny” • Programmer: “Okay, tomorrow I will send you new shader”

• Tomorrow

• Graphic: “Thanks for new shader, but I think the previous version was better” • Programmer opens window and jumps …

Team workflow - materials

Page 12: From Unity3D to Unreal Engine 4

• Graphic designer needs to tune materials by yourself but it is really hard to teach them (read as impossible) ShaderLab, CG, GLSL or HLSL …

• UE4 by default contains powerful material editor • Yes, you can buy material editor for Unity3D, but why?

• Material editor needs to be by default feature

Team workflow - materials

Page 13: From Unity3D to Unreal Engine 4

• So we switched from “Hey” material workflow to UE4 material editor • Results are better, because designer can test more versions by himself

Team workflow - materials

Page 14: From Unity3D to Unreal Engine 4

Team workflow – game logic

Page 15: From Unity3D to Unreal Engine 4

• Game logic is often biggest code you need to write in your project • You need to write it, test it with level/game designer and update it

• Unity3D was good with quick iteration and with high-level full featured language – C# • But this was not enough for us

Team workflow – game logic

Page 16: From Unity3D to Unreal Engine 4

• Our goal was same as materials workflow – give game designer tool to create game using “modules” • Modules can be configurable

• Properties

• Modules are created by programmer • In native C++ • The C++ can be also problem for many programmers

• Game designer can modify game flow, in-game actions and etc

Team workflow – game logic

Page 17: From Unity3D to Unreal Engine 4

• In Unity3D we used “public properties” for more configurable game logic • But it was not enough • We also have to develop editor extensions for more configurable

game logic

• But in UE4 we have built-in solution - Blueprints

Team workflow – game logic

Page 18: From Unity3D to Unreal Engine 4

• Blueprints in UE4 are exactly what we needed • Blueprints are visual scripting tool/language

• Not suitable for most programmers (because we <3 code) • But excellent tool for game/level designers

Team workflow – game logic

Page 19: From Unity3D to Unreal Engine 4

• Programmer will create “modules” with configurable properties • Modules are standalone and with maximum configurable properties

• Game designer will use this “modules” to create game logic

Team workflow – game logic

Page 20: From Unity3D to Unreal Engine 4

• So we eliminated workflow when programmer needs to update game logic in code and send (push) new code to designer for testing

Team workflow – game logic

Page 21: From Unity3D to Unreal Engine 4

• How our modules works? • Blueprints are not “overhead” free • So critical logic is implemented in C++

• And in BP we only implement “call chain” of modules and some events

• And also, in Unity3D you can buy extension for visual scripting, but we want full featured engine where core features are “first-class-citizens” not only extensions

Team workflow – game logic

Page 22: From Unity3D to Unreal Engine 4

Engine programming

Page 23: From Unity3D to Unreal Engine 4

Source code and hot fixes

• If you use UE4 you have full access to engine source code (expect third party libraries)

• What does it meant to our team?

Page 24: From Unity3D to Unreal Engine 4

Source code and hot fixes

• We can modify the internal features of engine • Or also implement our custom features • Not a big deal for small teams but is it useful for us

• For example we adding new features to BP system, modifying engine UI and we implementing our custom C/C++ libraries

Page 25: From Unity3D to Unreal Engine 4

Source code and hot fixes

• But the better thing is – we can “hot fix” engine by our own • If you encourage the bug in Unity3D you need to report it and wait, and wait,

and wait

Page 26: From Unity3D to Unreal Engine 4

Source code and hot fixes

• At last but not least – engine is developed not only by Epic itself but also by community

• Which means the new features/bug fixes are more frequently released

Page 27: From Unity3D to Unreal Engine 4

Source code and hot fixes

• And official Epic UE roadmap is public on Trello! • And you can vote for your features

Page 28: From Unity3D to Unreal Engine 4

Visual quality

Page 29: From Unity3D to Unreal Engine 4

Visual quality

• Some projects already switched from Unity3D to UE4 because better renderer and overall visual quality – Republic Sniper or Eve: Valkyrie …

• Why?

Page 30: From Unity3D to Unreal Engine 4

Visual quality – Republic Sniper

Page 31: From Unity3D to Unreal Engine 4

Visual quality – Republic Sniper

Page 32: From Unity3D to Unreal Engine 4

Visual quality

• This notes are compared to Unity3D 4.*, not 5!

• UE4 features: • Fully implemented DirectX 11 • Physically-based shading

• IES lighting profiles • GI

• GPU particles • Particles light

• Temporal AA • Multi-threaded renderer • Dynamic occlusion culling (using frustum culling)

Page 33: From Unity3D to Unreal Engine 4

Others

• We have really great experience with UE4 email support and also with forum and answers hub • Often Epic staff comes to discussion and helps

• In the past we send some questions (email) about next-gen console development to UE4 and also to Unity3D support • For reaction from Unity3D we waited about 1 and half week! • For reaction from UE4 we waited about 1 hour

• BTW: For nearly same questions we waited about 1 month for reactions from CryEngine team …

Page 34: From Unity3D to Unreal Engine 4

Conclusion

• UE4 is not option for everybody and also is not silver bullet for potential problems with Unity3D

• But in our team we increased effectivity by using UE4 than Unity3D

Page 35: From Unity3D to Unreal Engine 4

Q & A

Page 36: From Unity3D to Unreal Engine 4

Thank for your attention!www.soulboundgames.com

@soulboundgames