Transparency 带阴影的Povray透明背景

Transparency 带阴影的Povray透明背景,transparency,povray,Transparency,Povray,我想使用Pov射线生成的图片,可以在任何背景颜色的网站上使用。图片需要有一个透明的背景,但反射和阴影投射在一个透明的平面上 在Pov光线(3.7)中,可以通过在povray.ini文件中设置Output_Alpha=True并作为png文件输出来设置背景透明 您甚至可以在平面(或任何其他对象)上使用颜色Clear,获得透明的反射表面。但是,如果将对象的颜色设置为“清除”,则不会在其上投射阴影 可以在透明对象上投射阴影吗?您可以分别渲染阴影和对象,并合并生成的图像,如图所示。by m13r生成非常

我想使用Pov射线生成的图片,可以在任何背景颜色的网站上使用。图片需要有一个透明的背景,但反射和阴影投射在一个透明的平面上

在Pov光线(3.7)中,可以通过在
povray.ini
文件中设置
Output_Alpha=True
并作为
png
文件输出来设置背景透明

您甚至可以在平面(或任何其他对象)上使用颜色
Clear
,获得透明的反射表面。但是,如果将对象的颜色设置为“清除”,则不会在其上投射阴影


可以在透明对象上投射阴影吗?

您可以分别渲染阴影和对象,并合并生成的图像,如图所示。

by m13r生成非常漂亮的渲染,但它需要3次渲染过程,每次都需要对场景进行大量更改。这需要时间,并且需要相当多的设置

在某些情况下,只需两次通过即可获得更简单、更真实的结果。将背景和地平面都设置为白色,渲染,将它们设置为黑色,然后再次渲染。假设您在此处切换设置,并使用其中一个灯光定义生成两个文件,
white.png
black.png

/#声明SceneLight=rgb
#声明SceneLight=rgb
背景{color SceneLight}
飞机{
y、 0
颜料{
色光
}
}
现在,将两幅图像合并,并使用提取差异

此方法的缺点是对场景照明的灵活性较低,并且不能假装从地平面反射任何东西。如果对象的蒙版程度足以不受场景背景颜色的严重影响,则此方法可能适合您。在我的情况下,它节省了一次耗时的渲染过程和大量场景对象操作

magick black.png white.png -alpha off \
    \( -clone 0,1 -compose difference -composite -negate \) \
    \( -clone 0,2 +swap -compose divide -composite \) \
    -delete 0,1 +swap -compose CopyOpacity -composite \
    transparent.png