[Radiance-general] Alpha channel/object matte
Kirk Thibault
kthibault at biomechanicsinc.com
Fri Nov 19 18:35:52 CET 2004
Cool - I was having issues dealing with transparent objects as I was
working through my own crude solutions - will try this one too. Once
again - Radiance has its own freakin functional language - nice! What
a ton I have to learn!
kirk
On Nov 19, 2004, at 12:17 PM, Greg Ward wrote:
> Hi Kirk,
>
> Here's my own example of image-based lighting and the commands I used.
> I have two processors to work with, which is why I run two renderings
> at the same time:
>
> #!/bin/csh -fex
> #
> # Render our image-based lighting example
> #
> # Oct 2004 Greg Ward
>
> # Set parameters
> set res=(-x 2272 -y 1704)
> set vw=(-vf plate.vf -pa 0)
> set amb=(-ab 1 -aa 0 -ad 256 -as 0)
>
> # Render synthetic objects
> oconv environ.rad railing.rad chess3d.rad \
> | rpict -ps 1 -pj 0 $vw $res $amb \
> > chess3d.hdr &
>
> # Determine foreground objects
> oconv chess3d.rad > stencil.oct
> vwrays -ff $vw $res \
> | rtrace -fff -oL $res stencil.oct \
> | pvalue -r -df -b \
> | pcomb -e 'lo=if(gi(1)-1e5,0,1)' - \
> > stencil.pic
> rm stencil.oct
>
> # Render base for shadows
> oconv environ.rad railing.rad \
> | rpict -ps 1 -pj 0 $vw $res $amb \
> > unshadowed.hdr
>
> # Wait for first render
> wait
>
> # Composite final image with shadow map and blurred foreground
> pcomb -e 'ro=f(ri);go=f(gi);bo=f(bi)' \
> -e 'f(inp)=inp(1)*(gi(3) + (1-gi(3))*inp(2)/inp(4))' \
> '\!pfilt -1 -r 1.35 chess3d.hdr' \
> -o SunrisePlate.hdr \
> '\!pfilt -1 -r 1.35 stencil.pic' \
> '\!pfilt -1 -r 1.35 unshadowed.hdr' \
> > composite.hdr
>
> ---------------------
> Resulting image (tone-mapped JPEG and gzip'ped input and picture
> files):
>
> http://www.anyhere.com/gward/pickup/chess3d_balcony.jpg
> http://www.anyhere.com/gward/pickup/chess2.tar.gz
>
> Pillo's method works as well, but has problems sometimes for
> transparent surfaces. The -oL output of rtrace is the only truly
> reliable method I've found. You also need the -ps 1 -pj 0 rendering
> options shown to avoid disagreement between boundary pixels in the
> final composite. My example includes blurring of the IBL objects to
> simulate depth of field, which you probably don't want in general.
> (The pfilt -1 -r 1.35 commands in the final pcomb can be replaced by
> the straight files.)
>
> -Greg
>
>
> _______________________________________________
> Radiance-general mailing list
> Radiance-general at radiance-online.org
> http://www.radiance-online.org/mailman/listinfo/radiance-general
More information about the Radiance-general
mailing list