It is said
It's a great game. Seven years to create world horizon
And we often have to work on sundays
Ah, this is a little to the new dresses. Take talk
Uh welcome everybody
It's good to see. The house is full
You haven't done already
It's appreciated
Allow me to introduce myself
Uh, my name is xu bell sounds and I'm a principal artist during the games
We are responsible for the creation of the vegetation of horizon zero dawn
After working at great game since two thousand six
To uh as an environment artist and killed three as a shade texture artist
Um, and after these two games, at the beginning of 2011
Within the studio that started testing a prototype in what later would become a rise until dawn
I also a little bit of work on cheerful but you should also a little on and from two thousand fourteen on which
Full production on horizon zero dawn
Nice that's good
Let's see. Um. Well playing the game, you might not have a
Focused on on vegetation as much
Also a we should talk about vegetation. So let me start off with little clip to show you
And the creating
I don't have any sound. So usually it doesn't like
I have
Bother you with that
Throw
Just a little bit more
Are you ready?
Okay, um, your, oh, I get it today to him. Talk about the vegetation we create for, again
Most people have dealt with same or similar challenges when it comes to creating, simulating and rendering nature assets
Major assets are still even on this generation of hardware
Annoying offer. Some suggestions of the real world
Which is besides annoying. Also, what makes subject so interesting?
Philosophy of make more with less certainly applies here
I'm gonna string
Together
Uh but first
Uh, let me start off with some overall Information
Um
And as an artist, unable to create maintain my own feathers
Of course
Overtaking
Um, shared creation happens in my through my own shit notes
Find it
Go find the performance officials lies with the artist himself again. And the guidance of detecting
But such
Uh when it comes to the quality of the shaders, the assets as well as the performance of my work
But this one engine used for children
And we dragged present. You don't win the first second attention on a peaceful and four k on april
When we started to develop what much later would be named horizon zero dawn
This new ip worship
If the moment most fish hurt
Especially me
Up there
And seven years later I'm standing here in front of you to talk about it, um, and to talk about
Very slowly formulation creating the world fries. And the rest of the studio was busy building keep a close eye shadow for
Among study of a new piece for
Within this game, bill behind enemy lines
The one nature level and kills them shall fall can be seen as a rising star spirit
And the movement of education
We soon discovered that since education assets are not static assets assets with the latest Information on Top
Outward thing and maintaining them prove to be sleepy, difficult
We also got a good look at the performance of this nature level and learned and learned as that created for it the wrong way
Would work in the open world of rising. We really need to rethink
Before also mark the first hall beginning of placement system
We had an open running in behind enemy lines in the simplest form, but told us that without the placement system
We would not be able to create the world for rising
Not the world that we truly envisioned
The exercises, I would like to point to a dock that my colleagues, yup
With your today is well, again, russia addition
And you can find the paper uh on our website. Uh, and of course you can watch it in the ggc fold
But the short version is we created a system in which an artist can describe a large variety of
Interesting a believable environment
We want the system to be highly are detectable
It is to be fully data drive the journalist
Local stable
It
Faces and testing the scale and performance of new assets. For instance
I'm also play a link at the end of this
Presentation on the last flight
OK
From the start, when you
The simulation of nature need to be tied in with the weather system. We were designing for a game that needed to be out in game played riven
It needed to drive the vertex program of vegetation changes
So
I'm sorry
They were used locally. They were placed by hand on a way smaller scale than the way we were going to need food water horizon
The global wind force field, as we call it
A global wind force field is a computer
Running at the beginning of every frame
A bitch, three detectors. The shadows can sample
There was one sentence, three
A test player
Uh, this allows the simulation to always be at its highest resolution closest to the player
Uh, over distance, we gradually sample a 3D texture at a larger scale and at a lower resolution
I'm so beautiful
So
And
Also melt bit
This is the second cascade
We have another one for the scaling is a little bit of this one
I guess this
Show you what we do. Um
Thank you. Just saw this is the ability to simulate for different categories of specialty
Without any additional shade of logic. This allows us to set up distinctive different movement
We're divide the assets, as you can see, into three categories
Um
I told you we could simulate at four. So we england
Because special. But in the end, we use the last
Sample to a driver business and touch them
But that's a completely different doing
Um
For rendering and shading are for all intents and purposes, we only use two shades though
We actually started off, I really want to display
China everything
I will talk about grace a little bit later, but I wanted to start off with a look at the vertex program of the shaded the price of trees and plants
So we have a way to simulate wind, but still mr translate into the movement of assets on the screens
To do that, we took similar approaches describing a jeep. You james three were is gaining a population was stored in the vertical information
But can do two thousand eleven did was for the first articles and research when I was
And to this day
It was a few things that did not change during production
Let me show you what we did
Um, experimenting with the wind and looking for it in motion. In real life we found that too convincingly mimic
Decreased american
What's your motion or
Which will deal with the branches and small motion which will deal with a bunch of branches or leaves
So first
I'm because these assets are less rigid. At the top is both the bottom. So we use the height of the exodus gradient
The national movement is the branches and everything attached to it
The president is new to populate rigidity. These plants have simply put which store distance the trunk
Now we're getting to the last level, the leaves or anything that's small enough to act like leaves
What we do here in our channel is
We also use the green channel and we use it as an index. Um
Sorry
Think of it as a time of that them
We also saw a precomputed ambient occlusion in the off channel
Which useful couple of different judgements shade
After
With the vertex. Colors in place are vegetation. Shale can go to work
Over as it needs be driving through this furniture. So we ended up
Opening a a couple of variables that allowed us to tweet the animation on as a as a basis
The variables on mike and orange and is five
Enough to handle the Complete amount of variation that we have in game
Reject is an easy one lot of trees with much so certain trees need to be dial down, all booked up
For branches, we have to control
We have bent which is the motion along the vector of the wind
Um we have sweet
To the factor of the wind
Um, that we can bump up or down
The last one
I'm based on the
Strength of the wind
This to move what i've designated to be my leaves. So what you just saw in the right channel
All right, since plants in our game is exactly the same shade as trees, but are usually smaller
Uh, will you build it? A copy of ben's completely from the shelter, reducing costs
Also on want to bending into that ring
Also another big help with the shade. And is this little formula for information
A remote place by the maximum of the winning game. And we have the ability to run book, the influence of the wind
For different assets
Um, I can recall are directional feedback about the leaves of aspen trees
Um
Grace is
Um
I'm first fan
Uh
But we want our class to be geometry. Know all the planes we want
You know, it's squashed with the feed
Use force gonna bring
And we have been running it was pulled apart of our earliest prototypes
I'm and rendering of the cross to a big diaphragm
So we started the journey uh simplifying a glass bit by bit
The to be done to make more with less
And as for me, and an opera
Um
As little or as few triangles as we could
A dedicated crusher
Um
The english answering. Right now, sometimes I talk about high emotions to none
To lock out certain functionality in our shoulders on a per vote basis
For granted, that would mean that a 3 here would not have an animated video program at that distance
And also
Uh, but I'm just a little bit. Let's go to the village program
Um, we sort of our winter a force field a topic center amused hydrolysis grading to mimic which that information
We start splashing overseas of grace. And this will be our base motion
Um, but as you can see that this one will not always give us something spectacular
And we need more than this alone
What I also want to avoid is having the grass field over to one particular direction or standing still in one position
For a long period of time. This gives unwanted artifacts. And so william
Additional motion dr
A drink. But I think the fourth built
I added uh some large scale motion to
And it's
I think
A double bed
We have some small scale motion
The army and animation, large and small together account for about eighty percent of the total information
The rest comes from the winter people
On Top of a simulation. And grass also has to do a little more
I really want to avoid the player looking down on planes and having the
Bill. And the geometry disappears when looking down on a mission. And so we dropped a match bearings
Away from the camera
Like like so
To try to avoid
Goes there. Guards come in
Are reservations. Have a foot print
Of one and a half meters approximately and placing them in the world without looking at the terrain result in some unwanted clipping
Happy offers for littering soft of this. So based on the height, my power to ring, which splits the version of grace and pick space
Finally, we also do too little things
To help moving
And scaling the whole mess down
I'm explaining the assets with the terrain easier. And it gives a little performance boost
All these little programs together make up the Complete program for that program over grass
So we were measures. Sweetheart, let's move on to a shady settle on
Transparency and engines even offered assistance. Policies are expensive
And we did not have a lot of experience with bending over distances during acute and years
And vegetation
So the question was how do we handle the amount of vegetation that we know the world of horizon is going to need?
Well
First, as long as quarters
In this initial, the only path we do our Alpha test
Rendering this pass. First look at all the information
After which we only have to do is that compare when renting a joint reports without an office?
This is important, because offer this is incredibly expensive
The german shepherd is much more expensive
So
Let's analyze the frame of a game to see what that means for rendering times on the gpu
He can see a doctor of a jeep. You prefer intern
I am filtering. And if you look
In the Top right there is a placement and filtering on placement right now. So the percentage that you see here dear deal with all the assets
Please buy our present system
Technically, not all are a officer tests
Uh, we use the placement system for a lot more than only of the first location. Like this, you can bet that 95% is of a test
But look, sophie, are interested in are are deprived bus at almost ten percent over frame
And our job departs at about eleven and a half. So that
The toilet seat, close friend, rain, all this without are the only pass
That's a huge difference
A so
A book. Notice in this early on, it became clear what huge difference
The only path mate
So
We started um horizon zero dawn with signed distance of the pictures that
Could give enormous control over the size of the offer in the shade
We could a large and sugar, often sugar
Are often over distance
We did this to combat the quality decreased uh happens when the texas which is to lower middle class
Also the company we had dynamics, no leadership that could also adjust the offer on the fly
However
Every found
And we really were looking for percent just shape of
So
Let's have a look at our gpu profiler again
And here's a little bitter flavor
Course of a project
What here
It's the jeep. You probably can
The two numbers to look at here are once more the different but also the shadow policies influenced
Shadows are at almost nine percent free. The prices of six
And here is with
Dropped a few percent
So what we do to get into those
Finding a cost of adjusting are all far fewer shade
This makes sense because we already sampled it in a shaded. So many think we can get out of this street
We don't often to do this for us. And this too is described on the slide here
Process
Of the oldest image and build up a normal kitchen
Each map. Um we have sample is made by linear
I offered to sell you england is your bill and five. So dividing job and five until you found who gives the amount
With which we need to scale that map to end up with our original coverage
Sounds logical right
By
And usually presentation of a meeting
And bottom two rows
That appeared to represent the scales of a created by your own custom cover algorithm
George work. That was done by a share in our results in a single decker sample
Okay
Making your offer as small as we should be possible is with practice
But another thing to keep an eye on, especially for assets that you know
You will draw a huge amount of
Especially for classes. This simple change was a huge win
Um, abc, abc for compressed texture
That picture over there two five 6.128 comes in at 16 kilobytes without maps
Twenty one killer. But whitney maps
The version without me
Until the graphic programmed it was working on a on the ancient solution
Uh uh saw my chicken and wasn't too pleased about it. Um. So um
We went for the
Larger version
We have under them
Uh, you do really need a good ventilation solution to make this look awesome
So uh
A shout out to a paper
Programmer
This is an short
Again, I will supply a link after the talk. Uh, in my last slide
All right, let's have a look at the rest of the picture program
So I guess my engine uses the fur trading and vegetation shaders right out to these cheap offers
And the suggestions that we supply to a share
With exceptional, with the exception of grass
We also a mid pregnancy when we wonder most box
On the slide you uh you see uh we have which is a teacher too
Excuse me, donation to the lexus. A loading photo files with push a button or practice into compressor delivers files
And what you see here is a typical
So too busy seventh and busy for
Great news
If we are dealing with proper geometry, like plant this light, we do not have to do much more than we would with any of this really acid
We only have to take into account the military, a double sided
So based on the check
The normal accordingly
Where as it's rely heavily on airplanes or trying goes on feeding the normal
Incorrectly can be extremely useful in hiding the card by nature over cannabis on the grass
Uh, what we do is we just the normal of our vertices. Uh and take the absolute value of your space normal
To ensure we never uh random normal facing away from the camera
We use a nice service
Surrounding a canopy
And this is what
Um, so let's compare between the incorrect and normal normal
Um
And this is
It's highly artistic choice because you're breaking lighting and transitions in a way
Uh, but again, when dealing with approximation of geometry, it can help in hiding the simple nature of your assets
Especially on grass, when we tried a lot of things to hide the fact that it literally are
Three two drivers
We live to jump to a normal size is uh but we still do the apps on the z component of a few space normal
And again, a g for short
Bill middle
All of education in our game is colorized
And for aggression and graduation in our entire again, we have dictionary in which store sixty four because equal to
Congress the shoes of one twenty eight by a picture
Um
Apart from the conversation of vegetation which is enlarged on that flight, um
The sections also hold graduation of a rock
The rain dust
Um, the place in the world of asset uh dictates which direction to sample. So the w components
Uh different types of what we call world data
Are are captured um in one great culture that drives the components
Um n
Um, and think of this as
Choices for different types of assets within the polarization structure
I'm off at the station. I said steak one sample for the whole object, except grace, which we sample perfect
To facilitate all this, we average out the core of our beta textures to a migraine value
I'm we also have a math teacher in case there are, but we do not want jurors
Um initiator
The resulting color is the background color me to the forum color brighter. Wait for ground is bright
Foreground is dark
And this is what you get when you combine this in China
We derive our office and perfect tense
The european commission based on the vertex Alpha
I'm an variable, which for the factors we fixed at four percent dielectric
From this, we still want the little bit of arms control. So we opened up the variable
Or strange version of a translucent texture. On Top of that
The athletes way to differentiate advance between the leaves and bark should be present in a single picture
Upon brush. Would you have further questions or attempting to push a doctor? Shall we used translation selection to do similar things
The first transmission to the first
Three eggs and strain here are happening at the hotel to speak
But I just want to put them out there for classification. The last three items are open for are artist adjust
The surface thickness in formed the amount of absorption inside the surface. And the whiteness of the shattering going scattering gone once
He believes service on the other side
We can go to this
The translucent c amount
We pretty much locked the amount of diffusion for all vegetation at a certain value at some point. And we control the translucent c amount by text sample
And we also lay on top pre computer at all
On which the combination of our a objection until your story in different colors
For class again we use a derivative of the translucent and texture as a pre computed a o
And last one is a big one where we break away from attempting physical correctness is lost face
I'm
Look for the game
All right. That's sort of explain them
You know what we need for winter
Once again, when we started, we were the cute guys. So we knew how to do
This
And things like this
Even found
This
So we knew we had our work cut out for us and to stretch our legs a bit. We build ourselves and our benchmark
Annex found a video of that ad really want to share
A disappointing built, as I believe it's in the beginning
Of two thousand fourteen
How dense we want to go on and how much to them
A different accents we want to do to spawn with enough force
Um
Um but
Most of danger to the highest lord and hoping to creative enough for things of distance to make a bomb
And we continue to do this for some time during production
And then king in three two thousand fifteen
A first few fries and not only trip, but we were playing the play ball
Um
We need to do a huge organization bus on earth allergies through
All sort of software processes
Not so much on the highest note
But we have to look need to go down
Um
What we can do to improve the performance and quality of our lds without having to resort on software solutions to reduce triangles
I'm it would be gone
All of creation
So are most of thirst
So let me illustrate this a little bit better. Um
We built the lowest load of components that we want to address our tree or any other assets with
It's usually the trial court. And we spent a small amount of time sketching out
Um, anyway, so beautiful as to those
Please will you speak with throughout the middle of rising
I'm
Exchanges
So as soon as we feel that the acid works, we go into building the high resolution components needed to create a texture from
And this is an example for of branched them
We are little making. And I think that this is a branch
But this high resolution components and
As long as they match the pictures and text layout that you sketched out when you were beginning this as um
As long as they match, um
Um, and once we have all the high resolution models built and laid out, uh we we get them into my protection beijing
We'll boil on shoulders and the ability to beat down this machine to choosing to live in space
And now with these structures based on present, we return to our speed models
Which we now treat as not three
And start moving more
And first one
The little triangles you see surrounding these measures
Other lds bounding boxes were similar
With you speaking six twelve production and
To make sure the day of land property
We did not want to switch software half way through the bible or the project
Um
With a new lodging
What we did anybody notice that we had in law into the why of speech?
Really is to do, but quite full of people
Um so
We export large enough from speaking
And a o to n f d x
And then we use a custom hoodie process that we created in house
That takes a fresh take the schedule scanning data and converts the data to the vertical that I described at the beginning of this presentation
All that's left for us now is to set the extra mile and exported to our game
So
Again, we used I looked in law watches and you noticed we have
Um
Demonstration special
Um on here
OK
We use for cascades, for essentials
Um, in the compartment. This case that is
And that means that a lake of high quality shadows
Tom, oh, my education does not render in this cascade
Cascades zero and one
Our standard standard shadow maps. And we have a discount ticket
But let's talk about cascade zero and one of the standard treatments since these are the ones uh vegetation rendered into
And when entering
We do something a little bit unusual
The natural way to select load is for sheltering is distance. That camera please
This course as shadows to put noticeable, because there's no cross feeding between the most. When it comes to share a memory
However
So what we decided to do is render objects into the shadow maps
Based on fixed distances and only one object purpose gate
So every object rendered into cascade zero will not um
Every object rendered into cascade, one will select a lot as if it's 25 minutes away from the camera
Let's fix the shadow lobby
An object is in this particular cascade, it will always use the same shadow lot
If transition from one state to another
This increases render course somewhat, but it's almost completely solve the problem of shadow popping. And it was definitely worth it
And i've got a small little movie. It it goes fast. So pay attention but I also have blooming. So
You don't have to catch it the first time around, but
So there you go
Ah
So here you can see that smooth transition between
Just get zero and one
Another thing we did for vegetation and some other assets is um
We separated out
Our shuttle costs from
So um while our visual measures are
To absorb
This is a north wind to begin with
Because she can really cracked down
A motor
It's not animated anymore. So it it is as cheap as you can possibly
Um
All right. We're we're closing to a
I enjoyed um
To summarize
All of you trying or utilizing if you take steps into
Vegetation and that is the list up and down. So the the stuff that i've mentioned, the the dead prime
The the homework up and down was a big one. Um
Keep your shadow cast separate from your physical measures. Uh use your placement system
Uh, one of the things that also helped us is that we could
Which made it so
Good at a really big one for me, a so
I promise you slide with uh the references that you so
And welcome everybody to with questions too
Still
To do so
Sure
Is it working? Yes. Um
Beautiful by the way, larger room it you are a gay, I know you know my name's thomas
I was working. Yes. I I did have a question. You didn't talk about the snow or the illusion of the weight of snow on vegetation
How was that achieved? Because I
Can be impressed as I was walking down the bushes with your other with the snow on Top by hitting it. So it's just kind of wondering did you go through any kind of physical simulation
The idea to treat
The snow started off as the snow system in the shade. Will we reach liters?
Sort of pulled out a little bit of white stuff on Top
But was expensive
Where we can literally spawn in areas of heavy snow. And then uh just uh speech gave us the tools to really
Because it is dedicated to the uh uh assets
We knew it was so happy. So we just sort of push it down and gravity, gravity do its work. Okay
Let's break thank you
I'm sorry too high
Uh, separating your shadow assets from your visual rendering assets. Do you have any problems making sure that those continue to line up? And how did you solve those
Um, well, as soon as you separate them out, you have the ability to you you start optimizing your shadow casting, watching
And after that, it is pretty much a just visible
Uh thing that you need to do, uh, you know
Everything we do with the population
Um, so uh you you you'd be surprised how much you can get away with. I mean
Are
It's about doing a triangle count as a
Then you know, within the tree was also five. It's just crashing down
Those triangles and and while you know keep checking your work again and it will end up working
Cheers
Sir
So, uh, a standard for the talk
And about which you play sports. And I was
Didn't really mention the tools for artists like a video out of this and
Oh, you you iterate on your placements
But uh okay, I I I I can talk a little bit about the placement. Uh uh uh placement system runs in our editor
And it's a node based system where uh we combine all sorts of world data
Uh, and what we end up with is a density map
And it's all it's all running on gpu. And you should mention that you you just multiplying
Natural protection agency
Subtracting another texture. And so you know
You you multiply the road on Top of that. So that will become black. So the the the the forest will still have a density of one
And we learn all this stuff. And on top of
All this other stuff
Um, we we look at things like slope uh, proximity to water flow lines, all these things that you can um
Uh did that you need to make it sort of work in a realistic fashion and
We are we can bend mutant
We have one honest and beautiful
This process. So that those living not road, not river and dinner
Can start painting in a forest or in an order now where an open field, they have the ability to to to pay that. Um
Bodies. One artist defines what they gonna get when the band
So uh I'm not sure if that answers the question is answered the question because i've seen also the classroom placement
Technical and it's much more complex. It's on using it requires like cpu from to be processed stuff. It's like
You you're getting really good results also
And and it's like it's almost Free time on your side and your kind of form on the other side. What do you think the
Is there something is missing in your technical? Is it only because it's a
Your take on this and keep you
I don't think room. I I thought you believed the solution will burn in games. Also on our forces were truth
Um, something's missing for you. And what you get
Yeah, i've i've got a wish list
A s it's based on any data that we have financial
Or on the outside of the forest
A regional do a rotation based on your own culture of
A of of the river or stuff like that. But that's wonderful because once said, and i'm requesting now that direction in a single of right now
I'm so
That's okay. Did you use some kind of capture
Some kind of capital to you to make your presentation like this country
Dinner
That's photogrammetry
Um
Excuse me with more for them tree, because it was so exciting and dinner that experiment go well and living pretty wild goose that
Do you see this like
Your slow and takeshi next door. Um
I was wondering on foot to you specifically have some more champagne on the sheet for both trunk and branches and
Even like the most significant pieces of more rigid base of the tree. How do you treat game play
For that, like the shooter branch
Um
Oh, no. Like I'm in an arrow like that. Am I going to collide with the branch for instance?
Do you have a mechanical? I do that would bench newark at the conclusion is a week
Additional trains is usually just a cylinder that represents its footprint
Yeah, because we need to go to the next round the trees. And we need
I see. So you're just gonna push away if it has a force field associated with. Thank you. All right, thanks
So I'm curious about the wind force field and how
Is that exactly? Generally great gusts of wind come from the
Whether they come from
And it's all mine
Um, when I talk about a force field that it's it's it's just
Sort of blends
Must be is like thirty three. So we will start with four, three, or four zero to ten, and murdered
For two zero four children for should twenty and forty eight thirty. And we blend between those
The other young children have properties
Math
Hi
But you drag on a i'm wondering about a
It's expensive graduate having grace, getting a medic down and kept watch over and bring in
And any other dishes invention. I think we we don't have any interaction available grass, but something we want to do. Um
And it's again on on on a mental wish list for me
Yeah
Over
But we work in contact. The grass was just using the snow into the ocean where where um
Because the DOC we introduce a a system where you could
And we will look into a beauty and the changes in for a lot of options. So
So
That's it
Jeff