|
|
"Kenneth" <kdw### [at] gmailcom> wrote:
>
> According to POV-ray's documentation, transmit all ...some value... *should*
> work correctly even on non-GIF images. I have successfully used it many
> times in the distant past. But currently, this is the situation:
>
> In 'official' v3.7.0, it does work correctly with typical 24-bit .jpeg's and
> png's -- but has an odd problem with 32-bit alpha-channel images that already
> have a mask...
>
> But in the v3.8 beta releases, something changed-- transmit all is
> completely *ignored*, when used with typical 24-bit images. However, it DOES
> work correctly if those images are re-saved as 32-bit .png...
I was looking at one of my old test-scene files, and realized that there is yet
another simple workaround for the 'transmit all' problem in the 3.8 betas...
which ALSO solves the odd problem in 3.7.0 with alpha-channel images: using an
averaged pigment_map with a plain 'transmit' value instead. The relative weights
of the average determine the translucency:
pigment{
average
pigment_map{
[0.6 image_map{png "my image.png" once interpolate 2]
// .jpeg, .png, .tiff; can an have an alpha-channel mask too.
[0.4 transmit 1.0]
}
}
Of course, this would require re-editing old scene files to replace the original
'transmit all', which could be cumbersome. (BTW, tiff images may or may not need
the new 'premultiplied on/off' keyword for this, if they have an actual
alpha-channel mask. In my tests, I had to turn it off to get better visual
results. I guess it depends on the app that creates such images.)
The simple construct above makes me wonder if 3.8's problem with 'transmit all'
(re: typical 24-bit images) may be the result of a minor source code difference
between it and plain 'transmit'...possibly a change that was introduced by
mistake.
Post a reply to this message
|
|