Thursday, 2 July 2015

Ivy experiments and dynamic weather vane

Have finally moved back home, so I can once again put more time into the project.

I re-made the ivy as a small branch which I can re-use to create ivy clusters, which I then import into the engine and use to dress the scene. Not 100% happy with it at the moment and will be redoing it again at some point, but I decided to keep it for now since it is still an improvement from the last one.

The main difference is that the current one is a simple vertical branch, which I can re-use easily to create ivy clusters, compared to the previous one which was a huge triangle shape vine with lots of leaves, maybe good as a unique piece but not for re-use.

One thing I don't like about the current one is that I made it too short, and I should have pushed the leaves out more to cover the stem and maybe add a bit more leaves in general.

It was an interesting test to try and adapt the "Hero LOD" technique from Epic's Kite Demo trees for the ivy, I think it will work quite well and look nice on close-up shots.

I experimented with some ideas for dressing the scene with the ivy clusters, it will most likely change some more sooner or later, but I wanted to try using more of it:




Another thing I wanted to try was to make the weathervane react to the wind dynamically rather than just sitting there. I grabbed the placeholder that I had and started experimenting with Blueprint. I did a rough pass on it, which more or less works besides being a bit choppy, but I know I can definitely do it better as it's nothing complicated, just need to put more time into it.


The weathervane object is split into 2 (top and bottom), the bottom is static and the top is dynamic, which is driven by the Directional Wind Actor that is set to rotate to random direction at random intervals and also random strength.




Wednesday, 1 July 2015

More Substance Designer

Obligatory tiles this time, all procedural again. Wanted more dirty/broken abandoned look, can easily make variations as well for vertex blending, for example one without broken tiles, one less or more dirty.

Didn't use much reference for this but tried to make something up. I broke it into layers as usual:

Concrete?Dirt?Dirty concrete? for the base
Tiny stones on top, I did 3 variations to vary the size and color a little bit
Large tiles, a checker pattern was used as a mask to create the white/orange color pattern
Small black tiles which are just a tweaked duplicate of the large tiles
Some of the tiles were broken off by tweaking their mask using a combination of nodes and new mask was created to add some small broken tile pieces on top
Some subtle colour variation on the tiles i.e. yellow / orange stains
Dirt all around the tiles
Dust, a bit all around but mostly spreading out of the cavities





Saturday, 27 June 2015

Learning things

Started learning 3ds Max to be able to add it into my toolset. As a dedicated Maya user since the dawn of my 3D adventures, I was a bit worried that it will be difficult to learn and Max has always seemed quite confusing to me. Surprisingly it took less than a day to figure out the UI and learn how the program works and while my muscle memory is still screwing me over from time to time I can definitely see why some people prefer Max over Maya for modelling, it is actually quite awesome.

Huge thanks to David Lesperance for the "Intro to 3ds Max" gumroad series! Would recommend it to anyone looking to pick up Max: https://gumroad.com/metalman123456123

