0
$\begingroup$

I've been wrestling with the Coloramp converter node while creating a separate shader. I'm using this shader to create procedural freckles that can allow me to adjust size, position, shape and color of the freckles so I can reuse it in a variety of characters/creatures (or more). The problem is, I need one of the colors to be an Alpha channel, just clear. The shader is applied to a vertex group that lets me control placement. enter image description hereThe shader block feeds into the mix of the rest of the skin but I have blocked it out separate to make it easier to get to find and adjust for the situation:enter image description here

When I originally set it up, it laid it down great and let me make any adjustments, the problem was, the second color was white and showed on the vertex painted area. I tried everything I could think of to change the white to an alpha but had wacked results. So, I changed the second color to match the blush on the cheeks, which works pretty well in this one case but is not a solution, there will be times, and characters, where that would not work well. Here's the coloramp second color white, and another blush:enter image description here enter image description here

It would be great to have that as a separate shader that can be saved to the library but, I need that alpha channel on it in these cases. Any suggestions?

Tip-o-the-Hat to Christopher Bennet, pointed me in the right direction and kicked my brain onto the right path. Here's how it endedenter image description here

$\endgroup$

1 Answer 1

1
$\begingroup$

If you want just the "freckles", use a B&W ColorRamp, and use that as a mix factor between your freckle color (can be any shader, I used Diffuse BSDF in the example), and a Transparent shader. Don't forget to change the Blend Mode to something other than Opaque if you're using EEVEE (Right side):

Freckle

If you want overlay the "freckles" over any other color or image (before a shader/BSDF), use a Mix Color node and use the ColorRamp as a mix factor between your base color (or image), and the freckle color:

ColMix

$\endgroup$
6
  • $\begingroup$ Ah! That works great! Thanks. I wanted to keep it procedural with the mapping nodes because I can easily slide the field in any direction if I don't like the layout, or adjust the size to be blemishes/marks on a creature or animal. And yes, I'm using EEVEE. $\endgroup$ Jan 26, 2023 at 0:15
  • $\begingroup$ Hmmm, no, ran into an issue, looks good the way you have it but, mine feeds back into the mixers above that are carrying the rest of the skin colors. Each has an input Attribute node that specifies the appropriate vertex group lips, eye rim, etc). the string you have ends in BSDF's and I can't get the Attribute input specifying the Freckle vertex group plugged into this. I'll work on it. $\endgroup$ Jan 26, 2023 at 1:01
  • $\begingroup$ If you just want to overlay the "Freckles" over another color (or image), you can use the ColorRamp as a fix factor for a Color Mix node between your freckle color and whatever other color/image you're using, then feed that either directly into the output (unshaded), or use the color mix as the BaseColor for any BSDF. I'll update my answer with an example. $\endgroup$ Jan 26, 2023 at 1:14
  • $\begingroup$ I figured it out. at the end of your string, above the Mix Shader, I set the Attribute input above the Mix Shader, ran you r mix Shader into another Mix Shader with the Attribute of the Vertex Group as the factor and your shader and the main BSDF Shader I had as the two shaders in the last mix, then out to the Material Output. Thanks for getting me on the right path, I hadn't used mixed shaders that much and it was off to the side of my thinking...your tip opened my mind up. $\endgroup$ Jan 26, 2023 at 1:18
  • $\begingroup$ Hey, whatever works. Glad I could at least help point out the door, even if you're the one who walked through it ;) $\endgroup$ Jan 26, 2023 at 1:20

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .