Grass - Photogrammetry based Environment Texture

Yay! Finally I managed to capture grass I am happy with :)
- I chose nice cloudy weather .. it started raining before I finished entire capture .. but hopefully I captured enough to build texture
- cause it was a bit windy, I picked low, fresh cut grass
- used tripod with arm
- I shoot perpendicular to the ground
- with focal length set to 35mm
- and aperture to 11
- I shoot really dense with about 90% of overlapping per image - I managed to take 151 images before it started rain :(
- I used markers to help myself navigate and shoot in straight lines
- I generated 37mln poly model to bake texture
- and additional 2mln poly model just to build LowPoly as my computer struggles rotating 37mln poly in real time :) (got just shitty laptop)
- I used baked normal bent map to generate height map
- I used Equalizer nodes to fix color inconsistency
and I am quite happy as it is my first texture of grass which is clean and sharp. Now need to take few more to make sure it wasn't an accident :)

My current photogrammetry workflow

My current photogrammetry workflow

Captured surface

Captured surface

Sophisticated marker I used to navigate during capture

Sophisticated marker I used to navigate during capture

Secret way to made even two of them ;)

Secret way to made even two of them ;)

Photoscan - highpoly model and image position and density (151 shots)

Photoscan - highpoly model and image position and density (151 shots)

Perpendicular shooting also covers vertical information for objects located on sides of each frame .The more height variations surface has, the the more image needs to overlap with the others.

Perpendicular shooting also covers vertical information for objects located on sides of each frame .The more height variations surface has, the the more image needs to overlap with the others.

For grass I assume overlapping should be about from 85 to even 95% - depending on amount of irregularity. The more irregular surface is, the more overlapping is needed to capture enough amount of data to process later.

For grass I assume overlapping should be about from 85 to even 95% - depending on amount of irregularity. The more irregular surface is, the more overlapping is needed to capture enough amount of data to process later.

Zbrush - lowpoly model built over highpoly

Zbrush - lowpoly model built over highpoly

Tiling and tweaking in Substance Designer

Tiling and tweaking in Substance Designer

Substance Designer graph I used to process tiled bakes to get final PBR result - (as input I used baked color, normal, ambient occlusion and bent normal map)

Substance Designer graph I used to process tiled bakes to get final PBR result - (as input I used baked color, normal, ambient occlusion and bent normal map)

PBR texture

PBR texture