I have also started diving more into Substance Designer, more specifically the procedural texture creation. I've been using SD for a while, but mostly only for baking and compositing/editing maps that were brought in from the outside. One of the goals I've set for the Abandoned Farmhouse scene was to learn and use Substance Designer more to create the textures procedurally (or Zbrush if I can't do it in SD) and then add some final touches in Painter, rather than using photo-sourced textures and relying a lot on Photoshop which is what I've been used to doing in the past.

I tried to create a country-side road type of material completely procedurally to replace the placeholder one I have in the scene right now, and while I can spot a lot of mistakes looking at it now, it was really fun and taught me a lot about different nodes.

The first thing was to collect clear high res reference images which I think is very important so you're not doing anything off the top of your head. I then scanned through them to figure out what makes that material recognisable, what kind of detail I will need to create etc. I also took note of any unique details that I liked which may only be present in one or few of the images I had, for example small grass patches growing out or small pieces of red brick buried in there.

Then I moved to figuring out how to create the kind of detail that I needed to do (stones, grass patches, small twigs etc), which nodes to use and how to use them. I started with working on the Normal map and then from there used the same masks to create the other maps such as Albedo.




Looking forward to exploring it more

Sunday, 21 June 2015

Some high poly modelling

Started doing some more high poly modelling, this one will be for the main door of the house




More WIP

Some more progress on the scene. Mainly working on the roofs lately, learning how houses/barns and their roofs are built, redoing some of the structural assets as well to make sure it's cleaner and reimporting parts as individual pieces rather than having them combined so I could instance them, adding some new placeholder assets in as well and iterating stuff.

Regarding the roofs, I originally planned to have corrugated metal type on the barn after looking at some references, but after some tests it just stood out too much and looked odd, so I switched to tiles. Studied the roofs in Assassin's Creed: Unity to figure out how to do them nicely so they wouldn't look flat as hell. It came down to extruding some of the tiles out, mainly around the edges of the roof to make the silhouette nicer, but also all around the roof. also selecting multiple ones in several places and extruding them in a little, and deleting some of the tiles to reveal the planks underneath which is something AC: Unity didn't do but I thought for an abandoned building it would look interesting:


(The dark patches are lightmap errors)

I tried tessellating the tiles as well since I had a height map baked out, but it looked quite awful and distorted, and it also required me to add an edge loop around every single tile to avoid it looking even more distorted, so I thought I'll stay away from it. Might experiment with a POM shader in the future though.

Right now I still need to finish them off and do some vertex blending of moss, dirt and broken tiles to break up the tiling and get the roof to look less plain.





Saturday, 13 June 2015

Photoshop PBR value swatcher


I was looking to start a swatch set to store base sRGB albedo values for different surfaces, so I wrote a quick Photoshop script to make the process faster and less tedious.

It's pretty self explanatory, but I'll quickly go through it. You can input linear values (in either 0-1 or 0-255 range) as well as names into the textfield, separated by a comma and one per line i.e.:

0.25,grass
0.04,charcoal
0.85,fresh snow

and the script will loop through them all, convert the values to sRGB and add them into your current swatch set.

There is a checkbox called Colorize, when ticked it pops up a color picker dialog for each value before adding it as a swatch, so you can tweak the color if you don't want it to be a greyscale value.

You can find the values on the charts that are available or somewhere else on the internet.

Download the script here: 
http://edpetrauskas.co.uk/downloads/pbr_value_swatcher.js

Place it in your "photoshopdirectory\Presets\Scripts" and access it through File->Scripts in Photoshop, or make an Action or something and bind it to a key :)

Monday, 8 June 2015

Puddles!

I wanted to add some puddles into the scene. I checked out the awesome article from the "Remember Me" guys (https://seblagarde.wordpress.com/2013/01/03/water-drop-2b-dynamic-rain-and-its-effects/) and it seemed pretty straight forward on how to do it, except that I wanted to have the puddles on UE4's Landscape and not a static mesh, so it quickly became a bit less straight forward :D.

While in general it worked, the main problem was that there is no way to get the value of the landscape paint layer (or at least none that I could find) the way that you can get the value of the vertex color that is painted on a static mesh. It was important because the value controls the transition between puddle and dry land in the material to tell it how saturated / opaque it is etc.

The solution was... pixelz! I created a black and white texture mask where I wanted to puddles to be and then I was able to plug it in my landscape material on top of the landscape paint layers to add the puddles in. Not the best solution, but for a small scene like this it worked well and because it was a texture, I was able to get the value of it to control parts of the puddle material where normally vertex color values would be used.

Since the landscape is pretty huge and it would require the texture mask to be gigantic in size, to get better texel density I tiled the mask on the terrain in the way where the puddles still roughly align to where I originally wanted them to be, and then any of the ones that end up repeated around are removed using another mask which can be low resolution.




I also decided it would be nice to add some subtle wind to the puddles, since the scene is a bit windy. A quick and dirty approach for now was to pan a tiling wavy normal map across puddle, which is lerped with a flat normal and the alpha of the Lerp is controlled by Time plugged into Sine nodes and randomized a little.