THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED
On 29/10/2007 at 08:14, xxxxxxxx wrote:
Here is a function that I wrote to insert a multipass channel into the render settings:
BaseContainer* HybridMPChannel(LONG multipassChannel)
{
RenderData *renderData = GetActiveDocument()->GetActiveRenderData();
if(!renderData) return NULL;
BaseContainer *rdata = renderData->GetDataInstance();
if(!rdata) return NULL;
BaseContainer bc;
BaseContainer *multipassData = rdata->GetContainerInstance(RDATA_MULTIPASS_CHANNELS);
if(!multipassData)
{
GeData *mChannels = rdata->InsData(RDATA_MULTIPASS_CHANNELS, GeData(bc));
multipassData = mChannels->GetContainer();
if(!multipassData) return NULL;
}
GeData* d = multipassData->InsData(multipassChannel,GeData(bc));
BaseContainer *channelData = d->GetContainer();
return channelData;
}
BaseContainer *buffer = HybridMPChannel(VPBUFFER_REFLECTION);
buffer->SetBool(RDATA_MULTIPASS_ACTIVE, TRUE);
You can find all of the defined LONG's for the different mp channels in the RenderData class of the SDK.
Josh