authoring of procedural rocks in the blacksmith realtime short

104

Upload: vesselin-efremov

Post on 07-Jan-2017

2.291 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: Authoring of procedural rocks in The Blacksmith realtime short
Page 2: Authoring of procedural rocks in The Blacksmith realtime short

Authoring of procedural environments in The Blacksmith real time short

Veselin EfremovUnity Technologies

Page 3: Authoring of procedural rocks in The Blacksmith realtime short

About...

● Veselin Efremov● “The Blacksmith”

real time short

Page 4: Authoring of procedural rocks in The Blacksmith realtime short
Page 5: Authoring of procedural rocks in The Blacksmith realtime short

This talk...

● Overview○ common approaches for environment authoring in

games○ available tools

● Objective● The method we used: pipeline description

○ A: High quality unique objects○ B: Quick variation for backdrop objects

● Applications and opportunities

Page 6: Authoring of procedural rocks in The Blacksmith realtime short

Overview

Common approaches in current gamesCan we go procedural?

Page 7: Authoring of procedural rocks in The Blacksmith realtime short

Overview

Common approaches in current games

● current state (summer 2014)● previous generation games

Page 8: Authoring of procedural rocks in The Blacksmith realtime short

Overview

Common approaches in current games

● manually sculpted● photogrammetry

Page 9: Authoring of procedural rocks in The Blacksmith realtime short
Page 10: Authoring of procedural rocks in The Blacksmith realtime short
Page 11: Authoring of procedural rocks in The Blacksmith realtime short
Page 12: Authoring of procedural rocks in The Blacksmith realtime short

Overview

Common approaches in current games

● manually sculpted● photogrammetry

Page 13: Authoring of procedural rocks in The Blacksmith realtime short

Overview

Common approaches in current games

● photogrammetry○ hard to do properly, especially bigger cliffs○ limited man power in production team - 1 artist○ needs scouting for suitable real-world objects○ often soft edges on big objects

Page 14: Authoring of procedural rocks in The Blacksmith realtime short
Page 15: Authoring of procedural rocks in The Blacksmith realtime short

Overview

State of procedural environment assetsWe looked at:

● Terragen● Vue

Page 16: Authoring of procedural rocks in The Blacksmith realtime short

Overview

State of procedural environment assets

We looked at some Terragen and Vue user galleries

Page 17: Authoring of procedural rocks in The Blacksmith realtime short
Page 18: Authoring of procedural rocks in The Blacksmith realtime short
Page 19: Authoring of procedural rocks in The Blacksmith realtime short
Page 20: Authoring of procedural rocks in The Blacksmith realtime short
Page 21: Authoring of procedural rocks in The Blacksmith realtime short
Page 22: Authoring of procedural rocks in The Blacksmith realtime short
Page 23: Authoring of procedural rocks in The Blacksmith realtime short

Objective

To author rock formations which are:

● natural looking● as detailed as our budget allows (2048; 4096

textures)● not time consuming to make. Not a modeler!

Page 24: Authoring of procedural rocks in The Blacksmith realtime short

Pipeline

Use-case:

A: High quality unique objectsB: Variation in backdrop objects

Page 25: Authoring of procedural rocks in The Blacksmith realtime short
Page 26: Authoring of procedural rocks in The Blacksmith realtime short

Pipeline

Unique objects

● A procedural generation tool to create the hi-poly object ● Mesh exported and cleaned up● Automatically optimised and auto-unwrapped

Page 27: Authoring of procedural rocks in The Blacksmith realtime short

Pipeline

Unique objects

● Projection of Normal map, AO map● Low poly mesh, normal map and AO map to dDo → a

base set of textures● Substance Painter – particle brushes for adding specific

features in the texture (e.g. leaks)

Page 28: Authoring of procedural rocks in The Blacksmith realtime short

Pipeline

Unique objects

● A terrain generation software to author the object● Mesh exported and cleaned up● Automatically optimised and auto-unwrapped

Page 29: Authoring of procedural rocks in The Blacksmith realtime short

PipelineTerragen

Martin Huisman

http://www.cgscenery.com/

Page 30: Authoring of procedural rocks in The Blacksmith realtime short
Page 31: Authoring of procedural rocks in The Blacksmith realtime short

Pipeline

Unique objects

