I thought it would be easy but it’s really not! I was just taking a noise texture to a color ramp and put it into into the Velvet BSDF. I thought that would be enough, but I’m not getting the the reflections right. Changing the “Sigma” doesn’t really do much.
I guess it really just depends on how photorealistic you need it to be. What will this velvet fabric be used for? Curtains in the background? Up-close character clothes? Furniture upholstery? Those answers will guide the approach you need to make to get the look you want.
There are tradeoffs to be made in scene/object complexity, memory usage, render time that you need to have an idea about while you are planning your scene.
I put together an example using the cloth sim and some hair particles. It has taken me a bit to tweak to get something like your reference, but it isn’t exact by any means. This has 15,000 particles and 150 child particles per parent. It rendered in 3 minutes 6 seconds on my 6 year old laptop in CPU-only mode, and it still took up 4GB of memory.
What renderer? If sigma doesn’t work, it suggests Eevee - Velvet shader only works in Cycles for now. In Cycles, my approach would be (non velvet specific) for fabrics;
Principled with high colored sheen and 0 specular. Sheen separates forward and back scatter.
Mixed with Velvet. Possibly mixed with a colored Translucent shader if it has this effect.
Possibly mixed with one or two mixed AS-Anisotropic UV tangent driven shaders of appropriate rotations for the weave.
Cycles doesn’t support “Anisotropic Diffuse/Velvet”, so we can’t make these shaders which are rotation sensitive (nap direction - bright at 0 degrees, dark at 180 degrees). This is a real effect in some velvet/velveteen and others, but impossible to simulate. You can do it with hair particles, but the sheer amount of them makes it impractical.
Then it’s a matter of just mixing the factors. Use textures for crushed effect.
Hi I plan to use it for upholstery mainly. It will be fairly up close so I don’t mind a longer render time to make it look good. I’m only doing one piece of furniture, a product shot.
That looks like Eevee. Eevee doesn’t yet support velvet and anisotropic glossy. For aniso tangent, use the tangent node. Set specular to 0 on principled since if you’re adding glossy/ansio later.
The setup below splits the shader; a velvet type shader on the left based on principled w/sheen and a generic fuzz type shader, and double aniso at different rotations and color (for visualization) on the right.
Would you mind sharing how you did yours? I tried it by using pointiness and mixing that with a high density noise texture, then mixing that with fresnel.
Sorry, a bias function is just a power function. More info on the setup here, can’t screen right now:
@Hikmet: In this case I’m adding specular in the end, outside of principled.
I’m well aware of how specular works and when to completely not use it. Fabrics visualized as a simple surface rather than the complex interactions of strands, is one case - it depends on what I observe. Shadow gaps another obvious one.
I have a faux aniso made for Eevee (free), but it doesn’t work well in all circumstances, so I didn’t include it here - it’s kinda complex. I don’t use paid addons, or even register to get something. I’m weird that way