unity bootcamp post mortem

68
Amilton Diesel, Raphael Baldi, Maurício Longoni Aquiris Game Studio Bootcamp Postmortem Developing AAA games in Unity 3

Upload: amilton-diesel

Post on 18-Nov-2014

2.823 views

Category:

Technology


4 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Unity bootcamp post mortem

Amilton Diesel, Raphael Baldi, Maurício LongoniAquiris Game Studio

Bootcamp PostmortemDeveloping AAA games in Unity 3

Page 2: Unity bootcamp post mortem

Amilton DieselAquiris Game [email protected]

Briefing

Page 3: Unity bootcamp post mortem

Meeting Unity 3

Amilton DieselAquiris Game [email protected]

• Demonstrate features• Lightmapping• OCC System• Tree Editor• Audio Filters

• Deffered Rendering• Post-Processing FX• Core Optimizations• Streaming Content• Many more…

Page 4: Unity bootcamp post mortem

Main Concept

Amilton DieselAquiris Game [email protected]

• Military Trainning• Dynamic loadings• Stunning Graphics• Cutscenes

Page 5: Unity bootcamp post mortem

Main Navigation Board

Page 6: Unity bootcamp post mortem

Enemies

Amilton DieselAquiris Game [email protected]

• Not really smart• Not boring either• Original design

Page 7: Unity bootcamp post mortem

Enemies

Page 8: Unity bootcamp post mortem

Amilton DieselAquiris Game [email protected]

Planning the Graphics

Page 9: Unity bootcamp post mortem

Storyboard

Amilton DieselAquiris Game [email protected]

• Detailed Cutscenes• First color guide

Page 10: Unity bootcamp post mortem

Detailed Cutscenes Storyboard

Page 11: Unity bootcamp post mortem

Color Palette

Amilton DieselAquiris Game [email protected]

• Timeline oriented• Detailed mood board

Page 12: Unity bootcamp post mortem

Timeline color palette

Page 13: Unity bootcamp post mortem

Collecting References

Amilton DieselAquiris Game [email protected]

• Search for real places

• Filter pictures

Page 14: Unity bootcamp post mortem
Page 15: Unity bootcamp post mortem
Page 16: Unity bootcamp post mortem

Planning Spaces

Amilton DieselAquiris Game [email protected]

• Composing a level by pictures

• Connecting buildings

Page 17: Unity bootcamp post mortem

Timeline color palette

Page 18: Unity bootcamp post mortem

Composition Rules

Amilton DieselAquiris Game [email protected]

• One place to remember

• Same drawing and photography rules

Page 19: Unity bootcamp post mortem

Symmetrical Perspective

Page 20: Unity bootcamp post mortem

Divine Proportions and Rule of Thirds

Page 21: Unity bootcamp post mortem

Unreachable Illusion

Amilton DieselAquiris Game [email protected]

• Large scale feeling• More interesting to

explore

Page 22: Unity bootcamp post mortem

The Unreachable Illusion

Page 23: Unity bootcamp post mortem

Popular examples

Page 24: Unity bootcamp post mortem

Amilton DieselAquiris Game [email protected]

Environment Art

Page 25: Unity bootcamp post mortem

Modeling

Amilton DieselAquiris Game [email protected]

• Individual Prefabs• Unity as a level

design tool

Page 26: Unity bootcamp post mortem

Texture Scale

Amilton DieselAquiris Game [email protected]

• Real world scale• 1cm² = 1px²

Page 27: Unity bootcamp post mortem

Texture Division

Amilton DieselAquiris Game [email protected]

• Tileable vs unique textures

• Advantages and disadvantages

Page 28: Unity bootcamp post mortem

The Half Life 2 like

Amilton DieselAquiris Game [email protected]

• Tileable textures• Flexible prototyping• Fast production• Less VRAM required• Save triangles

• No mesh combining• Less realistic

Page 29: Unity bootcamp post mortem

The Unreal 3 like

Amilton DieselAquiris Game [email protected]

• Unique textures• Flexible prototyping• Slow production• Huge VRAM required• Increase triangles

• Good for batching• More realistic

Page 30: Unity bootcamp post mortem

The Bootcamp like

Amilton DieselAquiris Game [email protected]

• Middle ground solution

• Advantages from both sides

Page 31: Unity bootcamp post mortem

Shading

Amilton DieselAquiris Game [email protected]

• Reflective/Bumped/Specular• Ambient Cubemap

Page 32: Unity bootcamp post mortem

Realistic Vegetation

Amilton DieselAquiris Game [email protected]

• Using the Tree Editor• Observing nature

Page 33: Unity bootcamp post mortem

