I just finished The Last of Us a few minutes ago, what an incredible game. I wish it wasn't a console exclusive though, everybody deserves to enjoy this masterpiece. The art behind the game is just breathtaking, there were many times during the game where I simply had to stop and just stare at the scenery.
The shaders used in this game were incredible as well and I am still amazed at how realistic everything looks even though it is running on heavily dated technology. I hope to one day be as talented as any of the people who worked on this game.
Awesome work, really appreciate you posting! My thesis partner and I have been using the art book as enviro inspiration for our piece next year.
I have a question about yours blends on the high frequency tiling textures.
Are you creating the blend in photoshop (like your horizontal tiling grass/rock texture in your examples) or is this somehow handled in the engine (vertex blending, etc.)? I am looking, specifically, at the beach scene as well as the rocks sheet you posted.
JackDCaron : The blends are done with vertex maps and masks/height maps within the shader. the only thing special was the large macro map set on different uv set.
MeshModeler : Depends sometimes I start with a displacement map quickly grabbed from sourced image from cgtextures dumped into crazybump and xulpted further and sometimes I start with a full on sculpt by hand from nothing. Just whatever is needed. Basically I try to find the quickest way to the result.
Could you tell us how some of the brick buildings were made? They have a very unique look. It looks like a very large real world photo texture mapped onto the buildings, with a weird vignette at the edges unlike the in-game ssao.
Armageddon : not sure which buildings you mean or what the question is. Most brick buildings are done via vertex blends. If your talking about the distant buildings in the beach level that is matte painting placed on a 3d geo to give it some parallax. If your talking about others not sure.
rogelio for the detailed breakdown.
Understood some, and some did went over the head like Macro Normal Map.. I'll try to understand later again.
btw, Those Zbrush models. and textures are too sweet... loveeeeeed it.
Thanks again
Hey! Really inspiring thread! I have a small question: Can you show some foliage like conifer trees with wires from closer shots? If not it's ok, I'm just curious
@cmtanko from what I understand, he uses the "macro" normal, in this case the beach normal with the paths cut into it, to fill the ground with the large shapes and because the ground is so big he uses a tiling normal on the second UV set (the sand and small rocks) to create the small details in those large shapes.
Basically the initial macro normal would have to be a large resolution to have all the sand and small rocks detail in it. Instead he kept it to a smaller resolution and created a generic tiling sand normal and layered it on top in the shader using two UV sets.
Break down of of first rock sculpt.
-First did a flat concept of this to know it would tile in photoshop
-did some basic height map treatment in photoshop of what I wanted and put through crazybump did a horrible looking crazybump displacement and sent into zbrush.
-displaced it looked horrible but I used it as a general guide of where to sculpt
-used large clay tube brush
-trim dynamic
-sculpted mid details
-than small details
-than a general noise ontop with either alpha masks or noise maker.
Most are sculpted this way. The rocks and mud are mostly 100% sculpted really the initial displacement was a guide it looks nothing like the horrible displacement.
Mr Significant : those trees are not mine I think those are from somewhere else I did edits on them textures small geo fixes for my level but nothing too special. it is pretty basic conifer with a skirt geo layout.
JackDCaron: thanks for taking time to explain them, got that one now...
@ rogelio: Ohhh Lotss of thanks, we are learning great things from your stuff... Another one, that I never never understood... When you use a custom mesh for terrain, Its wayyyyy to big.. How do you do the UVs ? I'm sure you cant overlap them (so no tilable texture ?) since you'd be using unique normal and texture.
If I want to do same in UDK without using terrain, How do I do it ? (since for terrain, you dont have to do the UV thing, but in static mesh you do need that, right ?)
if you want tiling uv's on large unique terrains one approach is to scale the uv's larger than the zero to one space in the uv editor of your application. that essentially does the same thing as tiling.
another approach is to use a set of terrain modules with collision that can be jammed together to create the larger terrain. not as blend friendly but the seams can be hidden by rocks and biome assets.
The key is using two UV sets for the same geometry. There first set is closer to the 0,1 boundaries to capture the big shapes, but the resolution will be poor. Keep in mind, Rogelio's beach normal is in fact tiling so it'll help with the outlying areas.
Then a second UV set is created, in this case I made a tiling dot matrix texture (instead of "borrowing Rogelio's again ) and created a layered texture where it sits on top of the main beach normal.
Then scale up those UVs to created the minute dot texture on top of the beach normal. It's a way to get the beach texture to look super detailed and like it was actually an 4k or 8k map. instead it's 512 with a small details map blended in.
What I am wondering is how two normals can be blended correctly in Maya. Here I used multiply in the layered texture options, but I'm sure there's a different way.
Quite impressive work! Nice terrain, and nice idea using the smuge tool in photoshop on the macro normal for the terrain. It ends up looking pretty decent, may have to try that sometime for a quick erosion effect. While I haven't played your guys' game yet, I've been hearing great things. Lot's of amazing art work being posted on ZbrushCentral and Polycount now from Last of Us! Congrats :thumbup:
I really am diggin' that Mat for your Zbrush sculpts? Which is it? Thanks for the breakdown. All texture artists around the globe are rejoicing everywhere. We will hail your name while making love to our wives and our sons and daughters will be named after you.
ErichWK : As much as that sounds like an awesome praise it is creepy as hell lol. As for the mat It is just a normal mat from zbrush nothing special, I think I moved the light a bit before rendering but that was it. even the render settings are the same when you start up zbrush.
JackDCaron : nice break down pretty much that the only other differance is warping the uvs to give them directions of where those erosion went. Try selecting a couple points and do a soft selection in the uv editor rotate and warp it and see the results.
I tend to keep my programs stock and clean from extra plugins unless it starts to become a standard used thing. This helps for two reasons new plugins tend to make programs unstable and if I move to another company and that company does not have the fancy stuff well I know the main program.
^This all day^ I don't like handicapping myself with special things if I can at all avoid it.
sdmitchell : Thanks for the praise, though I do not see myself as too special too many super talented people around. I have been doing 3D before I entered the game industry and all around 16years started when I was 15 or so. I started as a level designer doing Doom, Quake, Duke Nukem, Unreal, UT, Halflife, and many others till now mostly as a user making mods and stuff. (actually first game I did content for as a user was when I was 8 or so with a game named excitebike) I have done 3D professionally only like 8 years. I always loved making stuff well before I even thought this was going to be my career. I started to take my career serious when I was doing Unreal levels.
If anyone is a UT fanatic here you might remember me more as Desperado#2 I made tons of user levels since the early Unreal to UT 2004.
Can you talk a little about how long it takes you to generate your sculpts, textures, and models? For example the erosion-channeled-sand, the moss-cliff texture, the modular rock...
This game is now tied with Half life 2 as my fav game of all time.
I still do not understand how your flowing sand texture looks so big and unique and it's only 512x512. I've read your breakdown however, the "flowing lines" normal map (macro map) doesn't look tiled at all.
You mentioned that you fixed a lot of the tiling sculpts in Photoshop to make them tile correctly. However I have read many times on the polycount forums that fixing/painting normals in Photoshop is not "correct" and the lighting won't be right.
If anyone is a UT fanatic here you might remember me more as Desperado#2 I made tons of user levels since the early Unreal to UT 2004.
yes I do know your name and level works from ut99,tacops and ut2004 etc days:).How can i forget,all of those works were aesthetically outstanding. outstanding stuff and you're still keeping up great work
This game is now tied with Half life 2 as my fav game of all time.
I still do not understand how your flowing sand texture looks so big and unique and it's only 512x512. I've read your breakdown however, the "flowing lines" normal map (macro map) doesn't look tiled at all.
You mentioned that you fixed a lot of the tiling sculpts in Photoshop to make them tile correctly. However I have read many times on the polycount forums that fixing/painting normals in Photoshop is not "correct" and the lighting won't be right.
Again. Cheers for being so generous and helpful.
The flow lines I think were left as 1024x1024 map though... It has three or four different blends ontop of it to make it not tile like grass, shrub, dirt, etc. Also the map was made with a large tile in mind so even at a normal tile rate it does not feel like it tiles. It just takes time to make sure the tile works at a far distance so it is not noticeable.
Also I warped the second uv set uvs to make the flow lines turn and blend according to the ground. and rocks on it making it even harder to see the tile.
as for editing normals in photoshop being not a thing to do... This is correct it is hard and usually leads to bad normals if your not careful. At any rate a normal map is really just directional information using rgb... If you get this concept it is possible to paint in theory a normal map... although hard... But yes you can tile them in photoshop. Or another way would be to grab a 16bit height map from your bake exporter and tile it than than process that into a normal map. many ways to take it. it really depends on your end result or use.
If you look into this very experimental method of getting normals (below linked) from real world objects you can understand that you could in theory paint a normal map or at the very least help already baked normal maps tile in photoshop. I know many people would say it is evil to clone stamp a normal map and in many cases I would say it is true, but if it works why not use it from time to time.
edit: I actually tried this on my own using a flash light on some house hold items and I came up with an interesting normal that actually worked... The only problem is all objects have color or material types. If you actually want to do this better in theory you would have to paint everything your normal mapping a Lambert white smooth paint... not very practical but still a nice science experiment. Or do a test the same way setting up a light rig in maya... also tested this out and I actually got a pretty damn good normal out of it. though time consuming. I like to test out lots of random stuff for the hell of it.
Eric Chadwick: thanks Wow at miss spellings and forum typing. I should re write that.
igi: nice to see some people still remember all that stuff. Was one of my fav and most fun times in games for sure.
What I am wondering is how two normals can be blended correctly in Maya. Here I used multiply in the layered texture options, but I'm sure there's a different way.
you can do it in maya.read this paper from Colin Barr
thank you for posting this , it saved my butt. I was hoping you could post some props, i really want to study the style on how and where you put the damages (dirt, grim and etc) on a prop. I mainly want to know on how to paint a prop dust on an prop.
Hi @Rogelio! Your textures are so amazing! I'd like to ask you a question, maybe a little about your workflow. When you create your scenes, how many textures you create by yourself, and how many textures do you take from cgtextures, for example? How do you decide which texture you should create and which can be downloaded?
@Anton_Mendelis I'm not Rogelio, but as far as I know that at least nowadays he's creating all materials (and textures) with Substance Designer. But back in the production of The Last of Us I guess texturing pipeline was more or less traditional Photoshop approach. But today the answer is to study Substance Designer to have a good grasp for the creation of (tileable) materials and textures.
@Anton_Mendelis: In the past I did a lot of my textures via photoshop and zbrush. Now I tend to do textures using substance designer and zbrush. In the end though it is all mostly the same techniques of layering and working from big forms all the way to small forms. I do still use cgtextures as a resource and others. Reference is paramount.
Replies
Awesome job
The shaders used in this game were incredible as well and I am still amazed at how realistic everything looks even though it is running on heavily dated technology. I hope to one day be as talented as any of the people who worked on this game.
I have a question about yours blends on the high frequency tiling textures.
Are you creating the blend in photoshop (like your horizontal tiling grass/rock texture in your examples) or is this somehow handled in the engine (vertex blending, etc.)? I am looking, specifically, at the beach scene as well as the rocks sheet you posted.
Thanks!
such awesome stuff!
MeshModeler : Depends sometimes I start with a displacement map quickly grabbed from sourced image from cgtextures dumped into crazybump and xulpted further and sometimes I start with a full on sculpt by hand from nothing. Just whatever is needed. Basically I try to find the quickest way to the result.
Understood some, and some did went over the head like Macro Normal Map.. I'll try to understand later again.
btw, Those Zbrush models. and textures are too sweet... loveeeeeed it.
Thanks again
Yet to play the game, but can't wait to.
Also what was your process you used for adding the moss/grass on that first flat you're showing off...
Thanks!
Sorry for ew. poor english.
Those rock tileables are mindblowing. :O
Basically the initial macro normal would have to be a large resolution to have all the sand and small rocks detail in it. Instead he kept it to a smaller resolution and created a generic tiling sand normal and layered it on top in the shader using two UV sets.
pls correct me if I am wrong here.
Break down of one texture.
Break down of of first rock sculpt.
-First did a flat concept of this to know it would tile in photoshop
-did some basic height map treatment in photoshop of what I wanted and put through crazybump did a horrible looking crazybump displacement and sent into zbrush.
-displaced it looked horrible but I used it as a general guide of where to sculpt
-used large clay tube brush
-trim dynamic
-sculpted mid details
-than small details
-than a general noise ontop with either alpha masks or noise maker.
Most are sculpted this way. The rocks and mud are mostly 100% sculpted really the initial displacement was a guide it looks nothing like the horrible displacement.
JackDCaron : yep you got it
Mr Significant : those trees are not mine I think those are from somewhere else I did edits on them textures small geo fixes for my level but nothing too special. it is pretty basic conifer with a skirt geo layout.
@ rogelio: Ohhh Lotss of thanks, we are learning great things from your stuff...
Another one, that I never never understood...
When you use a custom mesh for terrain, Its wayyyyy to big.. How do you do the UVs ? I'm sure you cant overlap them (so no tilable texture ?) since you'd be using unique normal and texture.
If I want to do same in UDK without using terrain, How do I do it ? (since for terrain, you dont have to do the UV thing, but in static mesh you do need that, right ?)
Great job!
another approach is to use a set of terrain modules with collision that can be jammed together to create the larger terrain. not as blend friendly but the seams can be hidden by rocks and biome assets.
The key is using two UV sets for the same geometry. There first set is closer to the 0,1 boundaries to capture the big shapes, but the resolution will be poor. Keep in mind, Rogelio's beach normal is in fact tiling so it'll help with the outlying areas.
Then a second UV set is created, in this case I made a tiling dot matrix texture (instead of "borrowing Rogelio's again ) and created a layered texture where it sits on top of the main beach normal.
Then scale up those UVs to created the minute dot texture on top of the beach normal. It's a way to get the beach texture to look super detailed and like it was actually an 4k or 8k map. instead it's 512 with a small details map blended in.
What I am wondering is how two normals can be blended correctly in Maya. Here I used multiply in the layered texture options, but I'm sure there's a different way.
Congrats to you and the guys at Naughty Dog for making an excellent game!
JackDCaron : nice break down pretty much that the only other differance is warping the uvs to give them directions of where those erosion went. Try selecting a couple points and do a soft selection in the uv editor rotate and warp it and see the results.
Also,
^This all day^ I don't like handicapping myself with special things if I can at all avoid it.
You guys did some great work
Thanks for the replies everyone.
sdmitchell : Thanks for the praise, though I do not see myself as too special too many super talented people around. I have been doing 3D before I entered the game industry and all around 16years started when I was 15 or so. I started as a level designer doing Doom, Quake, Duke Nukem, Unreal, UT, Halflife, and many others till now mostly as a user making mods and stuff. (actually first game I did content for as a user was when I was 8 or so with a game named excitebike) I have done 3D professionally only like 8 years. I always loved making stuff well before I even thought this was going to be my career. I started to take my career serious when I was doing Unreal levels.
If anyone is a UT fanatic here you might remember me more as Desperado#2 I made tons of user levels since the early Unreal to UT 2004.
Added to the wiki!
http://wiki.polycount.net/EnvironmentSculpting#Tiled_Cliffs_and_Grounds
Can you talk a little about how long it takes you to generate your sculpts, textures, and models? For example the erosion-channeled-sand, the moss-cliff texture, the modular rock...
Thanks for posting this. Those rock sculpts are fantastic. Great work, I ended up learning something new.
This game is now tied with Half life 2 as my fav game of all time.
I still do not understand how your flowing sand texture looks so big and unique and it's only 512x512. I've read your breakdown however, the "flowing lines" normal map (macro map) doesn't look tiled at all.
You mentioned that you fixed a lot of the tiling sculpts in Photoshop to make them tile correctly. However I have read many times on the polycount forums that fixing/painting normals in Photoshop is not "correct" and the lighting won't be right.
Again. Cheers for being so generous and helpful.
The flow lines I think were left as 1024x1024 map though... It has three or four different blends ontop of it to make it not tile like grass, shrub, dirt, etc. Also the map was made with a large tile in mind so even at a normal tile rate it does not feel like it tiles. It just takes time to make sure the tile works at a far distance so it is not noticeable.
Also I warped the second uv set uvs to make the flow lines turn and blend according to the ground. and rocks on it making it even harder to see the tile.
as for editing normals in photoshop being not a thing to do... This is correct it is hard and usually leads to bad normals if your not careful. At any rate a normal map is really just directional information using rgb... If you get this concept it is possible to paint in theory a normal map... although hard... But yes you can tile them in photoshop. Or another way would be to grab a 16bit height map from your bake exporter and tile it than than process that into a normal map. many ways to take it. it really depends on your end result or use.
If you look into this very experimental method of getting normals (below linked) from real world objects you can understand that you could in theory paint a normal map or at the very least help already baked normal maps tile in photoshop. I know many people would say it is evil to clone stamp a normal map and in many cases I would say it is true, but if it works why not use it from time to time.
http://www.zarria.net/nrmphoto/nrmphoto.html
edit: I actually tried this on my own using a flash light on some house hold items and I came up with an interesting normal that actually worked... The only problem is all objects have color or material types. If you actually want to do this better in theory you would have to paint everything your normal mapping a Lambert white smooth paint... not very practical but still a nice science experiment. Or do a test the same way setting up a light rig in maya... also tested this out and I actually got a pretty damn good normal out of it. though time consuming. I like to test out lots of random stuff for the hell of it.
Eric Chadwick: thanks Wow at miss spellings and forum typing. I should re write that.
igi: nice to see some people still remember all that stuff. Was one of my fav and most fun times in games for sure.
I'm not Rogelio, but as far as I know that at least nowadays he's creating all materials (and textures) with Substance Designer. But back in the production of The Last of Us I guess texturing pipeline was more or less traditional Photoshop approach. But today the answer is to study Substance Designer to have a good grasp for the creation of (tileable) materials and textures.