● A procedural generation tool to create the hi-poly object ● Mesh exported and cleaned up in MeshLab (free tool)● Automatically optimised and auto-unwrapped

Page 32: Authoring of procedural rocks in The Blacksmith realtime short
Page 33: Authoring of procedural rocks in The Blacksmith realtime short
Page 34: Authoring of procedural rocks in The Blacksmith realtime short
Page 35: Authoring of procedural rocks in The Blacksmith realtime short

Pipeline

Unique objects

● A procedural generation tool to create the hi-poly object ● Mesh exported and cleaned up● Automatically optimised and auto-unwrapped in ZBrushIntermediate optimization step in MeshLab if the polycount is too great

Page 36: Authoring of procedural rocks in The Blacksmith realtime short
Page 37: Authoring of procedural rocks in The Blacksmith realtime short
Page 38: Authoring of procedural rocks in The Blacksmith realtime short

Pipeline

Unique objects

● Projection of Normal map, AO map in xNormal● Low poly mesh, normal map and AO map to dDo → a

base set of textures● Substance Painter – particle brushes for adding specific

features in the texture (e.g. leaks)

Page 39: Authoring of procedural rocks in The Blacksmith realtime short
Page 40: Authoring of procedural rocks in The Blacksmith realtime short
Page 41: Authoring of procedural rocks in The Blacksmith realtime short

PipelineProblem

Can’t export a texture from terragen

Page 42: Authoring of procedural rocks in The Blacksmith realtime short

PipelineProblem

Can’t export a texture from terragenWe have a very dense mesh -> maybe vertex colors will do?

Page 43: Authoring of procedural rocks in The Blacksmith realtime short

Pipeline

Unique objects

● Projection of Normal map, AO map in xNormal● Low poly mesh, normal map and AO map to dDo →

albedo texture● Substance Painter – particle brushes for adding specific

features in the texture (e.g. leaks)

Page 44: Authoring of procedural rocks in The Blacksmith realtime short
Page 45: Authoring of procedural rocks in The Blacksmith realtime short
Page 46: Authoring of procedural rocks in The Blacksmith realtime short

Pipeline

Unique objects

● Projection of Normal map, AO map in xNormal● Low poly mesh, normal map and AO map to dDo → a

base set of textures● Substance Painter – particle brushes for adding specific

features in the texture (e.g. leaks)

Page 47: Authoring of procedural rocks in The Blacksmith realtime short
Page 48: Authoring of procedural rocks in The Blacksmith realtime short

Pipeline

First test

one continuous canyon segment

tons of problems

still has potential

Page 49: Authoring of procedural rocks in The Blacksmith realtime short
Page 50: Authoring of procedural rocks in The Blacksmith realtime short
Page 52: Authoring of procedural rocks in The Blacksmith realtime short

Pipeline

After some experiments...

one rock wall

very promising

Page 53: Authoring of procedural rocks in The Blacksmith realtime short

Add image

Page 54: Authoring of procedural rocks in The Blacksmith realtime short
Page 55: Authoring of procedural rocks in The Blacksmith realtime short

Pipeline

After some experiments...

single object instanced, scaled, rotated, squashed

Page 56: Authoring of procedural rocks in The Blacksmith realtime short
Page 57: Authoring of procedural rocks in The Blacksmith realtime short

Pipeline

After some experiments...

rock slate for the shore

Page 58: Authoring of procedural rocks in The Blacksmith realtime short
Page 59: Authoring of procedural rocks in The Blacksmith realtime short
Page 60: Authoring of procedural rocks in The Blacksmith realtime short

Nuisances

Page 61: Authoring of procedural rocks in The Blacksmith realtime short

OBJ takes forever to save and load

Terragen -> PLYMeshLab -> OBJ3DS Max -> FBX

Page 62: Authoring of procedural rocks in The Blacksmith realtime short

PipelineQuick and easy custom backdrop objects

Page 63: Authoring of procedural rocks in The Blacksmith realtime short

PipelineUse-case B:We create a generic, reusable set of textures (albedo, specular, smoothness, normal and occlusion maps), and apply it to a large variety of in-game assets.

Page 64: Authoring of procedural rocks in The Blacksmith realtime short
Page 65: Authoring of procedural rocks in The Blacksmith realtime short
Page 66: Authoring of procedural rocks in The Blacksmith realtime short

