On 16/06/2015 at 10:16, xxxxxxxx wrote:
User Information:
Cinema 4D Version: 15+
Platform: Windows ;
Language(s) : C++ ;
---------
I got my own renderer, it works fine in viewport and picture viewer, but it doesn't get called in material preview.
case MATPREVIEW_GENERATE_IMAGE:
{
MatPreviewGenerateImage* image = (MatPreviewGenerateImage* )data;
if (image->pDoc)
{
Int32 w = image->pDest->GetBw();
Int32 h = image->pDest->GetBh();
BaseContainer bcRender = image->pDoc->GetActiveRenderData()->GetData();
bcRender.SetFloat(RDATA_XRES, w);
bcRender.SetFloat(RDATA_YRES, h);
bcRender.SetInt32(RDATA_ANTIALIASING, ANTI_GEOMETRY);
if (image->bLowQuality)
bcRender.SetBool(RDATA_RENDERENGINE, RDATA_RENDERENGINE_PREVIEWSOFTWARE);
else
bcRender.SetInt32(RDATA_RENDERENGINE, ID_MYRENDERER);//my video post renderer ID
image->pDest->Clear(0, 0, 0);
image->lResult = RenderDocument(image->pDoc, bcRender, nullptr, nullptr, image->pDest,
RENDERFLAGS_EXTERNAL | RENDERFLAGS_PREVIEWRENDER, image->pThread);
}
return MaterialData::Message(node, type, data);
//break;
}
am I missing something?