You need to pass through the extra channels in _request and engine. Nuke will skip calling your _request and engine() in some limited circumstances, like if the requested channels are entirely disjoint with the out_channels(), but for example, in the case where it's asking for RGBA + creatureRGBA, you need to fill in both of them, it won't take your RGBA and then copy in creatureRGBA itself. (If it were to start doing that, it would mask out the channels you don't need to fill in when it calls _request/engine).
On Wed, 8 Jun 2011 10:11:16 -0400, Colin Doncaster <co...@peregrinelabs.com> wrote: > Hi there - > > I have an op that lets the user specify what channels should be affected, > let's say RGBA. When _validate is called I set_out_channels to the desired > channels and in request I input().request the desired channels. I assume > thus far this is correct? > > What happens when a user has an input image that contains a channel/layer > that hasn't been requested by my node? For example, the input image has > creatureMatte.r/b/g and I haven't requested them and/or included them in my > output channels - does nuke just copy them to the output for me, should the > user expect to those channels to be maintained through the processing of my > op or do I need to actually use Mask_All on validate and just pass through > the data in engine if that data is to be retained? > > If I don't retain it and the user is looking at that channel, what happens? > > Cheers > > -- > Colin Doncaster > Peregrine Labs > www.peregrinelabs.com -- Abigail Brady, Senior Architect The Foundry, 48 Leicester Square, London WC2H 7TW, UK Tel: +44 (0)20 7434 0449 * Fax: +44 (0)20 7434 1550 Web: www.thefoundry.co.uk The Foundry Visionmongers Ltd Registered in England and Wales No: 4642027 _______________________________________________ Nuke-dev mailing list Nuke-dev@support.thefoundry.co.uk, http://forums.thefoundry.co.uk/ http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-dev