Pipeline1. Several 16bit height maps are exported from Terragen

and made tileable (Photoshop)2. A basic shape is created in 3DS Max and is tessellated.3. The height map is used to displace it. Simple planar

mapping is applied.4. Automatic optimization is used to create the final low

poly mesh.

Page 67: Authoring of procedural rocks in The Blacksmith realtime short

Pipeline5. The normals from the original (smooth) mesh are

copied.6. A shader for procedurally mixing a second set of tileable

textures is applied to add variety (snow, moss, sand, dust, etc.)

7. Vertex alpha and colors are used for manual per instance control for additional color variation.

Page 68: Authoring of procedural rocks in The Blacksmith realtime short
Page 69: Authoring of procedural rocks in The Blacksmith realtime short
Page 70: Authoring of procedural rocks in The Blacksmith realtime short
Page 71: Authoring of procedural rocks in The Blacksmith realtime short

Problem:

Since it’s displaced from a height map, there are stretches

Page 72: Authoring of procedural rocks in The Blacksmith realtime short
Page 73: Authoring of procedural rocks in The Blacksmith realtime short
Page 74: Authoring of procedural rocks in The Blacksmith realtime short
Page 75: Authoring of procedural rocks in The Blacksmith realtime short

Problem:

Wasn’t really a problem in our case

Maybe it’s worth exploring using vector displacement instead of height in the future

Page 76: Authoring of procedural rocks in The Blacksmith realtime short
Page 77: Authoring of procedural rocks in The Blacksmith realtime short

Problem:

All the shapes shading info comes from the normal map The normal map is projected from a plane

How do we make it work for any geometry?

Page 78: Authoring of procedural rocks in The Blacksmith realtime short
Page 79: Authoring of procedural rocks in The Blacksmith realtime short

Solution:

Project the normals from the original mesh, before it was displaced

Used Noors Normal Thiefhttp://www.scriptspot.com/3ds-max/scripts/noors-normal-thief

Page 80: Authoring of procedural rocks in The Blacksmith realtime short
Page 81: Authoring of procedural rocks in The Blacksmith realtime short
Page 82: Authoring of procedural rocks in The Blacksmith realtime short

To recap:

Page 83: Authoring of procedural rocks in The Blacksmith realtime short
Page 84: Authoring of procedural rocks in The Blacksmith realtime short
Page 85: Authoring of procedural rocks in The Blacksmith realtime short
Page 86: Authoring of procedural rocks in The Blacksmith realtime short
Page 87: Authoring of procedural rocks in The Blacksmith realtime short
Page 88: Authoring of procedural rocks in The Blacksmith realtime short
Page 89: Authoring of procedural rocks in The Blacksmith realtime short
Page 90: Authoring of procedural rocks in The Blacksmith realtime short

Application● various environments

○ canyons○ rocky deserts○ caves○ icebergs○ …

● teams of any size○ cost-efficient, fast, and high quality

Page 91: Authoring of procedural rocks in The Blacksmith realtime short

Ideas to exploreIf we only had more time

● Adding details like cliffs on top of heightmap-based terrains

● Clouds - render elements

Page 92: Authoring of procedural rocks in The Blacksmith realtime short
Page 93: Authoring of procedural rocks in The Blacksmith realtime short
Page 94: Authoring of procedural rocks in The Blacksmith realtime short
Page 95: Authoring of procedural rocks in The Blacksmith realtime short

Ideas to explore● Adding details like cliffs on top of heightmap-based

terrains● Clouds - render elements

Page 96: Authoring of procedural rocks in The Blacksmith realtime short

Overview

Procedural clouds

Terragen and Vue user galleries

Page 97: Authoring of procedural rocks in The Blacksmith realtime short
Page 98: Authoring of procedural rocks in The Blacksmith realtime short
Page 99: Authoring of procedural rocks in The Blacksmith realtime short
Page 100: Authoring of procedural rocks in The Blacksmith realtime short
Page 101: Authoring of procedural rocks in The Blacksmith realtime short

Overview

Procedural clouds

We can export a lot of elements

Page 102: Authoring of procedural rocks in The Blacksmith realtime short
Page 103: Authoring of procedural rocks in The Blacksmith realtime short
Page 104: Authoring of procedural rocks in The Blacksmith realtime short

Thank you