Check the duration setting for the brush strokes. This behavior occurs, if the Alpah is not constant throughout the duration and/or stroke duration is set to anything other than "current frame".
Hmm. How do I check to see if the alpha is constant throughout the duration? And do you mean "current layer" under "source"? Once I sample a piece of the frame (holding option) it automatically switches to the name of the layer I'm working on.
My settings are Mode: normal, Channels: RGBA, Duration: constant, source: name of layer I'm painting on
As I said, this behavior is typical if the layer already has an Alpha channel and it changes over time, i.e. it is a clip or image sequence with Alpha. Other than double-check the brush and paint settings. Also make sure you do not use otehr masks and effects on the layer that may be selected in the layer display box in the right bottom corner...
Thanks for your replies, but it's not any of those things. For example, if you take a jpg, no alpha channel, no masks, just in a clean comp by itself and paint a clone stamp stroke on it and then check "paint on transparent," the whole layer disappears. Whereas with a normal, non-clone paint stroke it will turn off the BG but keep the paint.
If it matters, the point of my wanting to do this is using mocha, mocha import, and RG warp to stabilize shots for painting out wires and rigs. It wouldn't be an issue except that this combination of things results in a minor quality loss so I want to contain it to the paint strokes only.
Actually, I just figured out a workaround while writing this, for anyone who cares: the issue seems to be that you can't use the layer you're painting on as a source layer for cloning. But if you duplicate the layer, open the original in one layer window and the duplicate in another, you can use the duplicate to sample from and paint on the original. Then when you check "paint on transparent" it works as promised.
By setting Paint On Transparent to On you've set all of your strokes to clone from a layer that is now completely transparent. Open each of the layer's Effects > Paint > Clone # one by one, and in 'Stroke Options' for each set the Clone source to a layer that's actually visible.
Note to Adobe -- it'd be nice if the clone strokes, when Paint On Transparent is set to on, could still somehow use the pixel values from their now-invisible layer source. It's pretty obvious what the user intention is when they toggle that setting. IUt'd be nice and make for a less-complicated-looking composition if the user's will could be done without having to create and keep track of a separate source layer.
Hello everyone. Ok, this is my workaround to handle the Paint on transparent issue:
- Do your clone stamp work as usual. Do not check Paint on transparent yet.
- Once you're done, duplicate the layer that contains the cloning. This will obviously duplicate the whole setup but all the clone sources will be still pointing at the original layer, which might be handy in some cases.
- Activate Paint on transparent on the upper (duplicate) layer. This leaves just the clone strokes visible on that layer (yay!).
- Don't delete the original layer and use the duplicate as track matte instead. For some reason, the Clone Stamp doesn't take into account the accumulated strokes stack for its sampling when the source layer and the layer that contains the Paint effect are not the same.
- You can swap the matte layer with a Solid since we're just using its Alpha channel and this also might improve performance. Make sure the solid has the same settings (dimensions, PAR, duration) as the footage.
- If you need to make adjustments to the cloning, deactivate the track matte, adjust the original layer and then copy back the Paint effect into the matte layer so it get's updated. Activate the track matte again. Don't forget to check Paint on transparent on the matte but leave it unchecked on the original layer (otherwise it won't work).
Hopefully I made myself clear and you'll find this useful. Cheers!