Realistic, nice-&-grainy, close-up SAND in Iray?
I've been playing with different products and textures, but I'm still having a hard time getting good looking, high quality sand.
I've worked out how to deform a plane, which I think should be the first step. So a figere looks like they've pushed into the sand.
I think the next thing I need to do is set up a PBR texture. My best go is attached (just focusing on the ground plan), but I don't think I'm doing a good job plugging everything in correctly in the surfaces tab.
The texture I was using was this 16k one: https://ambientcg.com/view?id=Ground055S but maybe it doesn't have enough finy grainy detail? I've put the jpgs into the obvious spots in the surface tabs (normal in normal, color in color etc), but there's a lot more options than the number of jpegs.
The other thing I was expermenting with was layering a few instances of my ground surface plane, adding a cutout opacity (using the displacment.jpg because it was there) and then offset each instance a smidge in the x,y, z direction.
If anyone has any tips or tricks I'd love to hear them.
Comments
you can try making/faking some microfacet details with dual lob spec or metallic flakes
additionally, could use PBR skin shader (or any other shader that gives you two normal map layers), and then you can tile a microdetail normal map to necessary level of tiling.
microdetails from Disp map are going to need high res mesh or high amount of SubD to be visible. So depending on the mesh you applied texture to, may want to increase SubD a certain amount to visualise the effect of the details on your disp map. In your OP you mentioned using JPG. Usually you would use a higher bit depth for normal and disp maps. The PNG might be a better option. Also not sure if 16k maps are necessary for such a small area. Did you try the 8k one?
Attached is just a basic PBR set up for Iray Uber shader using the 4K PNG maps. Textures were applied to a low poly sphere primitive with high SubD. Couldnt really get granular level detail using these basic settings and 4k maps. Maybe using 8k or 16k PNG would be better. But will depend how maps were made.
Either way, layering with opacity maps seems like overcomplicating things.
In your examples it looks like it works well for distance shots!
It's taken me a while to render to testa few of things I tried. I've tried some of your other suggestions this evening. Thank you for the heads-up about the SubD, that fixed the lack of waves. I downloaded the PNG 8K to see if that would make much difference.
Then I've been going through all the different surface settings to see what they do. I made a nosiey grain PNG to feed into various slots. Tomorrow I can try the PBR skin shader wit the two normal maps.
I also saw this post about something simalar in Blender and was wondering if I could do something like that with UltraScatter: https://blender.stackexchange.com/questions/102825/creating-realistic-close-up-sand-material
I'd love to get to something like this with all the fine grains (actual photo):
You could add a dynamic surface to your sand plane, with a negative gravity, to make her sink into it some more. And check the displacement/height- map you're using. It should be a 16bit RGB image, not greyscale. I use png, which support a higher bit depth. JPEGs will always be 8bit.
I think ultrascatter gets applied to the base mesh. So because your mesh is Sub-divided and uses displacement, then you will need to bake out your high-res displaced mesh first before doing ultrascatter. I havent used ultrascatter for a while so this is mostly just my assumption.
I cant see why it wouldnt work otherwise. Could probably find a set of very low poly photogrammetry rocks to use as the grains.
I guess only thing is it might be a bit heavy to render with so many instances tho.
This person did similar: https://www.behance.net/gallery/47604793/SAND-TEST
Thank you both! Experimenting away here. I'll post some results once I get something worth show.