Stucco - Photogrammetry based Environment Material

A surface of white painted stucco. This one was a bit rough so its slightly darker when compared with a clean painted one. Since I thought that ambient light doesnt cast any shadows I decided to capture this one in an old fashined way with bare hands without the flash and cross polarisation. I was wrong and in result I had to remove AO shadows from the albedo using baked Ambient Occlusion as a mask later Since I didnt mount the color checker on the wall, just took one reference sho, the color checker based luminance calibration wasnt correct so I had to readjust it later using the color calibration technique I am experimenting with.
To capture this surface I took 350 24MPx images with quite wide focal length of 24mm.
Since the wall wasnt tall enough I wasnt able to capture fill 180x180 cm I planned.. not to mention that the bottom part of the wall was a bit useless as was dirty and covered with grass. So I used the ArtEngines AI for both, tiling and reconstrction for missing piece of the wall. So I masked the areas I wanted to be rebuilt based on remaining data and run the AI. As usual it did an awesome job within a few seconds.
I also used some gradient removal to flatten the color and height to make material more generic and useful when applied to 3D objects later.
As usual, since I was happy with the final result I added this material to my material's library:
https://gum.co/WJAQy
as 'gb_StuccoWhitePainted308'
Cheers!
Grzegorz

PBR preview: Albedo / Normal / Height / Roughness / Ambient Occlusion

PBR preview: Albedo / Normal / Height / Roughness / Ambient Occlusion

Tiling preview rendered in Marmoset Toolbag 4

My photogrammetry workflow (more details on my youtube channel: https://www.youtube.com/c/GrzegorzBaranArt

My photogrammetry workflow (more details on my youtube channel: https://www.youtube.com/c/GrzegorzBaranArt

The Source - white, painted stucco wall I captured to turn it into another seamless, generic, PBR environment material. I used rulers as a scale reference.

The Source - white, painted stucco wall I captured to turn it into another seamless, generic, PBR environment material. I used rulers as a scale reference.

The source - the bottom part of the wall with my shoe used as a scale reference for height details. I cut this part from the actual material since it was too dirty.

The source - the bottom part of the wall with my shoe used as a scale reference for height details. I cut this part from the actual material since it was too dirty.

The source - surface details

The source - surface details

The Source - this is a close up shot of very flat and well painted part of stucco wall just to show the level of mico-surface complexity.

The Source - this is a close up shot of very flat and well painted part of stucco wall just to show the level of mico-surface complexity.

PhotoLab-image preprocessing and initial color calibration. Since I didnt capture the color checker mounted directly on the wall I wasnt able to fully use it to calibrate exact luminance levels. In result I had to adjust mismatched color information later

PhotoLab-image preprocessing and initial color calibration. Since I didnt capture the color checker mounted directly on the wall I wasnt able to fully use it to calibrate exact luminance levels. In result I had to adjust mismatched color information later

Agisoft Metashape -photogrammetry reconstruction based on 350 24MPx images. I didnt use anything to stabilise the camera and simply kept it in bear hands. I also didnt use cross polarisation but in result I had to manualy fix some AO shadows I could avoid

Agisoft Metashape -photogrammetry reconstruction based on 350 24MPx images. I didnt use anything to stabilise the camera and simply kept it in bear hands. I also didnt use cross polarisation but in result I had to manualy fix some AO shadows I could avoid

ZBrush - a low poly coverage set based on captured ruler. As you can see the wall was too short to give enough data in height, but since I used the AI to fill missing data it was totally fine

ZBrush - a low poly coverage set based on captured ruler. As you can see the wall was too short to give enough data in height, but since I used the AI to fill missing data it was totally fine

Unity ArtEngine - the red color is the mask which tells the AI to rebuild these areas using remaining information. So I marked the top missing part of the wall as well as the dirty bottom. I also marked a few spots I didnt like or which were to repetitive

Unity ArtEngine - the red color is the mask which tells the AI to rebuild these areas using remaining information. So I marked the top missing part of the wall as well as the dirty bottom. I also marked a few spots I didnt like or which were to repetitive

The material and texture-set was added to my material's library:
https://gum.co/WJAQy
as 'gb_StuccoWhitePainted308'

The material and texture-set was added to my material's library:
https://gum.co/WJAQy
as 'gb_StuccoWhitePainted308'