Hello :
I want to create a 3rd-part AOV Node to render Engine Octane
, Octane teams provide a lillte example in C++ , but unfortunately I only use python and cann't understand and translate it into python version .
Can you provide a bare-bone code for this snippets in python ?
Any help will be great :blush:
BaseList2D *addAOVnode(BaseList2D *parent, Int32 slotID, Int32 TYPE, Octane::RenderPassId passId, Bool incCnt)
{
BaseContainer *bc = parent->GetDataInstance();
Int32 pType = bc->GetInt32(AOV_NODE_TYPE);
BaseList2D *shd = addOctaneShaderToNode(parent, slotID, ID_OCTANE_AOV_NODE);
if(TYPE==AOV_TYPE_COMP_GROUP) { shd->SetName(AOV_GROUP_NAME); }
else if(TYPE==AOV_TYPE_COMP_AOV) { shd->SetName(AOV_COMP_NAME); }
else if(TYPE==AOV_TYPE_COMP_AOV_LAYER) { shd->SetName(AOV_COMPLAYER_NAME); }
else if(TYPE==AOV_TYPE_COLOR_OUT) { shd->SetName(AOV_COLOROUT_NAME); }
else if(TYPE==AOV_TYPE_IMAGE_AOV_OUT) { shd->SetName(AOV_IMAGEOUT_NAME); }
else if(TYPE==AOV_TYPE_COMP_LIGHTMIXER) { shd->SetName(AOV_IMAGEOUT_NAME); }
else if(TYPE==AOV_TYPE_RENDER_AOV_OUT)
{
shd->SetParameter(DescLevel(AOV_RENDER_PASS_ID), GeData((Int32)passId), DESCFLAGS_SET_0);
shd->SetName(AOV_RENDEROUT_NAME+S(":[")+ rPassName(passId)+"]");
}
setParameterLong(*shd, AOV_NODE_TYPE, TYPE);
if(incCnt)
{
Int32 cnt = bc->GetInt32(AOV_INPUT_COUNT);
setParameterLong(*parent, AOV_INPUT_COUNT, cnt+1);
}
return shd;
}