CalcVolumetric



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 04/02/2008 at 04:32, xxxxxxxx wrote:

    User Information:
    Cinema 4D Version:   9.6 10.5 
    Platform:   Windows  ;   
    Language(s) :

    ---------
    Hi,

    I need to get a depth map of my scene in CalcVolumetric on in another method during the rendering process. I know that Cinema can process this depth map but it doesn't help me since my plugin should then activate itself this multipass effect and I don't want that, and I want to use my parameters for my depth map.

    I tried first with vd->dist but in the case of a texture using displacement or transparency the results are not good enough.
    So I tried with TraceGeometry in CalcVolumetric with the following code:
    SurfaceIntersection hit;

    if (vd->TraceGeometry(vd->ray,1000000.0,NOTOK,&hit;))
    {
    LVector vec(hit.p.x-drcCurrent.camMatrix.off.x,hit.p.y-drcCurrent.camMatrix.off.y,hit.p.z-drcCurrent.camMatrix.off.z);
    dist = Len(vec);
    }
    else
    {
    dist = vd->dist;
    }

    The results are a bit better but some pixels are not correct, see the image below:

    ![](Z:\DevelopmentSoftware\Maxon\CINEMA 4D 10.5\plugins\SVI-StereoEditing\ est_Z Depth_00_0000.jpg)

    The ring has the displacement texture. Something similar is coming with transparency.

    I read that it cannot work because the ray casting is off or not working (I don't remember) with displacement.

    Well, how should I get my depth map during the rendering ?

    Thanks a lot in advance.

    Vincent


Log in to reply