Fork shape

Page 34: Unity bootcamp post mortem

Less dense leaves

Page 35: Unity bootcamp post mortem

Lighting

Amilton DieselAquiris Game [email protected]

• Sunlight and Skylight• It’s all about colors!

Page 36: Unity bootcamp post mortem

Colors and temperature

Page 37: Unity bootcamp post mortem

Lighting Contrast

Amilton DieselAquiris Game [email protected]

• Dark vs Bright• Cold vs Warm• Shadow vs Light

Page 38: Unity bootcamp post mortem

Raphael Lopes BaldiAquiris Game [email protected]

Coding

Page 39: Unity bootcamp post mortem

Coding

Raphael Lopes BaldiAquiris Game [email protected]

• Programming language

• Soldier• Enemies• Smart objects

• Streaming and scene loading

• Decal System

Page 40: Unity bootcamp post mortem

Programming language• JavaScript• Widespread in the community• Easier to learn

Raphael Lopes BaldiAquiris Game [email protected]

Page 41: Unity bootcamp post mortem

• Third person shooter• Realistic movements• Very specific camera

behaviour

Soldier Behaviour

Coding

Page 42: Unity bootcamp post mortem
Page 43: Unity bootcamp post mortem
Page 44: Unity bootcamp post mortem

Camera behaviour• Non centered character• Collide with walls• Over the shoulder effect• Highlight weapon when aiming

Raphael Lopes BaldiAquiris Game [email protected]

Page 45: Unity bootcamp post mortem
Page 46: Unity bootcamp post mortem

• Turrets• Training dummies• Easy to place and

setup• Editor tools to setup

range and attack areas

• Why use mechanical enemies instead of real soldiers?

Enemies

Coding

Page 47: Unity bootcamp post mortem

Smart objects• Objects that “know” what must be done

under certain conditions• Barrels• Trash bags• Collectable items

Raphael Lopes BaldiAquiris Game [email protected]

Page 48: Unity bootcamp post mortem

Streaming• Web deployment• Large scenes• User must feel that the game is continuous• Loading free

Raphael Lopes BaldiAquiris Game [email protected]

Page 49: Unity bootcamp post mortem

• Very small loading steps

• “Hiccup” free solution (asynchronous loading)

• Used to compose first cut scene

Additive scenes

Coding

Page 50: Unity bootcamp post mortem

Decal system• Main use: bullet holes• Secondary use: environment enrichment• AAA titles makes extensive use of decals• Unity does not have a built in decal system

Raphael Lopes BaldiAquiris Game [email protected]

Page 51: Unity bootcamp post mortem

• May use built in projectors

• Very “expensive”• Per frame

calculations• Should use specific

shaders to work properly

Decal system

Coding

Page 52: Unity bootcamp post mortem

• References• Eric Lengyel –

Aplying Decals to Arbitrary Surfaces (Game Programming Gems 2, 2001)

• Unreal Engine• Source Engine

Decal system

Coding

Page 53: Unity bootcamp post mortem

• Technical overview• Obtain affected

surface• Space conversion• Mesh clipping• UV generation

Decal system

Coding

Page 54: Unity bootcamp post mortem

• Technical overview• Interpolate any

needed mesh property (color, tangent, normal)

• “Push” vertices to avoid depth fighting

• Combine generated meshes

Decal system

Coding

Page 55: Unity bootcamp post mortem

Occlusion CullingNothing more than meets the eye

Page 56: Unity bootcamp post mortem

How it actually helps?• Objects occluded by others are not rendered• Less Draw Calls• Less CPU overhead• Bigger frame rate

Maurício LongoniAquiris Game [email protected]

Page 57: Unity bootcamp post mortem

Picture text

Page 58: Unity bootcamp post mortem

Picture text

Page 59: Unity bootcamp post mortem

Picture text

Page 60: Unity bootcamp post mortem

Picture text

Page 61: Unity bootcamp post mortem

The Forest Challenge• Open environment• Thin objects• Not too much things to hide after

Maurício LongoniAquiris Game [email protected]

Page 62: Unity bootcamp post mortem

Picture text

Page 63: Unity bootcamp post mortem

Picture text

Page 64: Unity bootcamp post mortem

How can we go over that?• Fake!• If it looks right, it is righttm

• Take advantage of so many trees

Maurício LongoniAquiris Game [email protected]

Page 65: Unity bootcamp post mortem

We can use pretty big objects to hide thing behind dense tree sets.

Simulate Canopy

Occlusion Culling

Page 66: Unity bootcamp post mortem

Picture text

Page 67: Unity bootcamp post mortem

Picture text

Page 68: Unity bootcamp post mortem