ZBrushCentral

Problems with the Alpha card position when drawing

I have an alpha map that I want to use to create a seamless brush. But when I apply it to a brush, I can’t create a chain.
Untitled-2
When the position of the alpha card is vertical, it works like this:
Screenshot_1
And when the position is horizontal some part of the map goes somewhere:
Screenshot_2
How do I fix this and adjust the brush correctly?

Hello @Araders,

If you’re trying to do this with an alpha on a curve stroke, that wont work–at least not directly–unless you convert your alpha to real geometry.

The way to do this with an alpha on a brush based level is to use the Alpha Roll feature:



However, this will require finesse and a soft touch. The stroke is still subject to the way the brushes in ZBrush work, and excessive rotation may cause a smudging or smearing effect as the stroke alpha overlaps itself. The Lazy Mouse 2.0 features can help , but your alpha here is poorly shaped for this. You may be able to get cleaner results by not using Alpha Roll, and instead simply activating Lazy Mouse and adjusting the spacing of the intervals of the alpha with Stroke> Lazy Mouse> Lazy Step until you you find a value that results in no overlap.

The required orientation of the alpha may change with the situation or brush being used. Brushes like the Layer brush or a modified Deco1 brush would work well. Note that there is no feature that will deform the alpha as you are making the stroke, forcing it to conform to the path. You are merely making a stamp of the alpha at regular intervals. If those intervals overlap, it will affect how clean your results are.

That means the longer and skinnier your alpha is, the more difficult it will be to “turn” the stroke. Trying to create a tight curve with matchsticks laid end to end is much easier than trying to do it laying golf clubs end to end. Ensure your repeating alpha is as efficient as possible, with the fewest elements it actually needs to repeat a stroke. A perfectly square shaped alpha will produce better results in more situations in the program. Always aim for this if possible. The more space the repeating elements occupy in a square shaped alpha, the easier it will be to turn the stroke.



For the absolute cleanest results that also deform to a path you will need to either use real geometry, or you will need to use a UV-based approach. Real geometry in this case would also give you the option of splitting your repeating elements into individual meshes that can be drawn in succession, rather than a single long rectangular shaped alpha. This will make it easier to turn the stroke.

A UV-based approach will allow you to cleanly repeat the pattern on a piece of simple geometry that conforms to the surface, and project the color onto the target mesh. In the following example I have created a a strip of single sided polygons with the CurveTubeSnap brush, with the Brush>Modifiers> Brush Modifier set to 1 for a single strip of polys. Use the Stroke> Curve Curve Step to adjust this until it results in polygons that are as close to square shaped as possible. I split the unmasked points into a separate subtool.

I used Tool> Uv Map> Creat> UVT to create some simple repeatable UVs for the geometry, and applied the alpha as a texture. The spacing can be tweaked with VRepeat in the same menu. Get the spacing right and don’t worry about how closely the polygons rest on the surface of the mesh–it will be close enough.

Then I subdivided the strip ( the ends may contract with smoothing so make sure you have extra coverage) to smooth it, and give it enough resolution to capture the detail from the texture. Use Polypaint> Polypaint from Texture so the color is now part of the mesh itself–the projection process will not work with a texture.

You can then project the color with Subtool> Project with only Color enabled. The target mesh will need to be subdivided enough to cleanly capture the detail. Once you have the pattern applied as polypaint on the mesh you can pretty much do anything you want with it–mask it, inverse mask it and do a positive or negative inflate, convert it to polygroup, whatever. In ZBrush, Polypaint = Masking= Polygroup.

Good luck!