David Lanier - 2007-08-16

Hi,

The DSO functions return types are different in Pixie compared to others RenderMan compliant renderer such as AIR, Aqsis, 3Delight...

The body function returns an integer while in Pixie it doesn't return anything.

I mean to compile the sample DSO myfun I have to use :

#if DL3D_PIXIE
    #define RETURN0
    #define RETURN1
#else
        //AIR, Aqsis, 3Delight,...
    #define RETURN0 return 0;
    #define RETURN1    return 1;
#endif

Then in the function's body :

extern "C" SHADEOP(myfun_f) {
    float *result = (float *) argv[0];
    float *input = (float *) argv[1];
    result[0] = (input[0] + input[1] + input[2]) / (float) 3;
    RETURN0
}
While not a burden, it could be fine to have the same function prototype than others RenderMan compliant renderers.

Thank you.
Best regards,
David Lanier
Plug-ins & Shaders Development company
http://www.dl3d.com