Does Pixie support Blobby?

Help
2010-11-23
2013-04-25
  • Hi,

    I'm trying to render a Blobby with pixie but the primitive seems to be ignored (without any warning or error message). Does pixie support the blobby primitive?.

    This is the example I am trying..

    Display "untitled" "framebuffer" "rgba"
    Format 250 250 1
    Projection "perspective" "fov" 30
    ShadingRate 1
    LightSource "distantlight" 1 "intensity" 1.5 "from" 
                                 "to"
    Translate  -0.2 0 5
    Rotate 0   1 0 0
    Rotate 0   0 1 0
    Scale 1 1 -1
    WorldBegin
        TransformBegin
            #Sphere 0.5 2 -2 360
            Blobby 3
                [1001 0
                 1001 16
                 1001 32
                 0 3   0 1 2]
                [1 0 0 0  0 1 0 0  0 0 1 0 -0.5  0.2  0.0 0.4
                 1 0 0 0  0 1 0 0  0 0 1 0  0.9  0.5  0.0 0.4
                 1 0 0 0  0 1 0 0  0 0 1 0  0.5 -0.5  0.0 0.4]
               
                "Cs"
        TransformEnd
    WorldEnd

     
  • Richard Layman
    Richard Layman
    2010-11-26

    I tried your code, and several others, and they all came up with the same result… nothing, just like what you got. This can mean one of several things - it's missing, it was there but broken later, or they wrote the parser to see the string but never got around to actually adding the code to render it. My guess is the later but I would have to look at the code to see for sure and I'm a little too busy at the moment to do that. If it's in the 3.2 spec it should be in Pixie and it seems like I have a faint memory of testing blobbys years ago but that might only be my mind playing tricks on me.

     
  • Thanks for your response.

    I have search into the code, and found this in the file src/ri/rendererContext.cpp:

    void    CRendererContext::RiBlobbyV(int nleaf,int ncode,int code[],int nflt,float flt[],int nstr,const char *str[],int n,const char *tokens[],const void *params[]) {
        if (CRenderer::netNumServers > 0)   return;
        error(CODE_INCAPABLE,"Blobby primitives are not currently supported\n");
    }
    

    So, it's clear now that it is not supported.  But, at least,  it should write something in the console indicating that it's unsuported.

    Thanks anyway. Regards.

     
  • Richard Layman
    Richard Layman
    2010-11-27

    Yep, that's what I thought; they parsed it and made a placeholder but never did the code. I've never really looked into the Pixie code that much but it's pretty evident that 'CRender::netNumServers > 0' should be 'CRender::netNumServers = 0', that's why there's no error message. I'm guessing that your local machine counts as a render server so netNumServers is 1. I'm sure someone will tell me if I'm wrong ;)

     
  • Richard Layman
    Richard Layman
    2010-11-27

    Whoops, how stupid of me, it should be 'CRender::netNumServers == 0'.

     
  • C assignation strikes again!!! ;-)