Crok Skin Texture Steal Tutorial 🐊


Very cool demo!

A few extra things to consider in this - it may depend on which color space you work in. Also since on the last Logik Live we talked about blending modes.

The underlying technique goes back to the old photoshop days. Stills retouchers despise frequency separation (for good reason). Instead they dodge and burn, but to be non-destructive they use a 50% gray layer and ‘overlay’ blending. Then paint with a color brush set to black or white at 2% opacity. Any color that is darker than 50% gray burns the image, any color that is brighter dodges. Works fantastic.

So when you create your gray texture with CrokSkin and blend it, that’s exactly what happens. You have the texture dodge and burn the original image procedurally, following the pattern you created.

Actually the overlay blend mode is defined as ‘multiply if B < 0.5 or screen if B > 0.5’, which shows why the 0.5 is critical in this process. And screen is the equivalent of A+B - A*B (easy to find in the Nuke merge node docs).

So that creates two potential pitfalls:

  • When you desaturate the Crok Skin it has to be centered around 0.5 in the waveform scope. Often it does, but not always. It depends on the base color you selected. If it doesn’t, you could just gain it up/down so you center the texture around 0.5. You already have a color node for the desat, so you can just do it there.

  • This 0.5 threshold only works in Rec709. Once you get into a linear color space 0.5 is not the magic number anymore. Also, your clip color space, and the color space of the Crok Skin node need match, another possible reason why you might see issues.

In the first pass, I actively color managed to Rec709, watched the scope and in the color node where you desat the skin patch, I had to reduce gain to 95 to center the scope around 0.5. You can just do that by eye watching how well it blends.

When I disable the color mgmt node and switch CrokSkin to ACEScg, it looks right if my waveform is centered around 0.68. I’m not sure as to the math behind 0.68 right now, but I’m sure we can figure it out what the magic number is for various colorspaces and gammas.

The main point though is you need to find the neutral point that matches your color space, and the whole comp needs to be in sync color space wise (the comp node assumes you feed it correctly on that aspect).

BTW if you want to non-destructively retouch in Flame like this, go to the Paint Node, set your brush to ‘Shade’. If you use a 0.5 gray nothing happens. Set it 0.45 and you burn the image, set it 0.55 and it dodges the image. If you diverge from neutral tones you can compensate for color shifts. The Shading mode already takes care of the math, so leave blend mode at ‘Blend’, no need to set it to ‘Overlay’.


Ah, yes! I did not consider color space. :sweat_smile:

Thanks for sharing!

Actually, this reminded me that there’s an even easier way. Ivar actually made two shaders, the second one of which is not as well known. But it handles the integration, takes care of the math with the 0.5 and also includes the blur of the original.

Called Crok_Reskin. This is how the node tree looks with that. If you read the notes of Crok_Reskin it’s based on a node tree by John Ashby.

Just read through the shader code, and it uses a divide/multiply sequence to create the highpass image. Also has a toggle to visualize it.